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 » Программирование на PHP » Пользовательские функции

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

1. Andrey - 09 Мая, 2007 - 23:24:32 - перейти к сообщению
Здравствуйте.
Может кто сталкивался с такой проблемой.
Настройки для соединения с БД выношу в отдельный файл, который цепляю includе'ом - всё хорошо, всё работает. Вот рабочий код:
<?php
$DB_DATABASE = "XXXX";
$DB_HOST = "XXXXX.mysql.masterhost.ru";
$DB_USER = "XXXXX";
$DB_PASS = "YYYY";
$connect=mysql_connect($DB_HOST,$DB_USER,$DB_PASS);
?>
Потом решил это всё собрать в функцию:
<?php
function conn(){
$DB_DATABASE = "XXXX";
$DB_HOST = "XXXXX.mysql.masterhost.ru";
$DB_USER = "XXXXX";
$DB_PASS = "YYYY";
$connect=mysql_connect($DB_HOST,$DB_USER,$DB_PASS);}
?>
Это чтобы когда нужно будет, вызывать функцию conn().
Звтем выполняю стандартную проверку:

if ($connect){
print "MySQL успешно подключена";
}else{
print "Не могу подключиться к MySQL";
}


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

В чём тут может быть проблема?
2. alfred - 09 Мая, 2007 - 23:46:17 - перейти к сообщению
а зачем ты вообще пишеш функцию? просто делай инклюд того файла, где у тя подключение к бд..
3. UserID - 10 Мая, 2007 - 09:18:38 - перейти к сообщению
Andrey
PHP:
скопировать код в буфер обмена
  1.  
  2. function conn(){
  3. $DB_DATABASE = "XXXX";
  4. $DB_HOST = "XXXXX.mysql.masterhost.ru";
  5. $DB_USER = "XXXXX";
  6. $DB_PASS = "YYYY";
  7. $connect=mysql_connect($DB_HOST,$DB_USER,$DB_PASS);}
  8.  


Функция работает только с локальными переменными, т.е. вне этой функции ты никак не узнаешь, есть подключение, или нет.

Мой вариант твоей проблемы:
PHP:
скопировать код в буфер обмена
  1.  
  2. function conn(){
  3. $DB_DATABASE = "XXXX";
  4. $DB_HOST = "XXXXX.mysql.masterhost.ru";
  5. $DB_USER = "XXXXX";
  6. $DB_PASS = "YYYY";
  7. $connect = mysql_connect($DB_HOST,$DB_USER,$DB_PASS);
  8. return $connect;
  9. }
  10.  
  11. $connect = conn();
  12.  
  13. if(!connect) { и так далее }
  14.  

4. Andrey - 12 Мая, 2007 - 11:43:04 - перейти к сообщению
UserID пишет:

Функция работает только с локальными переменными, т.е. вне этой функции ты никак не узнаешь, есть подключение, или нет.

Мой вариант твоей проблемы:
PHP:
скопировать код в буфер обмена
  1.  
  2. function conn(){
  3. $DB_DATABASE = "XXXX";
  4. $DB_HOST = "XXXXX.mysql.masterhost.ru";
  5. $DB_USER = "XXXXX";
  6. $DB_PASS = "YYYY";
  7. $connect = mysql_connect($DB_HOST,$DB_USER,$DB_PASS);
  8. return $connect;
  9. }
  10.  
  11. $connect = conn();
  12.  
  13. if(!connect) { и так далее }
  14.  



Поял свою ошибку. Большое спасибо!
5. UserID - 12 Мая, 2007 - 22:15:08 - перейти к сообщению
Andrey
Расти большой не кашляй

 

Powered by ExBB FM 1.0 RC1