处理更新时,变量会丢失ID

时间:2017-07-01 13:41:49

标签: php mysql

我正在使用堆栈溢出中的归档帖子创建一种更新方式。

点击按钮 - > edi.php(表单在这里,id在这里检索正常) - >点击更新过程更新(update.php),但ID不会出现在这里,所以我得到一个SQL错误。

我会在下面发布代码,如果有人有任何建议,请我爱他们。

HTML

这包含触发edit.php页面(编辑表单的地方)的按钮

    .grep({ .value.HOW.^name eq 'Perl6::Metamodel::ClassHOW' })

EDIT.PHP

在这里,您将看到一个表单,该表单会自动填充您单击了ID的行中的数据。

echo "<td><a class='btn btn-primary' href=\"EditJob.php?JobId=".$row['JobId']."\">Edit</a></td>";

接下来是UPDATE.PHP 此过程将信息输入到edit.php中的from并更新数据库

<?php
    include '../Database/Dbconnect.php';


    echo '<h1>Edit Your Job</h1>';
    $JobId = (int)$_GET['JobId'];
    echo $JobId;

    $query = mysql_query("SELECT * FROM Jobs WHERE JobId = '$JobId'")
    or die(mysql_error());



    if(mysql_num_rows($query)>=1){
        while($row = mysql_fetch_array($query)){
            echo "";

            $JobSubject = $row['JobSubject'];
            $JobCompany = $row['JobCompany'];
            $JobSalary = $row['JobSalary'];
            $JobLocation = $row['JobLocation'];
            $JobDate = $row['JobDate'];
        };
?>

<form action="UpdateJob.php" method="post">
    <input type="hidden" name="ID" value="<?=$JobId;?>">
    Position: <input type="text" name="uJobSubject" value="<?=$JobSubject;?>"><br>
    Compnay: <input type="text" name="uJobCompany" value="<?=$JobCompany?>"><br>
    Salary: <input type="text" name="uJobSalary" value="<?=$JobSalary?>"><br>
    Location: <input type="text" name="uJobLocation" value="<?=$JobLocation?>"><br>
    <input type="Submit">
</form>
<?php
}else{
    echo 'No entry found. <a href="javascript:history.back()">Go back</a>';
}
?>

非常感谢。

1 个答案:

答案 0 :(得分:0)

因为您在表单中将名称ID提供给表单字段,但是您尝试使用$_POST["JobId"]来获取其值。请改用$_POST["ID"]。或者将隐藏的表单字段重命名为JobId <input type="hidden" name="JobId" value="<?=$JobId;?>">