gpt4 book ai didi

php - 需要理解为什么在通过 mysql 查询传递变量值时需要为变量加上引号

转载 作者:行者123 更新时间:2023-11-29 17:50:09 26 4
gpt4 key购买 nike

我是 PHP 的初学者,目前我正在学习 MySQL,但我在使用这段特定代码时遇到了问题。

$connection = mysqli_connect('localhost','root','','loginapp'); 

$username = $_POST['username'];
$password = $_POST['password'];

$query = "INSERT INTO users(username,password) VALUES ('$username','$password')";
$result = mysqli_query($connection,$query);

if ($result)
echo 1

else if(!$result)
echo 0;

*基本上,如果用户名和密码已成功传输到数据库,则回显 1;如果未成功传输,则回显 0。

如果我没记错的话,你只使用引号 ' '对于字符串以及传递变量时,不需要用 ' 或 "将它们括起来。因此,我尝试从 VALUES($username,$password) 中的变量中删除引号,它开始回显 0。任何人都可以向我提供解释吗为什么变量必须用 ' 或 "括在 VALUES 内,以便我更好地理解它是如何工作的?

最佳答案

密码和用户名字段必须是 mysql 中的字符串,因此您需要将它们放在查询的引号之间。

我建议你看一下prepared statments同样,这将是执行此查询的更好方法。

关于php - 需要理解为什么在通过 mysql 查询传递变量值时需要为变量加上引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49434843/

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