gpt4 book ai didi

php - 通过函数传递数据库字段

转载 作者:行者123 更新时间:2023-11-29 23:17:19 25 4
gpt4 key购买 nike

我是 PHP 初学者,通过观看视频学习基础知识。我们正在创建一个表单。除了下面的内容之外,我了解正在发生的一切。有人可以向我解释一下为什么他这样做,而不是 ---> id='$_SESSION['user_id']";

id='"'.$_SESSION['user_id']."'";

function getuserfield($field){
$query = "SELECT $field FROM users WHERE id='".$_SESSION['user_id']."'";
$query_run = mysql_query($query);

if($query_run){
return mysql_result($query_run, 0, $field);
}
}

最佳答案

关于将变量插入 SQL 查询有很多话要说,但对于初学者来说,只需语法:

在 PHP 中,您可以对字符串使用单引号或双引号,但单引号内不能进行变量替换。

在 SQL 中,字符串必须用单引号括起来,结果必须类似于 WHERE id='asdf'。因此,在示例中 WHERE id='".$_SESSION['user_id']."'" 等号后面有单引号,然后是字符串结尾,然后是字符串连接,然后是变量、字符串连接、字符串开头、结束单引号 - 这是正确的。

您的 id='$_SESSION['user_id']"; 单引号和双引号不平衡。

更好的办法是:使用 PDO、准备好的语句和绑定(bind)变量之类的东西。

还有一点:在数据库中,id 列通常是整数类型,这需要不同的解决方案。

关于php - 通过函数传递数据库字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27661999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com