За последние 24 часа нас посетили 27669 программистов и 1815 роботов. Сейчас ищут 1024 программиста ...

Обработать запрос к БД если ...

Тема в разделе "PHP для новичков", создана пользователем ps10n1ck, 29 дек 2010.

  1. ps10n1ck

    ps10n1ck Активный пользователь

    С нами с:
    29 дек 2010
    Сообщения:
    8
    Симпатии:
    0
    Имеется БД, в нее вставляется номер документа и прочая информация о документе

    Задача заключается в следующем:
    - проверить есть ли такой номер документа в БД среди уже внесенных документов, если нет - то вставить новый документ в БД, если есть - то завершить выполнение скрипта.

    Помогите решить данную задачку или подскажите где копать... весь день провозился, мозги уже кипят... хотя уверен, что все будет довольно просто =)
     
  2. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    конечно просто. необходимо определить уникальность документа - в данном случае его номенклатурный номер (ну, можно ещё имя файла).
    Когда вставляешь документ с уникальным номером WN-05210, предварительно делаешь запрос SELECT * FROM table WHERE uniq_field = 'WN-05210' и если возвращается одна или более записей, прерываешь работу.
    Если возвращается 0 записей (документ не найден), то вставляешь в базу.

    ПыСы. В качестве аватарки разрешены только личные фото. или удаляешь аватарку, либо ставишь совю фотку.
    И слишком уж ламерский вопрос, чтобы быть в программировании на PHP. Это уж скорее для совсем новичков - форумом выше.
     
  3. Jampire

    Jampire Активный пользователь

    С нами с:
    22 авг 2009
    Сообщения:
    181
    Симпатии:
    0
    Адрес:
    Гомель
    А можно и не делать лишний запрос в базу, а сразу делать попытку вставки записи INSERT. Если данных с заданным номером нет, то запись вставиться. Если есть, то запрос вернет false. По значению false и делать останов скрипта.
     
  4. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Можно если проставишь индексы на таблицу
     
  5. ps10n1ck

    ps10n1ck Активный пользователь

    С нами с:
    29 дек 2010
    Сообщения:
    8
    Симпатии:
    0
    спасибо всем, уже решил вопрос подстановкой UNIQUE KEY