Чем могут грозить предупреждения php?

Вот такие ошибки:

Undefined index: p in 
mysql_num_rows() expects parameter 1 to be resource, boolean given in 
mysql_fetch_array() expects parameter 1 to be resource, boolean given in


Чем это может грозить?
  • Вопрос задан
  • 2574 просмотра
Пригласить эксперта
Ответы на вопрос 6
miraage
@miraage
Старый прогер
Каждый раз, когда на toster/so задают вопросы с mysql_* - в мире грустит один котик.
Ответ написан
Комментировать
Satanpit
@Satanpit
Front-end developer
У Вас в mysql_num_rows и mysql_fetch_array должен передаваться результат mysql_query, а он, судя по всему возвращает false. У Вас ошибка в запросе к БД.
Грозить это может чем угодно, смотря в каком куске кода она возникает.
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Первое предупреждение говорит о том, что Вы, скорее всего, не проверяете валидность переданных пользователем данных. Если это не данные от пользователя, то всё ещё хуже, обращение к массиву по несуществующему индексу - ошибка в логике работы программы.
Второе и третье предупреждения, как уже сказали, - результат ошибки в mysql_query, которая вернула false вместо идентификатора ресурса, скорее всего из-за неверного запроса. Грозит чем угодно, начиная от некорректного вывода элементов сайта и заканчивая дырой с SQL-инъекцией. Кроме того, использование mysql_* грозит непереносимостью сайта на следующую версию PHP, начиная с версии 5.5.0 эта библиотека в статусе depricated.
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Варнинги это ошибки, на которые можно не обращать внимания, и без их устранения все будет работать. Вот только иногда из-за того что разработчик пропустил такую вот ошибку, все может перерасти из варнинга в фатал или просто исключение. Ну и просто помогают найти возможные баги до того, как они успели проявить себя...

В общем рекомендую задуматься почему возникают варнинги в вашем коде и сделать так, что бы их небыло.
Ответ написан
Комментировать
@anitspam
1. Замедлением работы.
2. Выдачей некорректной информации на сайте. Например, вы ждёте, что у вас будет сообщение "На сайте 10 пользователей", а из-за такой ошибки будет выведено "На сайте пользователей" или вообще не будет этого сообщения.
Ответ написан
Комментировать
@qwertyqwerty
Чем могут грозить

SQL-инъекцией.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы