为什么我的表单数据没有使用input type=“hidden”就不能插入数据库?

evrscar2  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(357)

这是我的数据库连接,窗体页,确认页。我将尝试在不使用任何形式的情况下将数据插入数据库。有人请检查我的密码。
数据库.php

<?php
$connect=mysqli_connect("localhost", "root", "", "test_form");
if(!$connect){
    die('Can not connect:'.mysqli_error());
}
else{
    echo "Connect";
}

?>

索引.php

<?php
include_once 'db.php';
?>

<form action="process.php" method="post">
    <input type="text" name="f-name" placeholder="f-name"><br><br>
    <input type="text" name="l-name" placeholder="l-name"><br><br>
    <input type="text" name="bday" placeholder="bday"><br><br>
    <input type="text" name="school" placeholder="school"><br><br>
    <label><input type="radio" name="gender" value="m">Male</label>
    <label><input type="radio" name="gender" value="f">Female</label><br><br>
    <textarea name="hobby"></textarea><br><br>
    <input type="submit" value="Submit">
</form>

所有数据都显示在process.php页面中,但在此页面中单击save btn它不会插入数据库。
进程.php

<?php
include_once 'db.php';
?>

<?php
$fname=$_POST['f-name'];
$lname=$_POST['l-name'];
$bday=$_POST['bday'];
$school=$_POST['school'];
$gender=$_POST['gender'];
$hobby=$_POST['hobby'];

echo "$fname"."<br>";
echo "$lname"."<br>";
echo "$bday"."<br>";
echo "$school"."<br>";
echo "$gender"."<br>";
echo "$hobby"."<br>";
?>
<button name="Sava" type="button" value="Save">Save</button>
<?php
if(isset($_REQUEST['save'])){
    $sql="INSERT INTO test_table(f_name, l_name, b_day, school, gender, hobby) VALUES ('$fname', '$lname', '$bday', '$school', '$gender', '$hobby')";
}

$query=mysqli_query($connect, $sql);
if($query){
    $msg="Successfully Inserted...";
}else{
    $msg="Not Inserted...";
}
?>
<h1><?php echo $msg; ?></h1>
jfgube3f

jfgube3f1#

您可以通过检查插入 isset($_POST['submit']) 或使用 isset($_POST['what_ever_submit_button']) ```

r7knjye2

r7knjye22#

一旦你点击“保存”按钮,你的页面就不会被重新加载。没有表单或javascript可以做到这一点。
然而,即使您设法重新加载页面,前 $_POST 从您的表单中删除的内容对于此重新加载的页面不再有效。
此外,您还有一个拼写错误:

if(isset($_REQUEST['save'])){ ...

但是

<button name="Sava" type="button" value="Save">Save</button>
``` `save` 应该是 `Sava` 

相关问题