Операторы подготовки SQL [дубликаты]

Определив следующее:

$value = $_POST['value'];
this_query = $database->prepare("SELECT * FROM table WHERE field = ?");
$stt = bind_param("s", $value);
$stt->execute();

как мне получить значение из this_query?

Используя стандартные операторы, я мог бы использовать:

$this_query = "SELECT * FROM table  WHERE value ='$value'";
$result = mysqli_query($database, $this_query);

Но поскольку это небезопасно, пользователь может ввести ЧТО-НИБУДЬ в $_POST['value']; , я хотел использовать подготовленный оператор, но, поскольку я никогда их не использовал, теперь я застрял здесь, потому что я не знаю, как получить значение из запроса.


person BlackSys    schedule 08.08.2015    source источник
comment
mysqli_query как бы сочетает в себе _prepare_execute. Это не имеет ничего общего с тем, как вы впоследствии извлекаете результаты (например, _fetch_assoc). (Ну, на самом деле это немного более громоздко с mysqli. Но это просто особенность API, а не техническая необходимость.)   -  person mario    schedule 08.08.2015
comment
Вы готовите this_query, который не является переменной. Потом как-то привязка $stt. Почему?   -  person Script47    schedule 08.08.2015
comment
stackoverflow.com/questions/60174/   -  person Fabio Cardoso    schedule 08.08.2015
comment
это мне совсем не помогает   -  person BlackSys    schedule 08.08.2015
comment
Так. Я пробовал это: pastebin.com/7WKp6pK8 и не работает.   -  person BlackSys    schedule 08.08.2015
comment
См. php.net/manual/en/mysqli-result.fetch-assoc. .php   -  person Dan Costinel    schedule 08.08.2015
comment
Мне не нужен fetch_assoch, мне нужен num_rows. который на самом деле не работает, как ожидалось. см. ссылку выше.   -  person BlackSys    schedule 08.08.2015
comment
pastebin.com/3V9sqtwA   -  person Dan Costinel    schedule 08.08.2015