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 :: Версия для печати :: Свойством $mysqli класса сделан new mysqli(...); но в методах использовать нельзя
Форумы портала PHP.SU » » Объектно-ориентированное программирование » Свойством $mysqli класса сделан new mysqli(...); но в методах использовать нельзя

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

1. SkaN - 25 Августа, 2011 - 10:13:33 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. private $mysqli;
  2.        
  3. function __construct($server, $login, $password, $database) {
  4.         $this->mysqli = new mysqli($server, $login, $password, $database);
  5. }
  6. //Куча всякого кода
  7. $this->mysqli->prepare(//Вполне нормльный запрос);
  8. //Еще куча кода

Вот такой вызов схватывает ошибку:
Warning: mysqli::prepare(): Couldn't fetch mysqli
уже попробовал и ($this->mysqli)->prepare(); и $mysqli = $this->mysqli внутри метода, но ничего не помогает. Только меняются иногда ошибки
2. КЫР - 25 Августа, 2011 - 10:19:34 - перейти к сообщению
при объявлении ошибка
3. White - 25 Августа, 2011 - 11:04:23 - перейти к сообщению

в конструктор добавьте в конце.

КЫР не вводите людей в заблуждение
4. SkaN - 25 Августа, 2011 - 12:35:30 - перейти к сообщению
ничего не происходит.
PHP:
скопировать код в буфер обмена
  1.     if($this->mysqli->connect_error){
  2.      echo $this->mysqli->connect_error;
  3.     }

так тоже
5. SkaN - 25 Августа, 2011 - 15:08:22 - перейти к сообщению
решено. Дело в том, что выполнялся только первый запрос. Путем долгого дебага было выяснено, что соединение закрывать не надо

 

Powered by ExBB FM 1.0 RC1