簡體   English   中英

在編輯頁面中無法識別$ _GET值

[英]$_GET value is not recognized in edit page

我有一個簡單的CRUD,除更新外,其他所有功能均已正常運行,我似乎無法將$ _GET值從我的href傳遞到我的update.php頁面。 知道我在做什么錯嗎?

更新和刪除href的

<td><a href="update.php?updateid=<?php echo $row['stud_id'];?>">Edit</a></td>
<td><a href="index.php?deleteid=<?php echo $row['stud_id'];?>">Delete</a></td>

update.php

<?php
    include 'db.php';


    if(isset($_GET['updateid'])){
        $id = $_GET['updateid'];
    }

    $select = "SELECT * FROM student WHERE stud_id='".$id."'";
    $user = selectStud($select);

    if(isset($_POST['up-submit'])){
        $upfname = $_POST['up-fname'];
        $upmname = $_POST['up-mname'];
        $uplname = $_POST['up-lname'];
        $upcourse = $_POST['up-course'];

        $query = "UPDATE student SET stud_fname='".$upfname."',stud_mname='".$upmname.
        "',stud_lname='".$uplname."',stud_course='".$upcourse."' WHERE stud_id='".$id."'";

        $update = updateStud($query);

        if($update){
            echo "<script>alert('Update Success!'); window.location('index.php');</script>";
        }else{
            echo "<script>alert('Update Failed :('); window.location('index.php');</script>";
        }
    }


?>

<form method="POST" action="update.php">
    <input type="text" name="up-fname" placeholder="First Name" autocomplete="off"><br />
    <input type="text" name="up-mname" placeholder="Middle Name" autocomplete="off"><br />
    <input type="text" name="up-lname" placeholder="Last Name" autocomplete="off"><br />
    <label for="course">Course: </label>
    <select name="up-course">
        <option name="up-course" value="BSIT">BSIT</option>
        <option name="up-course" value="BSHM">BSHM</option>
        <option name="up-course" value="BSED">BSED</option>
        <option name="up-course" value="BSMT">BSMT</option>
    </select><br />

    <input type="submit" name="up-submit" value="Save Changes">
</form>

db.php中

<?php 

    function getConnection(){

        $conn = new PDO("mysql:host=localhost;dbname=preskilltest","root", "");
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        return $conn;
    }   

    function selectStud($query){
            $pdo = getConnection();

            $stmt = $pdo->query($query);
            return $stmt->fetchAll();
    }

    function insertStud($query){
        $pdo = getConnection();

        $stmt = $pdo->query($query);
        return $stmt;

    }

    function updateStud($query){
        $pdo = getConnection();

        $stmt = $pdo->prepare($query);
        return $stmt->execute();
    }


?>

由於發送POST請求(表單)時無法訪問GET參數(URL),因此需要將GET參數嵌入到表單中。

因此,將以下內容添加到表單中:

<input type="hidden" name="updateid" value="<?php echo $id; ?>>

並且在服務器端的代碼上具有以下內容:

 if(isset($_POST['up-submit'])){
        $id = $_POST['updateid']; //add this.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM