PHP 中无法提交表单
Form submission is not working in PHP
当我点击“提交”按钮时,没有任何反应,既没有重定向,也没有将 html 表单中的数据发布到数据库。
这是我的日期、时间和地点代码:
<?php
session_start();
$date1="";
$time1="";
$location="";
$db=mysqli_connect("localhost","root","","registration");
if(isset($_POST['submit'])) {
$date1 = mysqli_real_escape_string($db, $_POST['date1']);
$time1 = mysqli_real_escape_string($db, $_POST['time1']);
$location = mysqli_real_escape_string($db, $_POST['location']);
if (!empty($date)) {
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
}
}
?>
在这个 HTML 示例中,按钮名称是提交,当它被点击时 PHP 被设置为 True 并且应该执行代码,但是有一些错误。
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<style>
.form-inline{
text-align: center;
position: absolute;
top: 100px;
left: 500px;
}
.btn{
position: absolute;
top: auto;
left: 500px;
}
</style>
</head>
<body>
<div class="container"
<div class="panel panel-default"
<form class="form-inline" method="post" action="bookcar.php">
<div class="panel-body">
<p><label> Pick a date:</label><input class="form-control" type="date" name="date1" placeholder="Date"></p>
</div>
<div class="panel-body">
<p><label> Pick a Time:</label><input class="form-control" type="time" name="time1" placeholder="Time"></p>
</div>
<div class="panel-body">
<p><label> Pick a Location:</label><input class="form-control" type="text" name="location" placeholder="Location"></p>
</div>
<input type="submit" name="submit" value="submit" class="btn btn-lg btn-primary">
</form>
</div>
</div>
</body>
</html>
session_start();
$db=mysqli_connect("localhost","root","","registration");
if(isset($_POST['date1'])){
$date1 = mysqli_real_escape_string($db, $_POST['date1']);
}
if(isset($_POST['time1'])){
$time1 = mysqli_real_escape_string($db, $_POST['time1']);
}
if(isset($_POST['location'])){
$location = mysqli_real_escape_string($db, $_POST['location']);
}
if(isset($_POST['submit'])){
if (!empty($date1)){
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
exit(); // Quit current page and go to tariff.php
}
}
您的代码中存在小错误。用以下代码替换您的代码。
if (!empty($date1)) {
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
}
您没有在代码中定义 $date 变量,并且在 if 条件下您正在使用 $date 变量来检查它是否为空。
首先确保 bookcar.php 与 html 文件位于同一位置
注意:它们应该在同一个文件夹中。
将您的 bookcar.php 文件更改为此
<?php
session_start();
$date1="";
$time1="";
$location="";
$db=mysqli_connect("localhost","root","","registration");
if(isset($_POST['submit'])) {
$date1 = mysqli_real_escape_string($db, $_POST['date1']);
$time1 = mysqli_real_escape_string($db, $_POST['time1']);
$location = mysqli_real_escape_string($db, $_POST['location']);
if (!empty($date1)) {
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
}
}
?>
当我点击“提交”按钮时,没有任何反应,既没有重定向,也没有将 html 表单中的数据发布到数据库。
这是我的日期、时间和地点代码:
<?php
session_start();
$date1="";
$time1="";
$location="";
$db=mysqli_connect("localhost","root","","registration");
if(isset($_POST['submit'])) {
$date1 = mysqli_real_escape_string($db, $_POST['date1']);
$time1 = mysqli_real_escape_string($db, $_POST['time1']);
$location = mysqli_real_escape_string($db, $_POST['location']);
if (!empty($date)) {
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
}
}
?>
在这个 HTML 示例中,按钮名称是提交,当它被点击时 PHP 被设置为 True 并且应该执行代码,但是有一些错误。
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<style>
.form-inline{
text-align: center;
position: absolute;
top: 100px;
left: 500px;
}
.btn{
position: absolute;
top: auto;
left: 500px;
}
</style>
</head>
<body>
<div class="container"
<div class="panel panel-default"
<form class="form-inline" method="post" action="bookcar.php">
<div class="panel-body">
<p><label> Pick a date:</label><input class="form-control" type="date" name="date1" placeholder="Date"></p>
</div>
<div class="panel-body">
<p><label> Pick a Time:</label><input class="form-control" type="time" name="time1" placeholder="Time"></p>
</div>
<div class="panel-body">
<p><label> Pick a Location:</label><input class="form-control" type="text" name="location" placeholder="Location"></p>
</div>
<input type="submit" name="submit" value="submit" class="btn btn-lg btn-primary">
</form>
</div>
</div>
</body>
</html>
session_start();
$db=mysqli_connect("localhost","root","","registration");
if(isset($_POST['date1'])){
$date1 = mysqli_real_escape_string($db, $_POST['date1']);
}
if(isset($_POST['time1'])){
$time1 = mysqli_real_escape_string($db, $_POST['time1']);
}
if(isset($_POST['location'])){
$location = mysqli_real_escape_string($db, $_POST['location']);
}
if(isset($_POST['submit'])){
if (!empty($date1)){
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
exit(); // Quit current page and go to tariff.php
}
}
您的代码中存在小错误。用以下代码替换您的代码。
if (!empty($date1)) {
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
}
您没有在代码中定义 $date 变量,并且在 if 条件下您正在使用 $date 变量来检查它是否为空。
首先确保 bookcar.php 与 html 文件位于同一位置
注意:它们应该在同一个文件夹中。
将您的 bookcar.php 文件更改为此
<?php
session_start();
$date1="";
$time1="";
$location="";
$db=mysqli_connect("localhost","root","","registration");
if(isset($_POST['submit'])) {
$date1 = mysqli_real_escape_string($db, $_POST['date1']);
$time1 = mysqli_real_escape_string($db, $_POST['time1']);
$location = mysqli_real_escape_string($db, $_POST['location']);
if (!empty($date1)) {
$query = "INSERT INTO cars(date1,time1,location) VALUES('$date1', '$time1', '$location')";
mysqli_query($db, $query);
header('location:tariff.php');
}
}
?>