Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql绑定到参数_Php_Mysql - Fatal编程技术网

Php mysql绑定到参数

Php mysql绑定到参数,php,mysql,Php,Mysql,我是新手,想学习php,下面是从谷歌获得的代码 我不明白这行代码 这行代码是什么意思 $where=($data\u id)?'其中id=:data_id':'' 这是否意味着,如果$data\u id不为空,则设置变量$where towhere id=(参数data\u id)? 如果我想将其更改为WHERE id like(param data_id),怎么样 它只是意味着,如果参数中提供了$data\u id,它会在查询中添加WHERE子句。如果省略参数,->bindParam方法是多

我是新手,想学习php,下面是从谷歌获得的代码

我不明白这行代码

这行代码是什么意思
$where=($data\u id)?'其中id=:data_id':''

这是否意味着,如果$data\u id不为空,则设置变量$where to
where id=(参数data\u id)?

如果我想将其更改为
WHERE id like(param data_id)
,怎么样



它只是意味着,如果参数中提供了
$data\u id
,它会在查询中添加
WHERE
子句。如果省略参数,
->bindParam
方法是多余的,是的,如果需要,您可以将其更改为
LIKE
,但如果需要,请不要忘记通配符。请不要手动创建JSON字符串
echo'{“data”:“
,只需使用
echo-JSON_-encode(数组('data'=>$listed))
@Ghost如何将其更改为
类似的
,它是
$where=($data\u-id)“WHERE-id=:%data\u-id%:”;
?只需将占位符原封不动地放在那里,不要将通配符放在那里。下面是一个您试图实现的示例,其中已经有很多这样或那样的内容。好吧,我已经找到了它的工作。谢谢可能的重复只是意味着,如果参数中提供了
$data\u-id
,它会在那里添加
如果省略参数,
->bindParam
方法是多余的,如果需要,您可以将其更改为
LIKE
,如果需要,请不要忘记通配符。另外,请不要手动创建JSON字符串
echo'{“data”:“
,只需使用
echo JSON_encode(array('data'=>$listed))
@Ghost如何将其更改为
类似的
,它是
$where=($data\u id)?“where id=:%data\u id%”:“
”?只需将占位符原封不动地放在那里,不要将通配符放在那里。下面是一个你试图实现的示例,很多都已经在这里了。好的,我已经成功了。谢谢你可能的重复
<?php
    include 'db.php';
    $id = (isset($_GET['uid'])) ? $_GET['uid'] : NULL;

    getById($id);

     function getById($data_id) {
         $where = ($data_id) ? 'WHERE id = :data_id' : '';
         $sql="SELECT * from tbl_user $where ORDER BY id desc";
         try {
             $db = getDB();
             $stmt = $db->prepare($sql);
             $stmt->bindParam("data_id", $data_id);
             $stmt->execute();
             $listed = $stmt->fetchAll(PDO::FETCH_OBJ);
             $db = null;
             echo '{"data": ' . json_encode($listed ) . '}';
         } catch(PDOException $e) {
             echo '{"error":{"text":'. $e->getMessage() .'}}';
         }
     }
?>