Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка при работе. 
:(
    Опции темы
Serkys
Дата 14.4.2005, 08:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1061
Регистрация: 19.4.2004

Репутация: 1
Всего: 22



Собственно, вылазит ошибка. Переносом строк удалось установить, что скрипт встаёт при обработке переменной $_REQUEST['nick']. Не подскажете, в чём может быть дело?
Код

mysql_connect ();
mysql_select_db ('Serkys');
mysql_query ('INSERT INTO users (nick password reg_date) VALUES ($_REQUEST['nick'], $_REQUEST['pass'], date(d.m.y.))');

PM MAIL   Вверх
IZ@TOP
Дата 14.4.2005, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Serkys, ты посмотри как у тебя код подсвечивается. Думаешь так и должно быть?

Код

mysql_query ("INSERT INTO users (nick password reg_date) VALUES ('{$_REQUEST['nick]}', '{$_REQUEST['pass']}', '".date(d.m.y.)."')");


Я тебе крайне советую про синтаксис составления строк в РНР почитать.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Serkys
Дата 14.4.2005, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1061
Регистрация: 19.4.2004

Репутация: 1
Всего: 22



IZ@TOP
Спасибо огромное!
В книге, по которой я учу PHP, написано, что в "" нельзя (или не рекомендуется) заключать sql запросы. И про фигурные скобки в запросах sql в первый раз слышу.
Цитата
Я тебе крайне советую про синтаксис составления строк в РНР почитать.

Надо, надо...
PM MAIL   Вверх
Serkys
Дата 14.4.2005, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1061
Регистрация: 19.4.2004

Репутация: 1
Всего: 22



IZ@TOP
Не работает smile smile
PM MAIL   Вверх
IZ@TOP
Дата 14.4.2005, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Serkys, а ты не пробовал поля запятыми при назначении разделить?
Кстате, на счет фигурных скобок - этими скобками обрамляются массивы, так как в открытую их в тексте писать нельзя - ошибка будет (правда смотря какие индексы).
Код


mysql_query ("INSERT INTO users (nick, password, reg_date) VALUES ('{$_REQUEST['nick]}', '{$_REQUEST['pass']}', '".date(d.m.y.)."')");


Должно работать. Если не поможет, посмотри какие ошибка пишутся:

Код

<?php
error_reporting(E_ALL); // В начало кода

...

if(!mysql_query ("INSERT INTO users (nick, password, reg_date) VALUES ('{$_REQUEST['nick]}', '{$_REQUEST['pass']}', '".date(d.m.y.)."')"))
    echo mysql_error();
...
?>



--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Serkys
Дата 14.4.2005, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1061
Регистрация: 19.4.2004

Репутация: 1
Всего: 22



Цитата
поля запятыми при назначении разделить

Опять же в книге указано без запятых и про запятые ни слова.

С запятыми попробовал - всё-равно не катит.
А ругается не mysql а php:
parse error, unexpected ')' in z:\home\forum.ru\www\script\reg.php on line 15.
Строка 15 - всё та же:
Код

mysql_query ("INSERT INTO users (nick, password, reg_date) VALUES ('{$_REQUEST['nick]}', '{$_REQUEST['pass']}', '".date(d.m.y.)."')");


З.Ы. Для того, чтобы узнать код mysql ошибки достаточно сделать так:
Код

mysql_query ("INSERT INTO users (nick, password, reg_date) VALUES ('{$_REQUEST['nick]}', '{$_REQUEST['pass']}', '".date(d.m.y.)."')")
  or die ("Ошибка: ".mysql_error());


Это сообщение отредактировал(а) Serkys - 14.4.2005, 15:00
PM MAIL   Вверх
Serkys
Дата 14.4.2005, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1061
Регистрация: 19.4.2004

Репутация: 1
Всего: 22



Всё, проблема решена.
Для потомков:
Запомните, функцию date надо писать, заключая в ковычки параметры:
Код

date ("d, m, y.");


IZ@TOP
Объясни пожалуйста смысл апострофов и точек перед и после функции:
Код

'".date("d.m.y.")."'

Зачем их так много?

Это сообщение отредактировал(а) Serkys - 14.4.2005, 15:27
PM MAIL   Вверх
IZ@TOP
Дата 14.4.2005, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Serkys, вот блин... ведь не обратил внимание что там кавычек нету smile
Смысл опострофов в том чтобы предотвратить ошибки в интерпретации SQL кода.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Serkys
Дата 14.4.2005, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1061
Регистрация: 19.4.2004

Репутация: 1
Всего: 22



Насчёт кавычек.
У меня есть пара мыслей по этому поводу.
' и ' просто выделяют данные, как и все переменные.
Первая " закрывает перепечатывание (или как это сказать) - как в echo конец вывода текста.
Вторая " - открывает то же самое снова.
Две . по краям присоединяют функцию к тексту.
Я прав, или непонятно выразился?
PM MAIL   Вверх
IZ@TOP
Дата 14.4.2005, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Serkys, в одинарных ковычках переемнные не интерпретируются. точки как ты правильно скзаал присоединяют вывод функции к тексту, это называется конкантенацией.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0491 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.