Php表单数据赢得';t在我的PhpMyAdmin数据库中插入数据
我一直在试图解决这个问题,但我看不到错误。请帮帮我。这是到目前为止我的代码。我该怎么办?我检查了每一个细节,但找不到。当我单击按钮时,没有错误,它将返回到reservation.php页面。我的数据库中还有一个“res_id”,它是自动递增的。如何将其包含在insert语句中 Php代码:Php表单数据赢得';t在我的PhpMyAdmin数据库中插入数据,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,我一直在试图解决这个问题,但我看不到错误。请帮帮我。这是到目前为止我的代码。我该怎么办?我检查了每一个细节,但找不到。当我单击按钮时,没有错误,它将返回到reservation.php页面。我的数据库中还有一个“res_id”,它是自动递增的。如何将其包含在insert语句中 Php代码: <? $conn = mysqli_connect("localhost","root","") or die(mysql_error()); mysqli_select_db("hoteldb",$
<?
$conn = mysqli_connect("localhost","root","") or die(mysql_error());
mysqli_select_db("hoteldb",$hoteldb) or die("no db found");
if(isset($_POST['confirm'])){
$fname= $_POST['fname'];
$lname= $_POST['lname'];
$contact= $_POST['contact'];
$username= $_POST['username'];
$password= $_POST['password'];
$email= $_POST['email'];
$address= $_POST['address'];
$checkin= $_POST['checkin'];
$checkout= $_POST['checkout'];
$query="INSERT INTO reservation(fname,lname,contact,username,password,email,address,checkin,checkout)
VALUES ('$fname','$lname','$contact','$username','$password','$email','$address','$checkin','$checkout')";
mysql_query($query,$conn);
mysqli_close($conn);
}
?>
尝试获取错误描述:(在$query的定义后添加)
试着打开PHP错误,不要只得到一个空页面
这应该是
mysqli_query($conn, $query);
我的数据库中还有一个“res_id”,它是自动递增的。如何将其包含在insert语句中
因为它被设置为“自动递增”,所以你不需要对它做任何事情
另外,请尝试查看,它更安全,使用的代码更少。Mysqli\u select\u db语句中的错误。
你需要更正你的陈述
mysqli_select_db("hoteldb",$hoteldb) or die("no db found");
相反
mysqli_select_db($conn,"hoteldb") or die("no db found");
当您连接到使用mysql的数据库时,在此之后尝试使用mysqli_查询插入数据,这是不可能的。你必须更换
mysql_query($query,$conn);
与
因此,您的php将如下所示
<?
$conn = mysqli_connect("localhost","root","") or die(mysql_error());
mysqli_select_db("hoteldb",$hoteldb) or die("no db found");
if(isset($_POST['confirm'])){
$fname= $_POST['fname'];
$lname= $_POST['lname'];
$contact= $_POST['contact'];
$username= $_POST['username'];
$password= $_POST['password'];
$email= $_POST['email'];
$address= $_POST['address'];
$checkin= $_POST['checkin'];
$checkout= $_POST['checkout'];
$query="INSERT INTO reservation(fname,lname,contact,username,password,email,address,checkin,checkout)
VALUES ('$fname','$lname','$contact','$username','$password','$email','$address','$checkin','$checkout')";
mysqli_query($conn, $query);
mysqli_close($conn);
}
?>
不要将mysql\u*
与mysqli\u*
混用。您需要仔细阅读sql注入。@jeroen在我的mysql_查询中添加了字母“i”,但它仍然没有向数据库插入数据。解决此问题后,我将编辑sql注入的代码。谢谢。如果任何值中有一个”
,查询将中断,除了SQLi问题,为什么不调试它呢?InterWeb上有很多教程。你应该从手册开始。你开始的时候就大错特错了。在开始编码之前,您应该学习一些东西。这是一个很好的起点:
mysqli_select_db($conn,"hoteldb") or die("no db found");
mysql_query($query,$conn);
mysqli_query($conn, $query);
<?
$conn = mysqli_connect("localhost","root","") or die(mysql_error());
mysqli_select_db("hoteldb",$hoteldb) or die("no db found");
if(isset($_POST['confirm'])){
$fname= $_POST['fname'];
$lname= $_POST['lname'];
$contact= $_POST['contact'];
$username= $_POST['username'];
$password= $_POST['password'];
$email= $_POST['email'];
$address= $_POST['address'];
$checkin= $_POST['checkin'];
$checkout= $_POST['checkout'];
$query="INSERT INTO reservation(fname,lname,contact,username,password,email,address,checkin,checkout)
VALUES ('$fname','$lname','$contact','$username','$password','$email','$address','$checkin','$checkout')";
mysqli_query($conn, $query);
mysqli_close($conn);
}
?>