За последние 24 часа нас посетили 16590 программистов и 1649 роботов. Сейчас ищут 2074 программиста ...

Проверка при вводе данных.

Тема в разделе "PHP и базы данных", создана пользователем Kocapb, 30 сен 2008.

  1. Kocapb

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

    С нами с:
    10 июл 2008
    Сообщения:
    169
    Симпатии:
    0
    Здравствуйте, каким образом можно проверить при вводе данных, есть ли эти данные уже в базе?
    Использую БД (MySQL).
     
  2. neverlose

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

    С нами с:
    27 авг 2008
    Сообщения:
    1.112
    Симпатии:
    20
    SELECT `field` FROM `table` WHERE `field` = 'moi_dannie';
     
  3. Kocapb

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

    С нами с:
    10 июл 2008
    Сообщения:
    169
    Симпатии:
    0
    hmm возможно не полностью объяснил проблему.
    Есть форма которая вызывает саму себя (метод GET).
    Если поля заполнены то идёт загрузка данных в БД. Проблема в том что если "умный" пользователь нажмёт Refresh, то так как GET заполнен, выполнится загрузка данных. Очитить GET не могу в нем хранятся некоторые переменные которые мне необходимы для последующий действий.
     
  4. Mete0

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

    С нами с:
    18 дек 2006
    Сообщения:
    272
    Симпатии:
    0
    Адрес:
    Gatchina
    Не вижу никаких проблем.
    Сначала проверь есть ли данные в БД, если нет то делай вставку этих данных.

    Примерно так:
    PHP:
    1. <?php
    2. $data = isset($_GET['data']) ? addslashes($_GET['data']) : null;
    3.  
    4. if (!empty($data)) {
    5.   $q = mysql_query("SELECT 1 FROM `table` WHERE `field` = '" . $data . "'");
    6.   if (mysql_num_rows($q)) {
    7.     // Обрабатываем ситуацию когда данные уже имеются в БД.
    8.   } else {
    9.     // Запрос на вставку данных в ДБ.
    10.   }
    11. } else {
    12.    // Обрабатываем ситуацию когда нет данных.
    13. }
    14. ?>
    15.  
    Р.С. Не забудь про Magic Quotes.
     
  5. Kocapb

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

    С нами с:
    10 июл 2008
    Сообщения:
    169
    Симпатии:
    0
    спасибо, алгоритм усвоил.
     
  6. QQQ

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

    С нами с:
    21 ноя 2007
    Сообщения:
    538
    Симпатии:
    0
    а ещё сессии можно в твоём частном случае
     
  7. Kocapb

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

    С нами с:
    10 июл 2008
    Сообщения:
    169
    Симпатии:
    0
    хмм а поподробнее можно? не совсем понятен механизм =)