SQLクエリの動的プレースホルダ

大家讲道理
リリース: 2016-11-10 11:33:20
オリジナル
1189 人が閲覧しました

動的バインディングの例

<?php
// 在这段脚本中,PHP变量$title 和  $price 分别为书名和价格上限的页面输入值。 
$sql = &#39;SELECT id,title,author,publisher,date,price FROM books&#39;;
if($title !==&#39;&#39;){//添加title查询条件(LIKE)
    $conditions[] = "title LIKE ? ESCAPE &#39;#&#39;";
    $ph_type[] =&#39;text&#39;;
    $ph_value[]= esape_wildcard($title);
}
if($price !== &#39;&#39;){//添加price上限查询条件
    $conditions[] = "price <= ?";
    $ph_type[] =&#39;integer&#39;;
    $ph_value[]= $price;
}
if(count($conditions) > 0){//存在where语句时
    $sql .= &#39; WHERE &#39;.implode(&#39; AND &#39;,$conditions);
}
$stmt = $mdb2 ->prepare($sql , $ph_type);//准备SQL语句
$rs = $stmt->excute($ph_value);//执行变量绑定和查询
 
?>
ログイン後にコピー
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート