За последние 24 часа нас посетили 17569 программистов и 1724 робота. Сейчас ищут 1623 программиста ...

Проблема с получением конфигов

Тема в разделе "PHP и базы данных", создана пользователем winsov001, 30 авг 2006.

  1. winsov001

    winsov001 Активный пользователь

    С нами с:
    30 авг 2006
    Сообщения:
    1
    Симпатии:
    0
    Подскажите пожалуйста.
    Имеется класс для работы с базой данных myDB (mybd.php). Есть так же файл common.php
    с настройками вида:
    Код (Text):
    1. <?php    
    2. require_once('mydb.php');    
    3. $DB_MYSQL['dbhostname']='localhost';  
    4. $DB_MYSQL['dbusername']='username';  
    5. $DB_MYSQL['dbpassword']='password';  
    6. $DB_MYSQL['dbname']='dbname';    
    7.  ...?>  
    mydb.php

    Код (Text):
    1. <?php
    2. class myDB
    3. {
    4.         var $hostname;
    5.         var $username;
    6.         var $password;
    7.          
    8.         var $link;
    9.         var $result;
    10.          
    11.         function myDB($hostname,$username,$password)
    12.         {
    13.                 $this->hostname=$hostname;
    14.                 $this->username=$username;
    15.                 $this->password=$password;
    16.         }
    17.         function Open()
    18.         {
    19.                 $this->link=@mysql_connect($this->hostname,$this->username,$this->password);
    20.                  
    21.                 if(!$this->link)
    22.                 {
    23.                         $handle = fopen("log.txt", "a+");
    24.                         fwrite($handle, date('d/m/Y H:i: ').mysql_error()."\r\n".$this->hostname."; ".$this->username.";
    25. ".$this->password."\r\n---\r\n");
    26.                         fclose($handle);
    27.                 }
    28.         }
    29. ...
    30. }
    31. ?>
    32.  
    Далее в каком-либо файле скрипта из друго класса:

    Код (Text):
    1. <?php
    2. require_once('common.php');
    3.  
    4. class CSessions
    5. {
    6.         var $mydb;
    7.          
    8.         function CSessions($DB_MYSQL)
    9.         {
    10.                 $this->mydb=new myDB($DB_MYSQL['dbhostname'],$DB_MYSQL['dbusername'],$DB_MYSQL['dbpassword']);
    11.                 $this->mydb->Open();
    12.                 $this->mydb->SelectDB($DB_MYSQL['dbname']);
    13.         }
    14. ...
    15. }
    16. ?>
    В итоге время от времени получаем ошибку:

    Can't connect to local MySQL server through socket '/tmp/mysql.sock'

    И запись в log.txt (идет из mydb.php)

    30/08/2006 00:24:
    ; ;
    ---

    Т.е. класс myDB не получает данных из массива $DB_MYSQL
    $DB_MYSQL['dbhostname']='localhost';
    $DB_MYSQL['dbusername']='username';
    $DB_MYSQL['dbpassword']='password';

    В чем может быть причина. Повторюсь: такое бывает в 10% из 100. Но регулярно. Версия PHP 4.4.2

    Очень надеюсь на помощь. Спасибо!
     
  2. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда