在 PHP 中以 2 种方式处理 SQL 查询


processing SQL query in 2 ways in php

我写了这段代码,我是,我无法处理查询属性

$sql= "select * from users where email = ".$email." and pass = ".$password;
mysql_query($sql);

使用这段代码我无法登录,

所以后来我把它改成了

$sql= "select * from users where email = '$email' and pass = '$password'";
mysql_query($sql);

然后它工作正常。

可以请有人解释一下这两种方式有什么区别

由于电子邮件和密码是字符串值,因此您必须在 sql 查询中对这些值进行单独编码才能正确执行,以便查询。

$sql= "select * from users where email = '".$email."' and pass = '".$password."'";

如果您将其更改为:

$sql= "select * from users where email = '".$email."' and pass = '".$password."'";
mysqli_query($sql);