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]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (4): « 1 2 [3] 4 »   

> Без описания
KuPbI4
Отправлено: 14 Декабря, 2010 - 21:17:22
Post Id


Частый гость


Покинул форум
Сообщений всего: 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']}') <- тут значения
Посмотрите на третье значение.

Посмотрел на третье значение, вроде правильно, а чем оно не устраивает?
 
 Top
OrmaJever Модератор
Отправлено: 14 Декабря, 2010 - 21:35:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




KuPbI4 пишет:
Посмотрел на третье значение, вроде правильно, а чем оно не устраивает?

правельно? А?! правельно это первое и 2 значение. Нас здесь устраивает всё, а вот базе даных это не подходит.

(Отредактировано автором: 14 Декабря, 2010 - 21:35:29)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Uchkuma
Отправлено: 14 Декабря, 2010 - 21:39:41
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


Помог: 6 раз(а)




Строковые значения у вас заключаются в одиночные кавычки, что правильно. А что за бред идет после закрывающей кавычки у третьего значения?
 
 Top
KuPbI4
Отправлено: 14 Декабря, 2010 - 21:46:02
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Uchkuma пишет:
Строковые значения у вас заключаются в одиночные кавычки, что правильно. А что за бред идет после закрывающей кавычки у третьего значения?

Это присваивание авторизованного id_user через сессию.
Если
PHP:
скопировать код в буфер обмена
  1.  
  2. $query =  "INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '$id_user'";
  3.  

то запишется просто 0 и все.
 
 Top
OrmaJever Модератор
Отправлено: 14 Декабря, 2010 - 22:07:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




ппц логика Хм
CODE (SQL):
скопировать код в буфер обмена
  1. "INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '$_SESSION['id_user']'";
а так не вариант? Однако


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
KuPbI4
Отправлено: 14 Декабря, 2010 - 22:09:16
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




OrmaJever пишет:
"INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '$_SESSION['id_user']'";
а так не вариант?

Выдает ошибку, пробовал я это еще раньше.
Цитата:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
 
 Top
OrmaJever Модератор
Отправлено: 14 Декабря, 2010 - 22:41:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




ну значит нужно в кавычки обвести
CODE (SQL):
скопировать код в буфер обмена
  1. "INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '",'".$_SESSION['id_user']."'";


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
KuPbI4
Отправлено: 14 Декабря, 2010 - 22:53:29
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




OrmaJever пишет:
ну значит нужно в кавычки обвести
CODE (SQL):
скопировать код в буфер обмена
"INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '",'".$_SESSION['id_user']."'";

А ваш вариант немного глючный был.
Если так

CODE (SQL):
скопировать код в буфер обмена
  1. $query =  "INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '".$_SESSION['id_user']."')";


то 0 запишет....

Если
CODE (SQL):
скопировать код в буфер обмена
  1. $query =  "INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '$id_user'='".$_SESSION['id_user']."')";

то 1 запишет...
да что за бред... где ошибка?!

(Отредактировано автором: 14 Декабря, 2010 - 23:28:59)

 
 Top
Uchkuma
Отправлено: 15 Декабря, 2010 - 00:26:34
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


Помог: 6 раз(а)




facepalm ((( Я бессилен.

Почему у вас в одном случае $_SESSION['user_id'], а в другом $_SESSION['id_user']? Поле в таблице в одном случае id_users, а в другом id_user? Разберитесь сначала с именами.
И в запросе значения целочисленных полей заключать в кавычки не нужно.
А ваш запрос НЕПРАВИЛЬНЫЙ, и я объяснил почему.
 
 Top
KuPbI4
Отправлено: 15 Декабря, 2010 - 00:44:25
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Uchkuma пишет:
Почему у вас в одном случае $_SESSION['user_id'], а в другом $_SESSION['id_user']?

Объясняю:
$_SESSION['user_id'] - для НЕавторизованных, чтоб доступ перекрывали гостям.
$_SESSION['id_user'] - для авторизованных!

Uchkuma пишет:
Поле в таблице в одном случае id_users, а в другом id_user? Разберитесь сначала с именами.

А это Вы где увидели, что разные поля?

Uchkuma пишет:
И в запросе значения целочисленных полей заключать в кавычки не нужно.

если не заключу - то запись не добавится, или я не понял, поправьте меня.

Uchkuma пишет:
А ваш запрос НЕПРАВИЛЬНЫЙ, и я объяснил почему.

НЕПРАВИЛЬНЫЙ? Это еще почему?

это ведь занести в таблицу users данные.
 
 Top
Uchkuma
Отправлено: 15 Декабря, 2010 - 01:00:20
Post Id



Участник


Покинул форум
Сообщений всего: 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-запроса.
 
 Top
KuPbI4
Отправлено: 15 Декабря, 2010 - 01:09:54
Post Id


Частый гость


Покинул форум
Сообщений всего: 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-запроса.

Делал так, присвоил переменную на сессию.
PHP:
скопировать код в буфер обмена
  1.  
  2. $id_user = $_SESSION['id_user'];
  3.  

Потом. Переделал запрос.
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2.  $query =  "INSERT INTO status (status_book, id_book, id_user) VALUES (1, '$id_book', '$id_user')";
  3.  

Выводит 0...
 
 Top
Uchkuma
Отправлено: 15 Декабря, 2010 - 01:15:30
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


Помог: 6 раз(а)




А что выводит echo $id_user?
И сделайте все-таки так:
PHP:
скопировать код в буфер обмена
  1. $query = "INSERT INTO status (status_book, id_book, id_user) VALUES (1, $id_book, $id_user)";
 
 Top
KuPbI4
Отправлено: 15 Декабря, 2010 - 01:34:47
Post Id


Частый гость


Покинул форум
Сообщений всего: 171
Дата рег-ции: Авг. 2010  


Помог: 0 раз(а)




Uchkuma пишет:
А что выводит echo $id_user?

просто выводит $id_user.
Если даже объявлена переменная
PHP:
скопировать код в буфер обмена
  1.  
  2. $id_user = $_SESSION['id_user'];
  3.  


Uchkuma пишет:
И сделайте все-таки так:
PHP:
$query = "INSERT INTO status (status_book, id_book, id_user) VALUES (1, $id_book, $id_user)";

Сообщит - Запись не добавлена

(Отредактировано автором: 15 Декабря, 2010 - 01:35:29)

 
 Top
Uchkuma
Отправлено: 15 Декабря, 2010 - 01:44:42
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


Помог: 6 раз(а)




KuPbI4 пишет:
просто выводит $id_user.
Вы меня убиваете. Вам с самых азов php начинать надо. Мои нервы больше не выдержат ((

Выложите листинг скрипта, завтра может посмотрю.
 
 Top
Страниц (4): « 1 2 [3] 4 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB