За последние 24 часа нас посетили 17857 программистов и 1716 роботов. Сейчас ищет 931 программист ...

UPDATE SET не работает

Тема в разделе "PHP и базы данных", создана пользователем R2ndom, 1 фев 2015.

  1. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    мне вот интересно, что значит "перерыл всё", если автор очевидно не выяснил главного: чему равны эти две переменные. эффективность наших подсказо стремится к нулю )))
     
  2. R2ndom

    R2ndom Новичок

    С нами с:
    21 янв 2015
    Сообщения:
    41
    Симпатии:
    0
    var_dump($ip); - реальный ip
    var_dump($tmp[0]); - Null

    Добавлено спустя 2 минуты 4 секунды:
    var_dump($tmp); - bool(false)
     
  3. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    ну вот, так по цепочке проверяй выше, кто $tmp присваивает? Вот его и проверяй.
     
  4. R2ndom

    R2ndom Новичок

    С нами с:
    21 янв 2015
    Сообщения:
    41
    Симпатии:
    0
    var_dump($ip == $tmp[0]); тоже bool(false)

    Добавлено спустя 2 минуты 36 секунд:
    $tmp присваивает
    mysql_fetch_row ($select);
    var_dump($select); выдает resource(6) of type (mysql result)
     
  5. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    странно
     
  6. R2ndom

    R2ndom Новичок

    С нами с:
    21 янв 2015
    Сообщения:
    41
    Симпатии:
    0
    получается, что тут ошибка:
    Код (Text):
    1. $tmp = mysql_fetch_row ($select);
     
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Попробуй в отдельном скрипте выполнить этот запрос и посмотреть результат
     
  8. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    ты этого не сделал, иначе увидел бы, что ошибка происходит раньше.

    ну и
    опять не сделаешь?

    http://phpfaq.ru/debug
     
  9. R2ndom

    R2ndom Новичок

    С нами с:
    21 янв 2015
    Сообщения:
    41
    Симпатии:
    0
    Код (Text):
    1. $tmp = mysql_fetch_row ($select) ;
    2. echo mysql_errno($tmp) . ": " . mysql_error($tmp). "\n";
    3. echo ("mysql_fetch_row ($select)") ;

    Warning: mysql_errno() expects parameter 1 to be resource, boolean given in /var/www/lc.php on line 131 Warning: mysql_error() expects parameter 1 to be resource, boolean given in /var/www/lc.php on line 131 : mysql_fetch_row (Resource id #6)
     
  10. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    Ты даже в этом допустил ошибку. В mysql_error() подставляется аргумент - соединение с базой или вообще без параметров.

    Ошибку гуглить не пытался, нет. А этот тип ошибки описан на одном этом форуме десятки раз. Означает, то твой mysql_query вернул false. в документации сказано:
    Запоминай: при успехе возвращается тип ресурс, при неудаче булев тип (false). Твой запрос в mysql_query() не выполнился, поэтому далее ты не можешь с результатом ничего делать — нет его блин результата! Поэтому блин нафиг проверяй результат каждого сука запроса.
    $x = mysql_query($y) or die(mysql_error());
    И если запрос не выполнился и сработал die(), то выясни какая там строка запроса была и отлаживай ее в phpmyadmin пока не получится.

    http://phpfaq.ru/debug
    http://phpfaq.ru/debug
    http://phpfaq.ru/debug
    Это всё, чем я могу тебе помочь. В личку не пиши! Получил совет — изучи его, не заябывай.
     
  11. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    R2ndom, ты должен полностью понимать как работает твоя или чужая программа, мы можем помочь, спрашивай что конкретно не понятно, вместо того чтобы методом научного тыка получить нужный результат.
    Начинай с первой не понятной строчки, если дают инструкцию http://phpfaq.ru/debug и в ней что-то не понятно, тоже спрашивай.
    Читай всё внимательно, свой код, инструкции по отладке, документацию. Только после того как всё понятно, делай вывод и пробуй изменить код и смотри результат. От простого к сложному. Пиши код частями и перепроверяй каждый шаг вдумчиво.

    Может ты просто не продумал алгоритм как реализовать свою задачу?
     
  12. R2ndom

    R2ndom Новичок

    С нами с:
    21 янв 2015
    Сообщения:
    41
    Симпатии:
    0
    Код (Text):
    1.  
    2. $select = mysql_query ("SELECT ip FROM oshibka WHERE ip='$ip'");///запрос РАБОТАЕТ!!!!!!!!!
    3.  
    4. $tmp = mysql_fetch_row ($select);///не срабатывает
    5. print_r($tmp);///тут пусто
    6.  
    7. if ($ip == $tmp[0]) {....//// соответственно условие не выполняется
    и да я увидел,

    http://phpfaq.ru/debug
    http://phpfaq.ru/debug
    http://phpfaq.ru/debug

    И ДА Я ПРОВЕРИЛ ЗАПРОС, ОН РАБОЧИЙ!!!
    , а вы artoodetoo похоже ослепли, так как
    Не возвращается mysql_fetch_row, не знаю почему.
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ты должен взять запрос и сходить с ним в пма например. и почитать.
     
  14. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    я бы сказал, но ты не поверишь
     
  15. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    R2ndom, ответ есть, будь внимателен.