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 :: Как правильно запрос к БД написать?

 PHP.SU

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


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

> Без описания
Windozer
Отправлено: 18 Января, 2008 - 15:11:35
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  


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




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-ая и есть

(Отредактировано автором: 18 Января, 2008 - 15:14:33)

 
 Top
valenok
Отправлено: 18 Января, 2008 - 16:37:12
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


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




А по русски что значит то что написал сервер?


-----
Truly yours, Sasha.
 
My status
 Top
EuGen Администратор
Отправлено: 18 Января, 2008 - 16:59:25
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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




Вы используете в Вашем запросе неинициализированную переменную $email. И Вам выдается замечание об этом (это не ошибка, только замечание).
Рекомендуется всегда объявлять переменные перед использованием.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Dastar
Отправлено: 18 Января, 2008 - 19:59:16
Post Id



Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008  
Откуда: Израиль


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




Если вы не уверены что переменная всегда будет инициализирована, то тут три выхода: либо поставить проверку на существование переменной, либо вначале скрипта присвоить ей значение, либо подавить ошибку (поставить перед переменной @)


-----
Не знаешь - молчи.
 
 Top
Windozer
Отправлено: 19 Января, 2008 - 15:18:39
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  


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




Даа. С переменной я напутал. Но не суть.
Всё равно данные в таблицу не добавляются.
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.  

Ошибок никаких нет. Вообще нечего не отображается

(Отредактировано автором: 19 Января, 2008 - 15:19:03)

 
 Top
EuGen Администратор
Отправлено: 19 Января, 2008 - 15:21:23
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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




Используйте функцию mysql_error:
http://php.su/functions/?mysql-error
для обнаружения ошибки, ну и конечно:
http://phpfaq[dot]ru/debug


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Dastar
Отправлено: 19 Января, 2008 - 15:22:54
Post Id



Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008  
Откуда: Израиль


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




замени:
$result = mysql_query($query) or die(mysql_error());


-----
Не знаешь - молчи.
 
 Top
valenok
Отправлено: 19 Января, 2008 - 15:23:02
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


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




Мимо ..

(Отредактировано автором: 19 Января, 2008 - 15:24:04)



-----
Truly yours, Sasha.
 
My status
 Top
Windozer
Отправлено: 19 Января, 2008 - 15:46:02
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  


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




No database selected - пишет
 
 Top
Dastar
Отправлено: 19 Января, 2008 - 16:16:22
Post Id



Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008  
Откуда: Израиль


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




А как это переводицца на русский?)
переведи)))

(Отредактировано автором: 19 Января, 2008 - 16:16:51)



-----
Не знаешь - молчи.
 
 Top
Windozer
Отправлено: 19 Января, 2008 - 16:24:52
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  


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




ГГ смешно пля)) Лан. Фиг писал. Всё равно мне ошибку искать.
 
 Top
EuGen Администратор
Отправлено: 19 Января, 2008 - 16:26:22
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


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




Ваша ошибка заключается в том, что Вы пытаетесь сделать что-то с таблицей, но по какой-то причине не выбрали до этого базу данных. Поэтому mysql "не знает", к какой базе относится таблица, с которой Вы пытаетесь работать. Поэтому Вы получаете такую ошибку.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Windozer
Отправлено: 19 Января, 2008 - 16:40:24
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  


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




Ну вот мне и не понятно почему так происходит. Я соединяюсь с базой данных. Тыкаю носом MySQL в какую таблицу добавлять данные и указываю что записывать в поля. А ответ один - No database selected
(Добавление)
Всем кто отписался спс. Всё исправил. Причина стандартная - Сам дурак...

(Отредактировано автором: 19 Января, 2008 - 16:41:27)

 
 Top
Dastar
Отправлено: 19 Января, 2008 - 17:31:34
Post Id



Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008  
Откуда: Израиль


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




Неа, лучше опиши какая была ошибка) Усетаки интересно!


-----
Не знаешь - молчи.
 
 Top
Windozer
Отправлено: 19 Января, 2008 - 17:37:09
Post Id


Новичок


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  


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




CODE (text):
скопировать код в буфер обмена
  1. mysql_select_db("НАЗВАНИЕ_БД");
а я туда название таблицы писал.

(Отредактировано автором: 19 Января, 2008 - 17:37:37)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB