无法使用Php编辑mysql主题
因此,我正在创建这个CMS,作为我论文的一部分,用于教师信息。当我需要创建/删除主题时,我的代码似乎工作正常。然而,当我尝试更新它们时,它告诉我编辑过程失败了。不知道到底哪里出了问题 下面是我的主题问题。我是php新手,所以如果我犯了一些明显的错误,请容忍我无法使用Php编辑mysql主题,php,mysql,edit,Php,Mysql,Edit,因此,我正在创建这个CMS,作为我论文的一部分,用于教师信息。当我需要创建/删除主题时,我的代码似乎工作正常。然而,当我尝试更新它们时,它告诉我编辑过程失败了。不知道到底哪里出了问题 下面是我的主题问题。我是php新手,所以如果我犯了一些明显的错误,请容忍我 if (isset($_POST['submit'])) { //form was submitted $staff_id = mysql_real_escape_string((int) $_POST["staff_id"]);
if (isset($_POST['submit']))
{
//form was submitted
$staff_id = mysql_real_escape_string((int) $_POST["staff_id"]);
$first_name = mysql_real_escape_string($_POST["first_name"]);
$last_name = mysql_real_escape_string($_POST["last_name"]);
$age = mysql_real_escape_string((int) $_POST["age"]);
$email = mysql_real_escape_string($_POST["email"]);
$phone_no = mysql_real_escape_string((int) $_POST["phone_no"]);
$department = mysql_real_escape_string($_POST["department"]);
$visible = mysql_real_escape_string((int) $_POST["visible"]);
$message = "Your details have been received";
//Database Query
$query = "UPDATE subjects SET ";
$query .= "first_name = '{$first_name}', ";
$query .= "last_name = '{$last_name}', ";
$query .= "age = '{$age}', ";
$query .= "email = '{$email}', ";
$query .= "phone_no = '{$phone_no}', ";
$query .= "department = '{$department}', ";
$query .= "visible = '{$visible}', ";
$query .= "WHERE staff_id = '{$staff_id}', ";
$query .= "LIMIT 1";
$result = mysqli_query($connect, $query);
if($result && mysqli_affected_rows($connect) == 1)
{
//Success
echo "Subject Edited. ";
}
else
{
//failure
echo "Subject Editing failed. ";
}
}
这是用来发送数据进行编辑的表单
<form action="editsub.php" method ="post">
<p>Staff ID to edit:
<input type="number" name="staff_id" value ="" />
</p>
<p>First Name:
<input type="text" name="first_name" value ="" />
</p>
<p>Last Name:
<input type="text" name="last_name" value ="" />
</p>
<p>Age:
<input type="number" name="age" value ="" />
</p>
<p>E-mail:
<input type="text" name="email" value ="" />
</p>
<p>Phone Number:
<input type="number" name="phone_no" value ="" />
</p>
<p>Department:
<input type="text" name="department" value ="" />
</p>
<p>Visible:
<input type="radio" name="visible" value ="0" /> No
<input type="radio" name="visible" value ="1" /> Yes
</p>
<input type="submit" name="submit" value="Edit Entry" />
</form>
要编辑的员工ID:
名字:
姓氏:
年龄:
电邮:
电话号码:
部门:
可见:
不
对
因此,如果有人能指出错误所在,我将不胜感激。谢谢刚刚注意到-更改:
$query .= "visible = '{$visible}', ";
$query .= "WHERE staff_id = '{$staff_id}', ";
致:
i、 e:此处的逗号不正确
//Database Query
$query = "UPDATE subjects SET ";
$query .= "first_name = '{$first_name}', ";
$query .= "last_name = '{$last_name}', ";
$query .= "age = '{$age}', ";
$query .= "email = '{$email}', ";
$query .= "phone_no = '{$phone_no}', ";
$query .= "department = '{$department}', ";
$query .= "visible = '{$visible}', ";
$query .= "WHERE staff_id = '{$staff_id}', ";
$query .= "LIMIT 1";
应该是这样的
//Database Query
$query = "UPDATE subjects SET ";
$query .= "first_name = '$first_name', ";
$query .= "last_name = '$last_name', ";
$query .= "age = '$age', ";
$query .= "email = '$email', ";
$query .= "phone_no = '$phone_no', ";
$query .= "department = '$department', ";
$query .= "visible = '$visible' ";
$query .= "WHERE staff_id = '$staff_id' ";
$query .= "LIMIT 1";
我认为你的疑问是错误的。您有一个“,”在“WHERE”之前,也在“LIMIT”之前。同时删除“,”并重试。错误报告会产生什么后果?(
echo mysqli_error($connect);
)您的where子句中有一个不必要的逗号。@AnthonySterling您应该将其作为答案而不是注释添加。(好眼力:)你是个救生员。我不敢相信事情竟那么简单#facepalm感谢luckypoon和anthony sterlingUpvotes,并感谢他们为我的代表收藏:)很高兴能提供帮助!
//Database Query
$query = "UPDATE subjects SET ";
$query .= "first_name = '$first_name', ";
$query .= "last_name = '$last_name', ";
$query .= "age = '$age', ";
$query .= "email = '$email', ";
$query .= "phone_no = '$phone_no', ";
$query .= "department = '$department', ";
$query .= "visible = '$visible' ";
$query .= "WHERE staff_id = '$staff_id' ";
$query .= "LIMIT 1";