次のコードを実行しようとしていますが、行には届きません。PHPでbind_param()を実行するには?
$mysqli = $this->ConnectLowPrivileges();
echo 'Connected<br>';
$stmt = $mysqli->prepare("SELECT `name`, `lastname` FROM `tblStudents` WHERE `idStudent`=?");
echo 'Prepared and binding parameters<br>';
$stmt->bind_param('i', 2);
echo 'Ready to execute<br>'
if ($stmt->execute()){
echo 'Executing..';
}
} else {
echo 'Error executing!';
}
mysqli_close($mysqli);
私が手出力は次のようになります。
Connected
Prepared and binding parameters
ので問題がライン5である必要がありますが、manual of bind_param()
をチェックすると、私はそこに任意の構文エラーを見つけることができません。 http://php.net/manual/en/mysqli-stmt.bind-param.php
注$var
が実際にそれをバインドするために定義する必要がないこと:
$var = 1;
$stmt->bind_param('i', $var);
マニュアルを参照してください:あなたが基準として使用される変数を渡す必要が結合パラメータが
をバインドするために、変数を宣言し、それをデバッグするために、受信しましたか?私は '$ stmt-> error'をエコーすると、mysqlが不平を言っている正確なエラーを得ることができると思います。 – Todd
私の質問が更新されました。なぜなら、 'bind_param()'の後に次の行を実行することさえできないからです! @Toddこれは便利であり、心に留めておくことが重要です。 – Lucio