Как да bind_result() в PHP със стойност SHA512?

Това е кодът, който се опитвам да изпълня:

$query = "SELECT `UserID`, `password` FROM Users WHERE email = ?";
$stmt = $mysqli->prepare($query);
$stmt->bind_param('s', $email);

$stmt->execute();
$stmt->bind_result($user_id, $db_pass);
$stmt->fetch();

echo 'ID: '.$user_id.'<br>';
echo 'Password: '.$db_pass.'<br>';

Полето за парола е хеширана стойност sha512. Когато правя заявка само за user_id, а не за паролата, кодът работи чудесно. След като се опитам да направя заявка в полето за парола, chrome казва, че сървърът никога не е отговорил. Проблемът изглежда е особено с функцията bind_result, ако се опитам да свържа променлива към полето за парола, тя няма да работи. Всяка помощ е много ценена.


person Andrew Bauer    schedule 23.04.2015    source източник
comment
пропускате ` след паролата   -  person pala_    schedule 23.04.2015
comment
@pala_ Благодаря, но това не беше проблемът, оригиналният код го има, просто печатна грешка при писане на въпроса.   -  person Andrew Bauer    schedule 23.04.2015
comment
можете ли да стартирате скрипта от командния ред, а не през браузъра?   -  person pala_    schedule 23.04.2015
comment
Използвате ли променлива $db_pass някъде другаде? Например по време на създаване на db връзка? Променливата се предава на bind_result чрез връзка, така че може да има проблем с това. Ако го направите, опитайте да промените името на променливата.   -  person phoenix.mstu    schedule 23.04.2015
comment
да не говорим, че се свързвате с $db_pass и след това ехото $db_password - друга правописна грешка или това е действително несъответствие?   -  person pala_    schedule 23.04.2015
comment
@phoenix.mstu Не предавам $db_никъде другаде в моя код. Това е единствената част, в която правя заявка за паролата от базата данни.   -  person Andrew Bauer    schedule 23.04.2015
comment
@pala_ Това всъщност беше несъответствие, но коригирането му не промени нищо. Chrome все още казва, че сървърът не му изпраща никакви данни.   -  person Andrew Bauer    schedule 23.04.2015
comment
настройте и проверете регистър на SQL грешки   -  person Martin    schedule 23.04.2015
comment
Интересно, когато стартирам от командния ред, това ми дава грешка при сегментиране.   -  person Andrew Bauer    schedule 23.04.2015
comment
тогава опитайте тук: stackoverflow.com/questions/8547751/   -  person pala_    schedule 23.04.2015
comment
Вижте това: php.net/manual/ru/mysqli- stmt.bind-result.php#57564 вероятно е защото PHP се опитва да разпредели твърде много памет.   -  person phoenix.mstu    schedule 23.04.2015