需要有关使用 facebox 更新数据库表上的数据的帮助



祝大家美好的一天。正如标题所说,我在更新数据时需要有关面框的帮助。

这是显示面框的按钮的代码

echo '
        td>
            <a  rel="facebox" href="../admin/c_status.php?id='.$row["userID"].'">Edit</a>
        </td>
    ';

这是Facebox中的代码

 <?php
include("../db/dbCon.php");
//$id = $_GET['id'];
//echo $id;
?>
Status
<form method="post">
    <select name="selActive" id ="selActive">
        <option value="ACTIVE">ACTIVE</option>
        <option value="IN-ACTIVE">IN-ACTIVE</option>
        <option value="GRADUATE">GRADUATE</option>
    </select>
    <br>
    <br>
    <button class="btn btn-success btn-block btn-large" name="saveChangeButton" id ="saveChangeButton">Save Changes</button>
</form>
<?php
    if(isset($_POST['saveChangeButton'])){
        $id = $_GET['id'];
        $status = $_POST['selActive'];
        $cStatus = $conn->prepare("UPDATE useraccount SET status = :status WHERE userID = :userID");
        $cStatus->bindParam(':status', $status);
        $cStatus->bindParam(':userID', $id);
        $cStatus->execute();
    }
?>

我遇到的问题是数据不会通过单击编辑按钮更新,但是当我通过"http://localhost/ict/admin/c_status.php"等地址栏进行编辑时。它会起作用。

您可以隐藏输入类型,只需使其值等于$_GET['id']

   <form method="post">
        <select name="selActive" id ="selActive">
            <option value="ACTIVE">ACTIVE</option>
            <option value="IN-ACTIVE">IN-ACTIVE</option>
            <option value="GRADUATE">GRADUATE</option>
        </select>
        <input type="hidden" name="userid" value="<?php echo $_GET['id'];?>">
        <br>
        <br>
        <button class="btn btn-success btn-block btn-large" name="saveChangeButton" id ="saveChangeButton">Save Changes</button>
    </form>

然后传输您的PHP代码以更新链接下方或上方的用户帐户。当您使用 facebox 时,您作为弹出窗口打开的表单成为此文件的一部分,因此将 php 代码传输到此处更新帐户是合乎逻辑的,因为您没有指定上述表单的 action 属性。

   echo '<td>
            <a  rel="facebox" href="../admin/c_status.php?id='.$row["userID"].'">Edit</a>
        </td>';
    include("../db/dbCon.php");
    if(isset($_POST['saveChangeButton'])){
        $id = $_POST['userid'];
        $status = $_POST['selActive'];
        $cStatus = $conn->prepare("UPDATE useraccount SET status = :status WHERE userID = :userID");
        $cStatus->bindParam(':status', $status);
        $cStatus->bindParam(':userID', $id);
        $cStatus->execute();
    }

希望有帮助

相关内容

  • 没有找到相关文章

最新更新