转换为准备好的声明

时间:2013-03-27 19:27:31

标签: php mysql prepared-statement

我一直在尝试更新一些代码以使用预准备语句但却无法使其工作。根据我阅读的文档和示例,似乎SELECT语句中的每个字段都需要单独绑定。

我正在根据用户输入构建我的查询,并且不确定我的代码是否能够使用预准备语句或者我是否需要重写脚本。基本上在这种情况下寻找一个例子。

我的简化代码如下:

$db = mysqli_connect("ip_address", "my_login", "my_pw", "my_db");
    if (!$db) {
         die('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());


    $query = "SELECT * FROM tbl_name WHERE 1=1";
    if ($_POST[id] != '') {
        $query = $query. " AND id LIKE '%$_POST[id]%'";
    } 
    if ($_POST[date] != '') {
        $query = $query. " AND bdate LIKE '%$_POST[date]%'";
    } 
    if ($_POST[name] != '') {
        $query = $query. " AND name LIKE '%$_POST[name]%'";
    } 
    if ($_POST[address] != '') {
        $query = $query. " AND address LIKE '%$_POST[address]%'";
    }

    $query = $query. " ORDER BY id, bdate DESC";

     $results = mysqli_query($db, $query);  
     echo $query;
}

提前致谢

0 个答案:

没有答案