Почему real_connect возвращает null? - PullRequest
0 голосов
/ 26 сентября 2011

По какой-то странной причине следующий код возвращает ноль, в то время как руководство заявляет, что должно возвращать либо истину, либо ложь. В объекте mysqli также нет информации.

код

// Initialize MySQLi

$this->mysqli = new mysqli();

// Connect to the server

var_dump($this->mysqli);
var_dump($this->mysqli->real_connect($host, $username, $password, $database));
var_dump($this->mysqli);

выход

object(mysqli)#2 (17) { ["affected_rows"]=> NULL ["client_info"]=> NULL ["client_version"]=> int(50141) ["connect_errno"]=> int(0) ["connect_error"]=> NULL ["errno"]=> NULL ["error"]=> NULL ["field_count"]=> NULL ["host_info"]=> NULL ["info"]=> NULL ["insert_id"]=> NULL ["server_info"]=> NULL ["server_version"]=> NULL ["sqlstate"]=> NULL ["protocol_version"]=> NULL ["thread_id"]=> NULL ["warning_count"]=> NULL }
NULL
object(mysqli)#2 (17) { ["affected_rows"]=> NULL ["client_info"]=> NULL ["client_version"]=> int(50141) ["connect_errno"]=> int(0) ["connect_error"]=> NULL ["errno"]=> NULL ["error"]=> NULL ["field_count"]=> NULL ["host_info"]=> NULL ["info"]=> NULL ["insert_id"]=> NULL ["server_info"]=> NULL ["server_version"]=> NULL ["sqlstate"]=> NULL ["protocol_version"]=> NULL ["thread_id"]=> NULL ["warning_count"]=> NULL } 

Ответы [ 2 ]

1 голос
/ 26 сентября 2011

Вы используете его неправильно.

Вам необходимо создать объект, используя mysqli_init().

Или вы помещаете информацию о соединении в конструктор и не вызываете real_connect.

0 голосов
/ 30 сентября 2011

Интересно, каков контекст для вашего кода? Я только что работал над проектом, где я установил это в файле config.php ..

<?php
$h='localhost';$u='username';$pw='PW';$db='test';
$sqli = new mysqli($h,$u,$pw,$db); ?>

тогда в файле функций это ...

<?php
include_once 'include/config.php';
class User {
public function __construct($sqli) {
        $this->sqli=$sqli;
} //etc.
} ?>

Соединение работает хорошо, и вы звоните в течение Класс Пользовательские функции с $ this-> sqli -> query ("SELECT ... например. Передайте соединение при создании пользователя ... $ user = new User ($ sqli);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...