Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Заказ книг в библиотеке (выдача и возврат) [3]
Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010
Помог: 0 раз(а)
OrmaJever пишет:
'$id_user'='{$_SESSION['id_user']}' тоже написано не правельно.
и как правильно должно быть?!
OrmaJever пишет:
Если строка будет <html>1354456546 то вначале обрежит до 11 символов <html>13544 потом удалит html тег и останется только 13544
Теперь понял. (Добавление)
Uchkuma пишет:
INSERT INTO status
(status_book, id_book, id_user) <- тут ключи
VALUES (1, '$id_book', '$id_user'='{$_SESSION['id_user']}') <- тут значения
Посмотрите на третье значение.
Посмотрел на третье значение, вроде правильно, а чем оно не устраивает?
OrmaJever
Отправлено: 14 Декабря, 2010 - 21:35:02
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
KuPbI4 пишет:
Посмотрел на третье значение, вроде правильно, а чем оно не устраивает?
правельно? правельно это первое и 2 значение. Нас здесь устраивает всё, а вот базе даных это не подходит.
"INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '",'".$_SESSION['id_user']."'";
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
KuPbI4
Отправлено: 14 Декабря, 2010 - 22:53:29
Частый гость
Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010
Помог: 0 раз(а)
OrmaJever пишет:
ну значит нужно в кавычки обвести
CODE (SQL):
скопировать код в буфер обмена
"INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '",'".$_SESSION['id_user']."'";
Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010 Откуда: Киров
Помог: 6 раз(а)
facepalm ((( Я бессилен.
Почему у вас в одном случае $_SESSION['user_id'], а в другом $_SESSION['id_user']? Поле в таблице в одном случае id_users, а в другом id_user? Разберитесь сначала с именами.
И в запросе значения целочисленных полей заключать в кавычки не нужно.
А ваш запрос НЕПРАВИЛЬНЫЙ, и я объяснил почему.
KuPbI4
Отправлено: 15 Декабря, 2010 - 00:44:25
Частый гость
Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010
Помог: 0 раз(а)
Uchkuma пишет:
Почему у вас в одном случае $_SESSION['user_id'], а в другом $_SESSION['id_user']?
Объясняю:
$_SESSION['user_id'] - для НЕавторизованных, чтоб доступ перекрывали гостям.
$_SESSION['id_user'] - для авторизованных!
Uchkuma пишет:
Поле в таблице в одном случае id_users, а в другом id_user? Разберитесь сначала с именами.
А это Вы где увидели, что разные поля?
Uchkuma пишет:
И в запросе значения целочисленных полей заключать в кавычки не нужно.
если не заключу - то запись не добавится, или я не понял, поправьте меня.
Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010 Откуда: Киров
Помог: 6 раз(а)
KuPbI4 пишет:
$_SESSION['user_id'] - для НЕавторизованных, чтоб доступ перекрывали гостям.
$_SESSION['id_user'] - для авторизованных!
Че-то намудрили Делают обычно так: $_SESSION['user_id'] содержит id пользователя. Если $_SESSION['user_id'] = 0, значит это гость. Все, кто больше нуля - это пользователи. Но это как вам удобнее, конечно. Лишь бы вы сами не запутались.
KuPbI4 пишет:
А это Вы где увидели, что разные поля?
Вы в топике указали создание этой таблицы.
KuPbI4 пишет:
если не заключу - то запись не добавится
Добавится. Это ведь число, правильно? Значение status_book вы ведь не заключаете почему-то в кавычки.
KuPbI4 пишет:
НЕПРАВИЛЬНЫЙ? Это еще почему?
'$id_user'='{$_SESSION['id_user']}' - вот что вы указали в качестве значения. На этом месте должно быть число - id пользователя. Если вы хотите присвоить php-переменной какое-то значение, это нужно делать НЕ в контексте sql-запроса.
KuPbI4
Отправлено: 15 Декабря, 2010 - 01:09:54
Частый гость
Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010
Помог: 0 раз(а)
Uchkuma пишет:
Че-то намудрили Делают обычно так: $_SESSION['user_id'] содержит id пользователя. Если $_SESSION['user_id'] = 0, значит это гость. Все, кто больше нуля - это пользователи. Но это как вам удобнее, конечно. Лишь бы вы сами не запутались.
Я не путаюсь.
Uchkuma пишет:
Вы в топике указали создание этой таблицы.
Претерпели изменения. Переименовал с id_users на id_user. Все в поряде. Забыл топик обновить )
Uchkuma пишет:
Добавится. Это ведь число, правильно? Значение status_book вы ведь не заключаете почему-то в кавычки.
Правильно. Почему не заключаю - потому что, статус 1-выбрана (она всегда будет 1), а в админке можно поменять и на 2 и на 3 хоть что.
Uchkuma пишет:
'$id_user'='{$_SESSION['id_user']}' - вот что вы указали в качестве значения. На этом месте должно быть число - id пользователя. Если вы хотите присвоить php-переменной какое-то значение, это нужно делать НЕ в контексте sql-запроса.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.