| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > не работает SQL запрос |
| Автор: 0Z0NE 26.4.2012, 00:42 | ||||
| Доброго времени суток Уважаемые Знатоки. Я пока только учу PHP и MySQL поэтому наверняка где-то накосячил, вот только где понять не могу... Проблема в следующем: есть страница с регистрацией пользователя, на ней форма с тремя полями ввода (имя пользователя, пароль и e-mail). Код:
далее все уходит на register.php Код:
непонимаю почему но не хочет записывать в БД, не выводится никаких ошибок, попытки обнаружить ошибки с помощью команд ini_set и error_reporting также не увенчались успехом... |
| Автор: krypt3r 26.4.2012, 05:47 | ||
Строковые значения в СУБД заключаются в апострофы.
|
| Автор: 0Z0NE 26.4.2012, 16:48 | ||
Упс, спасибо) Но всеравно как ни странно не работает ... может SQL’ю вобще фиолетово на кавычки и дело совсем не в запросе? Скоро спать плохо буду из-за этого кода будь ему неладно |
| Автор: Fortop 26.4.2012, 17:24 |
| Ошибку что ли выведите, которую он вам пишет. А не ваше "Ошибка записи..." |
| Автор: 0Z0NE 26.4.2012, 18:59 | ||
| Если я стираю or die тогда скрипт регистрации радостно извещает что все успешно зарегистрированно, и выводит следующюю строку echo(...); ... но в БД как была одна строка так она и осталась... Может дело в БД? на всякий случай вот экспорт БД из PHPMyAdmin:
|
| Автор: Fortop 26.4.2012, 19:16 |
| Пользуйтесь http://ua.php.net/mysql_error после выполнения запроса |
| Автор: 0Z0NE 26.4.2012, 20:58 | ||
За ссылку спасибо. Правда чем больше пытался что-то понять тем больше запутывался. При подставлении функции mysl_error(); после mysql_select_db выводит:
При переводе я так понял что не выбирается БД, но при команде echo($db_connect); выводится 1(я так понимаю 1-н значить соединение с БД есть), или я что-то не понял? |
| Автор: krypt3r 27.4.2012, 06:24 | ||
die() не нужно убирать — игнорирование обработки исключительных ситуаций === безграмотный коденг
Переменную $db можно не указывать, если скрипт работает с одним соединением с БД. PS. А вообще переходите на PDO ;) |
| Автор: Fortop 27.4.2012, 08:07 |
| Разницу в типе драйвера видите? Вот и используйте соответствующие функции для своего драйвера. Я вам просто привел пример. |
| Автор: 0Z0NE 27.4.2012, 14:48 | ||||||||
Да я понял что они разные, но... они выводят одно и то-же. после mysql_connect стоит:
в принципе все как в примере по Вашей ссылке, только с моими перемеными. Выводят они следующее:
в конце концов плюнул, подумал что повторение мать учения и написал новый файлик, reg.php, где описал самые-самые необходимые для регистрации строки... ничего не получилось :(
оооуу... как Видите у меня с MySQL с простыми запросами проблемы... а Вы говорите PDO ... krypt3r спасибо, заработало, во всем был виноват LIMIT, я почему-то думал что LIMIT можно использовать и во время процедуры вставки в БД, так сказать на всяк случай если вдруг кто-то попытается использовать форму регистрации для ипользования SQL иньекций ... Всем Огромное спасибо за помощ ламеру) |