ホームページ > バックエンド開発 > PHPチュートリアル > 準備されたステートメントが実行できないのはなぜですか?

準備されたステートメントが実行できないのはなぜですか?

WBOY
リリース: 2016-06-23 13:37:27
オリジナル
979 人が閲覧しました

$mysqli= new mysqli("localhost","root","123456","xsphpdemo");
if(mysqli_connect_errno()){
echo "接続に失敗しました
".mysqli_connect_error( ) ;
}

$stmt=$mysqli->prepare("select id name Price num desn from shop where id>?");

$stmt->bind_param("i",$id); stmt->bind_result($id,$name,$price,$num,$desn);
$stmt->execute();
$stmt->store_result();
while($stmt->fetch()){
echo "$id -- $name -- $num -- $desn
"
}
echo $stmt-> ;
$stmt->close();
Var_dump("select id name Price num desn from shop where id>?") を実行
ブール値は false
$mysqli->prepare() ステートメントのようですは実行されません。理由はわかりません

ディスカッションへの返信 (解決策)

"select `id`, `name`, `price`, `num`,`desn` from shop where id>? "

echo $stmt->error; エラー メッセージはありますか?

echo $stmt->error; エラー メッセージはありますか?

いいえ、上記のように引用符を追加しました。var_dump を追加した後、 ($stmt)、オブジェクトであることが示されましたが、実行するとエラーが発生します


echo $stmt->error;いいえ、上記のように引用符を追加し、var_dump($ stmt) を追加しました。これはオブジェクトであることを示していますが、実行エラーが発生すると

mysqli を使用したことがありません。文が間違っていますか?

$stmt->bind_param("i",$id);
ログイン後にコピー


$stmt->bind_param(1,$id);
ログイン後にコピー


フィールドは分離されていません
$stmt=$mysqli->prepare("select id, name,price, num, desn from shop where id>?");

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート