Это приходит с опытом.
Ошибки в именах таблиц и полей ты здесь на форуме не увидишь. Ошибки нарушения целостности ты глядя на код не увидишь. Ошибки нарушения типизации ты глядя на код не увидишь. И ещё примерно миллион типов ошибок, при которых периться в код можно до посинения, без малейшего результата.
А уже по листингу люди что-то знающие в SQL и PHP скажут что не так.
Это да.
Люди вообще любят смотреть на код, вместо того чтобы решать исходную проблему. Но, как я говорил, это довольно смешной подход, и надо уже учиться программировать с помощью логики, а не "смотрения на код". В частности, сначала прочесть сообщение об ошибке, а только потом кидаться её исправлять
А понять-то конечно можно. Это же детская ошибка.
И вот запрос, как раз, в данном случае вторичен. Чтобы понять, в чем проблема, надо смотреть не на код. Это очень распространенное среди новичков заблуждение, что надо смотреть на код. И в корне неправильное.
Чтобы понять, в чем проблема, надо всегда смотреть на текст ошибки MySQL. И только потом - если ошибка вызвана именно запросом, а не другими причнами - смотреть на код и запрос.
Летят Холмс с Ватсоном на воздушном шаре. И спят в полете. Просыпаются
над какой-то незнакомой землей, видят - внизу какой-то хрен коров пасет.
Снизились они и спрашивают мужика:
- Скажите, сэр, где мы находимся?
- На воздушном шаре.
- Спасибо, сэр! - и летят вверх. Холмс задумчиво говорит:
- Интересная местность, Ватсон! Программист пасет коров!
- Холмс, а с чего вы взяли, что он программист?
- Это элементарно! Во-первых, он долго думал над ответом. Во-вторых, его
ответ был абсолютно точен. И в третьих - абсолютно бесполезен!
1. Про обработку ошибки - пальцем в небо, это твоя неграмотность. Всё тут есть, и получше чем ты за всю свою недолгую карьеру смог бы родить.
2. Неопределённая переменная - верно, ошибка копипаста
3. Неограниченная выборка из базы - да, неограниченная. Никакой проблемы тут нет :)
4. Автор вопроса просил необратимо шифровать пароль? - да, просил. У него изначально была попытка это сделать. Плюс даже если и не просил, то всё равно нужно.
5. Выводы echo() без соответствующего HTML? - так и быть, молодец, возьми конфетку за острый глаз :) По уму тут кстати должен быть редирект, а не HTML
В итоге, нашел две очечатки, а раздулся от гордости за то что его ответ пометили решением, как будто нобелевскую премию получил :)
Двай, моська, тявкай дальше, ты несомненную пользу приносишь. Нужен-же кто-то и чтобы опечатки искать
В смысле в каких отношениях ты с этим кодом состоишь? Ты его писал, случайно мимо проходил, его тебе в подарок на 9 мая прислали?
Пока твой вопрос звучит так: "Помогите найти в моей комнате носки. В холодильнике смотрел не помогает".
Ну если ты сам не понимаешь откуда переменная в твоем коде должна взяться, то совсем посторонним людям-то откуда знать?
Нет :)
Я могй найти лучшее применение своему свободному времени, чем скрупулёзно просматривать каждую строчку кода в никому неизвестной и не нужной игре, которую собрирраются стереть