Я пытаюсь запросить мою базу данных, используя Sphinx Search, используя MySQLi.
То, что я пытаюсь достичь, заключается в том, что пользователь вводит термин, который затем используется для запроса моей базы данных и возвращает значения. Однако я получаю ошибку:
«вызов функции члена FETCH_ASSOC() на не-объект»
$conn = new mysqli('127.0.0.1', 'null', 'null', 'null', 9306);
if ($conn->connect_error) {
throw new Exception('Connection Error: ['.$conn->connect_errno.'] '.$conn->connect_error, $conn->connect_errno);
}
$term = $_GET['q'];
echo "$term";
$resource = $conn->query('SELECT * FROM test1 WHERE MATCH (title, description) AGAINST ($term)');
$results = array();
while ($row = $resource->fetch_assoc()) {
$results[] = $row;
}
$resource->free_result();
var_dump($results);
Нарушитель Похоже, что строка:
$resource = $conn->query('SELECT * FROM test1 WHERE MATCH (title, description) AGAINST ($term)');
Если я изменю line to:
$resource = $conn->query('SELECT * FROM test1')
Запрос выполняется нормально, однако мне нужен запрос для соответствия $ term, но у меня возникают проблемы d так и я не понимаю, почему.
А вы попробуйте запрос, который не работает на стороне клиента, чтобы увидеть, что сервер должен сказать об этом? – Jon
Да, журналы ошибок apache: «PHP Неустранимая ошибка: вызов функции-члена fetch_assoc() для не-объекта», только когда запрос $ resource использует «WHERE MATCH» – PublicDisplayName
Я имею в виду запрос MySql. Если вы запустите его вручную, сервер скажет вам, что именно не так с ним. – Jon