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
Форумы портала PHP.SU :: Версия для печати :: Как правильно запрос к БД написать?
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Как правильно запрос к БД написать?

Страниц (1): [1]
 

1. Windozer - 18 Января, 2008 - 15:11:35 - перейти к сообщению
CODE (text):
скопировать код в буфер обмена
  1.  
  2. mysql_select_db("users");
  3. $query = "insert into users values
  4. (NULL, '".$login."' , '".$pass."' , '".$email."')" ;

Пытаюсь записать данные в таблицу. Сервер говорит, что ошибка есть
Notice: Undefined variable: email in T:\home\virtual\10.250.95.39\chat\sps.php on line 18
Последняя строка 18-ая и есть
2. valenok - 18 Января, 2008 - 16:37:12 - перейти к сообщению
А по русски что значит то что написал сервер?
3. EuGen - 18 Января, 2008 - 16:59:25 - перейти к сообщению
Вы используете в Вашем запросе неинициализированную переменную $email. И Вам выдается замечание об этом (это не ошибка, только замечание).
Рекомендуется всегда объявлять переменные перед использованием.
4. Dastar - 18 Января, 2008 - 19:59:16 - перейти к сообщению
Если вы не уверены что переменная всегда будет инициализирована, то тут три выхода: либо поставить проверку на существование переменной, либо вначале скрипта присвоить ей значение, либо подавить ошибку (поставить перед переменной @)
5. Windozer - 19 Января, 2008 - 15:18:39 - перейти к сообщению
Даа. С переменной я напутал. Но не суть.
Всё равно данные в таблицу не добавляются.
CODE (text):
скопировать код в буфер обмена
  1. mysql_select_db("users");
  2. $query = "insert into users values
  3.             (NULL, ' ".$login." ' , ' ".$pass." ' , ' ".$email." ')" ;
  4. $result = mysql_query($query) ;
  5.  if ($result)
  6.       {
  7.       print "Типа добавилось";
  8.       }
  9.  

Ошибок никаких нет. Вообще нечего не отображается
6. EuGen - 19 Января, 2008 - 15:21:23 - перейти к сообщению
Используйте функцию mysql_error:
http://php.su/functions/?mysql-error
для обнаружения ошибки, ну и конечно:
http://phpfaq[dot]ru/debug
7. Dastar - 19 Января, 2008 - 15:22:54 - перейти к сообщению
замени:
$result = mysql_query($query) or die(mysql_error());
8. valenok - 19 Января, 2008 - 15:23:02 - перейти к сообщению
Мимо ..
9. Windozer - 19 Января, 2008 - 15:46:02 - перейти к сообщению
No database selected - пишет
10. Dastar - 19 Января, 2008 - 16:16:22 - перейти к сообщению
А как это переводицца на русский?)
переведи)))
11. Windozer - 19 Января, 2008 - 16:24:52 - перейти к сообщению
ГГ смешно пля)) Лан. Фиг писал. Всё равно мне ошибку искать.
12. EuGen - 19 Января, 2008 - 16:26:22 - перейти к сообщению
Ваша ошибка заключается в том, что Вы пытаетесь сделать что-то с таблицей, но по какой-то причине не выбрали до этого базу данных. Поэтому mysql "не знает", к какой базе относится таблица, с которой Вы пытаетесь работать. Поэтому Вы получаете такую ошибку.
13. Windozer - 19 Января, 2008 - 16:40:24 - перейти к сообщению
Ну вот мне и не понятно почему так происходит. Я соединяюсь с базой данных. Тыкаю носом MySQL в какую таблицу добавлять данные и указываю что записывать в поля. А ответ один - No database selected
(Добавление)
Всем кто отписался спс. Всё исправил. Причина стандартная - Сам дурак...
14. Dastar - 19 Января, 2008 - 17:31:34 - перейти к сообщению
Неа, лучше опиши какая была ошибка) Усетаки интересно!
15. Windozer - 19 Января, 2008 - 17:37:09 - перейти к сообщению
CODE (text):
скопировать код в буфер обмена
  1. mysql_select_db("НАЗВАНИЕ_БД");
а я туда название таблицы писал.

 

Powered by ExBB FM 1.0 RC1