php post无法使用获取值

时间:2017-01-09 07:50:05

标签: php html

我只是尝试向用户提供编辑选项,而页面由他的ID获取,但在使用提交按钮更新时似乎无效。这是我的代码。

 <?php
 session_start();
 include 'db.php';
 if(isset($_GET['id'])){

    $stid = $_GET['id'];

    $query = mysqli_query($con, "SELECT * FROM socio WHERE id = '$stid'") or die (mysqli_error());

    $result = mysqli_num_rows($query);

    if($result == 0 || $result == NULL){
        echo '<div class="alert alert-danger alert-dismissible fade in"><a class="close" data-dismiss="alert" aria-label="close">&times;</a><strong><center>Sorry, Error while updating data!</center></strong></div>';
    }else {
    while($row = mysqli_fetch_array($query)){
    $id = $row['id'];
    $name = $row['name'];
    $fname = $row['fname'];
    $age = $row['age'];
    $dob = $row['dob'];
    $gender = $row['gender'];
    $year = $row['year'];
    $stGr = $row['stgroup'];
    $add = $row['stadd'];
    $photo = $row['photo'];
?>

使用上面的php代码,我带来了会员ID和其他详细信息,这些信息位于

之下
<?php echo '<center><a href="Profile-Edit.php?id='.$id.'/name='.$name.'" class="btn btn-primary" role="button">Edit/Update</a>&nbsp;&nbsp;&nbsp;<a href="Profile-Edit.php?id='.$id.'/name='.$name.'" class="btn btn-primary" role="button">Delete</a></center>';?>

这是我的html和php代码,用于提供用户编辑选项

<form enctype="multipart/form-data" method="POST">
    <label>Name of the Student</label>
    <input type="text" name="stName" class="form-control" value="<?php echo $name; ?>">
    <label>Father/Mother/Guardian of the Student</label>
    <input type="text" name="stFnam" class="form-control" value="<?php echo $fname; ?>">
    <label>Date of Birth the Student</label>
    <input type="text" name="stDob" value="<?php echo $dob; ?>" class="form-control">
    <label>Age of the Student</label>
    <input type="text" name="stAge" value="<?php echo $age; ?>" class="form-control">
    <label>Gender of the Student&nbsp&nbsp&nbsp</label>
    <input type="radio" name="stGen" id="inlineRadio1" value="Male" <?php echo ($gender == 'Male')? 'checked':''; ?>/> &nbspMale&nbsp
    <input type="radio" name="stGen" id="inlineRadio2" value="Female" <?php echo ($gender == 'Female')? 'checked':''; ?>/> &nbspFemale&nbsp
    <label>Academic Year</label>
    <select name="stYear" class="form-control">
        <option value="2014-15" <?php echo ($year == '2014-15')? 'selected':''; ?>>2014-15</option>
        <option value="2015-16" <?php echo ($year == '2015-16')? 'selected':''; ?>>2015-16</option>
        <option value="2016-17" <?php echo ($year == '2016-17')? 'selected':''; ?>>2016-17</option>
    </select>
    <label>Academic Group</label>
    <select name="stGroup" class="form-control">
        <option value="Pre-Primary" <?php echo ($stGr == 'Pre-Primary')? 'selected':''; ?>>Pre-Primary</option>
        <option value="Primary" <?php echo ($stGr == 'Primary')? 'selected':''; ?>>Primary</option>
        <option value="Secondary" <?php echo ($stGr == 'Secondary')? 'selected':''; ?>>Secondary</option>
        <option value="Pre-Vocational" <?php echo ($stGr == 'Pre-Vocational')? 'selected':''; ?>>Pre-Vocational</option>
        <option value="Vocational" <?php echo ($stGr == 'Vocational')? 'selected':''; ?>>Vocational</option>
    </select>
    <label>Address of the Student</label>
    <textarea name="stAdd" class="form-control" rows="6"><?php echo $add; ?></textarea>
    <label>
        Photo of the Student&nbsp&nbsp&nbsp&nbsp&nbsp
        <label class="btn btn-default btn-file">
            <input type="file" name="photo">
        </label><?php echo $photo; ?>
    </label>
    <button type="submit" name="submit" class="btn btn-success">Submit</button>
</form>

这里的Agin是在同一页面中用于上述编辑选项的php代码

<?php
include 'db.php';
if(isset($_POST['submit'])){

    $stid = $_GET['id'];

    $target = "images/";
    $target = $target . basename( $_FILES['photo']['name']);

    $stnam = $_POST['stName'];
    $stfnam = $_POST['stFnam'];
    $stage = $_POST['stAge'];
    $stdob = $_POST['stDob'];
    $stgen = $_POST['stGen'];
    $styer = $_POST['stYear'];
    $stGr = $_POST['stGroup'];
    $stadd = $_POST['stAdd'];
    $pic = $_FILES['photo']['name'];

    $allowed =  array('gif','png' ,'jpg', 'pdf');
    $ext = pathinfo($pic, PATHINFO_EXTENSION);

    if(!in_array($ext,$allowed)) {
        $picmess = "Upload PDF/png/jpeg format only";
        echo "<script type='text/javascript'>alert('$picmess');</script>";

    }else{

        if(move_uploaded_file($_FILES['photo']['tmp_name'], $target))
        {

            $sql = mysqli_query($con, "UPDATE socio SET (name = '$stnam', fname = '$stfnam', age = '$stage', dob = '$stdob', gender = '$stgen', year = '$styer', stgroup = '$stGr', stadd = '$stadd', photo = '$pic' WHERE id = '$stid')");

            $sucmess = "Data Uploaded Successfully";
            echo '<div class="alert alert-info alert-dismissible fade in"><a class="close" data-dismiss="alert" aria-label="close">&times;</a><strong><center>'.$sucmess.'</center></strong></div>';
        }
        else{

            $errmess = "Data Not Uploaded Successfully";
            echo '<div class="alert alert-info alert-dismissible fade in"><a class="close" data-dismiss="alert" aria-label="close">&times;</a><strong><center>'.$errmess.'</center></strong></div>';

        }

    }
    mysqli_close($con);
}
?>

你有男人的建议吗?

2 个答案:

答案 0 :(得分:0)

请更改以下链接(更改&#39; /&#39;至&#39;&amp;&#39;),

<?php echo '<center><a href="Profile-Edit.php?id='.$id.'&name='.$name.'" class="btn btn-primary" role="button">Edit/Update</a>&nbsp;&nbsp;&nbsp;<a href="Profile-Edit.php?id='.$id.'&name='.$name.'" class="btn btn-primary" role="button">Delete</a></center>';?>

还请更改以下查询(删除查询中的括号):

$sql = mysqli_query($con, "UPDATE socio SET name = '$stnam', fname = '$stfnam', age = '$stage', dob = '$stdob', gender = '$stgen', year = '$styer', stgroup = '$stGr', stadd = '$stadd', photo = '$pic' WHERE id = '$stid'");

答案 1 :(得分:0)

首先在隐藏的输入字段中发送您的ID,如下所示:

<form enctype="multipart/form-data" method="POST">
                        <input type="hidden" name="id" class="form-control" value="<?php echo $id; ?>">
                        <label>Name of the Student</label>
                        <input type="text" name="stName" class="form-control" value="<?php echo $name; ?>">
                        <label>Father/Mother/Guardian of the Student</label>
                        <input type="text" name="stFnam" class="form-control" value="<?php echo $fname; ?>">
                        <label>Date of Birth the Student</label>
                        <input type="text" name="stDob" value="<?php echo $dob; ?>" class="form-control">
                        <label>Age of the Student</label>
                        <input type="text" name="stAge" value="<?php echo $age; ?>" class="form-control">
                        <label>Gender of the Student&nbsp&nbsp&nbsp</label>
                          <input type="radio" name="stGen" id="inlineRadio1" value="Male" <?php echo ($gender == 'Male')? 'checked':''; ?>/> &nbspMale&nbsp
                          <input type="radio" name="stGen" id="inlineRadio2" value="Female" <?php echo ($gender == 'Female')? 'checked':''; ?>/> &nbspFemale&nbsp
                        <label>Academic Year</label>
                            <select name="stYear" class="form-control">
                                <option value="2014-15" <?php echo ($year == '2014-15')? 'selected':''; ?>>2014-15</option>
                                <option value="2015-16" <?php echo ($year == '2015-16')? 'selected':''; ?>>2015-16</option>
                                <option value="2016-17" <?php echo ($year == '2016-17')? 'selected':''; ?>>2016-17</option></select>
                        <label>Academic Group</label>
                            <select name="stGroup" class="form-control">
                                <option value="Pre-Primary" <?php echo ($stGr == 'Pre-Primary')? 'selected':''; ?>>Pre-Primary</option>
                                <option value="Primary" <?php echo ($stGr == 'Primary')? 'selected':''; ?>>Primary</option>
                                <option value="Secondary" <?php echo ($stGr == 'Secondary')? 'selected':''; ?>>Secondary</option>
                                <option value="Pre-Vocational" <?php echo ($stGr == 'Pre-Vocational')? 'selected':''; ?>>Pre-Vocational</option>
                                <option value="Vocational" <?php echo ($stGr == 'Vocational')? 'selected':''; ?>>Vocational</option>
                            </select>
                        <label>Address of the Student</label>
                        <textarea name="stAdd" class="form-control" rows="6" ><?php echo $add; ?></textarea>
                        <label>Photo of the Student&nbsp&nbsp&nbsp&nbsp&nbsp
                        <label class="btn btn-default btn-file"><input type="file" name="photo">
                        </label><?php echo $photo; ?></label>
                    <button type="submit" name="submit" class="btn btn-success" >Submit</button></form>

然后使用$ _POST来访问id,如:

 include 'db.php';
            if(isset($_POST['submit'])){

                $stid = $_POST['id'];

                $target = "images/";
                $target = $target . basename( $_FILES['photo']['name']);

                $stnam = $_POST['stName'];
                $stfnam = $_POST['stFnam'];
                $stage = $_POST['stAge'];
                $stdob = $_POST['stDob'];
                $stgen = $_POST['stGen'];
                $styer = $_POST['stYear'];
                $stGr = $_POST['stGroup'];
                $stadd = $_POST['stAdd'];
                $pic = $_FILES['photo']['name'];

                $allowed =  array('gif','png' ,'jpg', 'pdf');
                $ext = pathinfo($pic, PATHINFO_EXTENSION);

                if(!in_array($ext,$allowed)) {
                $picmess = "Upload PDF/png/jpeg format only";
                echo "<script type='text/javascript'>alert('$picmess');</script>";

                }else{

                if(move_uploaded_file($_FILES['photo']['tmp_name'], $target))
                {

                $sql = mysqli_query($con, "UPDATE socio SET (name = '$stnam', fname = '$stfnam', age = '$stage', dob = '$stdob', gender = '$stgen', year = '$styer', stgroup = '$stGr', stadd = '$stadd', photo = '$pic' WHERE id = '$stid')");

                $sucmess = "Data Uploaded Successfully";
                echo '<div class="alert alert-info alert-dismissible fade in"><a class="close" data-dismiss="alert" aria-label="close">&times;</a><strong><center>'.$sucmess.'</center></strong></div>';
                }
                else{

                $errmess = "Data Not Uploaded Successfully";
                echo '<div class="alert alert-info alert-dismissible fade in"><a class="close" data-dismiss="alert" aria-label="close">&times;</a><strong><center>'.$errmess.'</center></strong></div>';

                }

                }
                mysqli_close($con); 
            }
            ?>