无法使用Php编辑mysql主题

无法使用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"]);

因此,我正在创建这个CMS,作为我论文的一部分,用于教师信息。当我需要创建/删除主题时,我的代码似乎工作正常。然而,当我尝试更新它们时,它告诉我编辑过程失败了。不知道到底哪里出了问题

下面是我的主题问题。我是php新手,所以如果我犯了一些明显的错误,请容忍我

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 &nbsp;
                <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";