Mysqli подготовленная инструкция select не работает

#php #mysqli

#php #mysqli

Вопрос:

Что не так с этой подготовленной инструкцией? Кажется, я не могу заставить это работать.

 $session = mysql_real_escape_string($_GET['s']);

$stmt = $mysqli->prepare("SELECT quantity FROM details WHERE session = ?");
$stmt->bind_param( "s", $session); 
$stmt->execute();
$stmt->bind_result($quantity);
  

когда я echo $quantity; получаю результат, просто появляется 0, когда он должен отображаться с числом от 1 до 10.

Комментарии:

1. пожалуйста, проверьте: jp.php.net//manual/en/mysqli-stmt.bind-param.php

2. 1) Не смешивайте функции mysql и mysqli! 2) Вы используете параметризованные запросы, вам не нужно и не следует экранировать значение поверх этого. Это либо или, а не оба.

Ответ №1:

 $stmt = $mysqli->prepare("SELECT quantity FROM details WHERE session = ?");
$stmt->bind_param( "s", $session); 
$stmt->execute();
$stmt->bind_result($quantity);
$stmt->fetch();

echo $quantity