Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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代码进行更新时出错_Php_Mysql - Fatal编程技术网

我在遵循php代码进行更新时出错

我在遵循php代码进行更新时出错,php,mysql,Php,Mysql,下面的查询不起作用 $query= mysql_query('SELECT * FROM Registration WHERE name="'.$_POST['Username'].'" & password="'.$_POST['Password']); 在每个字段之间使用,而不是set。使用这个修改过的查询 ('UPDATE Registration SET name="'.$_POST['Username'].'" , password="'.$_POST['Password'

下面的查询不起作用

$query= mysql_query('SELECT  * FROM Registration WHERE name="'.$_POST['Username'].'" & password="'.$_POST['Password']);

在每个字段之间使用
而不是
set
。使用这个修改过的查询

('UPDATE Registration SET name="'.$_POST['Username'].'" , password="'.$_POST['Password'].'" , city="'.$_POST['City'].'" , state="'.$_POST['State'].'" , country="'.$_POST['Country'].'" WHERE id='.$_POST['user_id']);

在查询中只使用一次单词SET。并用逗号()分隔每个数据

您还应该考虑在使用变量到查询之前跳过变量的字符串。

如果您使用的是MySQLi,则可以执行以下操作:

$username=mysqli_real_escape_string($connection,$_POST['Username']);
$password=mysqli_real_escape_string($connection,$_POST['Password']);
$city=mysqli_real_escape_string($connection,$_POST['City']);
$state=mysqli_real_escape_string($connection,$_POST['State']);
$country=mysqli_real_escape_string($connection,$_POST['Country']);
$userid=mysqli_real_escape_string($connection,$_POST['user_id']);

$query="UPDATE Registration SET name='$username', password='$password', city='$city', state='$state', country='$country' WHERE id='$userid'";

mysqli_query($connection,$query); /* EXECUTE QUERY */

OP没有标记它<代码> MySqLI>代码>……“可能想考虑逃逸”应该是“绝对必须”,这仍然是一个语法错误,也是完全不安全的。