Php 更新查询isn';行不通
每次我运行查询时,都不会发生任何事情。我知道这不是我的jQuery,所以不用担心,因为我进行了三重检查,所有变量都很好。我的MySQL行标题周围的引号没有任何作用,如果我把它们取下或放上。我已经试了几个小时了,但似乎找不到解决办法 我相信这是查询末尾的ID。当它很可能是一个整数并且不应该有引号时,您在它周围使用引号Php 更新查询isn';行不通,php,mysql,json,Php,Mysql,Json,每次我运行查询时,都不会发生任何事情。我知道这不是我的jQuery,所以不用担心,因为我进行了三重检查,所有变量都很好。我的MySQL行标题周围的引号没有任何作用,如果我把它们取下或放上。我已经试了几个小时了,但似乎找不到解决办法 我相信这是查询末尾的ID。当它很可能是一个整数并且不应该有引号时,您在它周围使用引号 --编辑:代码似乎已更改,WHERE部分不再存在。您必须按照以下几个步骤进行调试 回显“updateusers SET Username=“”.$Username.”、EMail=“
--编辑:代码似乎已更改,WHERE部分不再存在。您必须按照以下几个步骤进行调试
updateusers SET Username=“”.$Username.”、EMail=“.$EMail.”、FName=“.$FName.”、LName=“.$LName.”、IP=“.$IP.”、Active=“.$Active.”、Admin=“.$Admin.”并查看查询是否正确
“更新用户设置用户名=”“$Username.”,电子邮件=“$EMail.”,FName=“$FName.”,LName=“$LName.”,IP=“$IP.”,Active=“$Active.”,Admin=“$Admin.”
。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果选择PDO,。请尝试回显此语句,$query='updateusers SET Username=“”..$Username.”,EMail=“..$EMail.”,FName=“..$FName.”,LName=“..$LName.”,IP=“..$IP.”,Active=“..$Active.”,Admin=“..$Admin.”
然后回显$query。输出是什么?你的引号倒过来了。单引号用于SQL中的字符串文本。若要测试您的查询,请尝试从调用的Javascript设置User='bob'-'
,然后进行Ajax调用(或User='bob'-“
,如果您已将引号更改为单引号)id我测试了我所有的变量,但是@JW我测试了echo,我的id从来都没有出现过嗯,我到处乱搞。除了id之外的所有东西都出现了。我在发布时把WHERE值放在了正确的位置,但它没有改变任何东西。你可以用引号括起一个整数,但查询会尝试将它作为字符串插入。不是int
<?php
session_start();
include('MySQL.php');
$Name = $_SESSION['Name'];
$Check = 'SELECT * FROM Users WHERE FName = "'.$Name.'"';
$Query = mysql_query($Check);
if($Row = mysql_fetch_assoc($Query))
{
$Admin = $Row['Admin'];
if($Admin == 1)
{
$ID = $_POST['ID'];
$Username = $_POST['User'];
$EMail = $_POST['EMail'];
$FName = $_POST['FName'];
$LName = $_POST['LName'];
$IP = $_POST['IP'];
$Active = $_POST['Active'];
$Admin = $_POST['Admin'];
mysql_query('UPDATE Users SET Username="'.$Username.'", EMail="'.$EMail.'", FName="'.$FName.'", LName="'.$LName.'", IP="'.$IP.'", Active="'.$Active.'", Admin="'.$Admin.'"');
$Val['Msg'] = 'Those Values Have Been Updated';
}
else
{
$Val['Re'] = 'Home.php';
}
}
echo json_encode($Val);
?>