При запросе с использованием mysqli_stmt::prepare()
и execute()
он не вернет набор результатов. Но нам нужно получить доступ, используя mysqli_stmt:fetch()
на объекте stmt. В руководстве по php есть одна функция mysqli_stmt::get_result()
, которая возвращает набор результатов в переменную, которую мы определяем, но когда я ее использую, это дает мне неопределенную ошибку метода. В руководстве говорится, что это, вероятно, в SVC, что я не уверен, что.
Коды:
$conn = new mysqli(DB_HOST,DB_USERNAME,DB_PASSWORD, DB_NAME);
$stmt = $conn->stmt_init();
$stmt->prepare("select * from users where u_id = ? ");
$stmt->bind_param('s', $param);
$stmt->execute();
Редактировать:
Я знаю, что могу использовать функции bind_result () и fetch () для извлечения записи, например:
$stmt->bind_result($column1, $column2, $column3);
while ($stmt->fetch()) {
echo "Column 1: $column1\n";
echo "Column 2: $column2\n";
echo "Column 3: $column3\n";
}
Но моя цель - получить набор результатов (объект типа ресурса) после выполнения, что-то вроде этого:
$result = $stmt->execute();
чтобы я мог использовать обычный mysqli::fetch_object
в наборе результатов
$conn->fetch_object($result);
Есть ли способ достичь этого? спасибо
Обновление:
get_result - это именно то, что мне нужно, но она не работает на моем PHP