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]   

> Без описания
Maksim337
Отправлено: 12 Февраля, 2010 - 20:31:12
Post Id


Частый гость


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


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




Как-то читал про то что в функциях переменные локальные, а есть например в функции запустить запрос к базе, то будет ли этот запрос выполнен или в функции нужно еще раз подключаться к базе? Или нужно сделать глобальным переменную подключения? Короче к примеру а то на словах правильно не могу спроситьУлыбка
PHP:
скопировать код в буфер обмена
  1. $db_host='localhost';
  2. $db_user='root';
  3. $dt_pass='password';
  4. $db='baza';
  5. if(!$connect=mysql_connect($db_host,$db_user))
  6.                                                                                                 {
  7.                                                                                                         die(' Невозможно подключиться к серверу MySQL:'.mysql_error());
  8.                                                                                                 }
  9. function query(){
  10. $data=mysql_fetch_assoc(mysql_query("SELECT `name` FROM `users` WHERE `id`='$_POST[id]'"));
  11. echo $data['name'];}
  12. query();

ПРотестировать не могу по этому хотел бы спросить будет ли выполняться такой запрос? Или надо делать в функции еще раз подключение?
Зарание спасибоУлыбка

(Отредактировано автором: 12 Февраля, 2010 - 20:32:31)

 
 Top
PeleWin
Отправлено: 12 Февраля, 2010 - 21:08:54
Post Id


Новичок


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


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




Указанный тобой запрос нормально выполнится, так как в вызове функции mysql_query ты НЕ указал идентификатор подключения (который возвращается функцией mysql_connect).
Раз идентификатор подключения не указан явно, то в его качестве будет использована глобальная переменная, определённая во время вызова функции mysql_connect.

В ином случае, когда в функции mysql_query() используется явно указанный идентификатор подключения (в качестве второго параметра функции), естественно необходимо, чтобы он был определён. В этом случае достаточно сделать глобальной переменную, содержащую идентификатор подключения.
 
 Top
RomAndry Администратор
Отправлено: 12 Февраля, 2010 - 21:47:31
Post Id



Частый посетитель


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


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




mysql_connect как минимум еще один параметр пропустили password
 
My status
 Top
Maksim337
Отправлено: 13 Февраля, 2010 - 11:59:45
Post Id


Частый гость


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


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




Спасибо большоеУлыбка
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB