Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
插入数据后的PHP重定向_Php_Sql - Fatal编程技术网

插入数据后的PHP重定向

插入数据后的PHP重定向,php,sql,Php,Sql,我在插入数据后重定向到另一个页面时遇到问题 我正在使用localhost,在插入数据后,我试图重定向到另一个页面(url) 有了下面的代码,我试着把谷歌url放在页面上,它不会重定向,在提交后会留在页面上 任何帮助都将不胜感激 谢谢 如果在标题()之前回显或打印内容,则不会重定向。因此,您需要删除头()前面的回显。在标题()之后使用退出()也是非常安全的 如果您的查询正常,并且数据插入正确但未重定向,则可以使用Javascript重定向 /** * Template Name: Bookin

我在插入数据后重定向到另一个页面时遇到问题

我正在使用localhost,在插入数据后,我试图重定向到另一个页面(url)

有了下面的代码,我试着把谷歌url放在页面上,它不会重定向,在提交后会留在页面上

任何帮助都将不胜感激

谢谢


如果在
标题()之前回显或打印内容,则不会重定向。因此,您需要删除
头()前面的
回显
。在
标题()之后使用
退出()
也是非常安全的

如果您的查询正常,并且数据插入正确但未重定向,则可以使用
Javascript
重定向

/**
 * Template Name: Booking Template
 */
get_header();

require_once("db.php");

if(count($_POST)>0) {
$sql = "INSERT INTO bookings (reason, doctor, bookingDate, bookingTime, patientName, gender, phone, email) VALUES ('" . $_POST["reason"] . "','" . $_POST["doctor"] . "','" . $_POST["bookingDate"] . "','" . $_POST["bookingTime"] . "','" . $_POST["patientName"] . "','" . $_POST["gender"] . "','" . $_POST["phone"] . "','" . $_POST["email"] . "')";

  if(mysqli_query($link, $sql)){
    //echo "Records inserted successfully."; remove or comment this line
    header("location: http://www.google.com");
    echo "<script>window.location = 'http://www.google.com';</script>";
    exit(); // use exit. It's a good practice
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
}
mysqli_close($link);
/**
*模板名称:预订模板
*/
获取_头();
需要_一次(“db.php”);
如果(计数($_POST)>0){
$sql=“在预订(原因、医生、预订日期、预订时间、患者姓名、性别、电话、电子邮件)中插入值(“$”POST[“原因”]、“$”POST[“医生”]、“$”POST[“预订日期”]、“$”POST[“预订时间”]、“$”POST[“患者姓名”]、“$”POST[“性别”、“$”POST[“性别”、“$”POST[“电话”、“)”;
if(mysqli_查询($link,$sql)){
//回显“已成功插入记录”。删除或注释此行
标题(“位置:http://www.google.com");
回显“window.location”http://www.google.com';";
exit();//使用exit。这是一种很好的做法
}否则{
echo“错误:无法执行$sql。”.mysqli_错误($link);
}
}
mysqli_close($link);

确保
get_header()
函数中没有错误,并仔细检查代码中是否存在任何可能的错误。仅当您现在需要解决它时,才使用第二种方法。

addexit();在标题后面。示例-标题(“位置:);退出;请阅读有关SQL注入、PDO和bind参数以及正确的数据验证的内容,因为上面的代码会受到各种攻击,为了回答您的问题,您的重定向不会发生,因为您的插入FAILED@BobbyAxe我可以用上面的代码在我的数据库中插入数据
在脚本的最顶端
退出
很重要,因为重定向不会结束当前代码“范围”的执行,所以在代码中它可能仍然执行
mysqli\u close($link)
即使您在调用header之前就调用了它。在许多情况下,这可能会产生不希望的结果。因此+1用于包含该消息和关于输出的警告。PHP将在执行结束时关闭连接,因此在大多数情况下,您无需调用
mysqli\u close
。有一次,我在带有没有出口,它做了各种奇怪的事情…哈哈。那是2009年的一些旧PHP4代码…哈哈…这太疯狂了。如果使用输出缓冲
ob\u start
和其他
ob\u*
函数,你可以在头调用之前使用输出。但是很难跟踪它(输出缓冲)AJAX的功能也很好。@Mahbubul Islam我仍在尝试不重定向到另一个页面欢迎:)@Red如果你愿意,你可以接受并向上投票我的答案。
/**
 * Template Name: Booking Template
 */
get_header();

require_once("db.php");

if(count($_POST)>0) {
$sql = "INSERT INTO bookings (reason, doctor, bookingDate, bookingTime, patientName, gender, phone, email) VALUES ('" . $_POST["reason"] . "','" . $_POST["doctor"] . "','" . $_POST["bookingDate"] . "','" . $_POST["bookingTime"] . "','" . $_POST["patientName"] . "','" . $_POST["gender"] . "','" . $_POST["phone"] . "','" . $_POST["email"] . "')";

  if(mysqli_query($link, $sql)){
    //echo "Records inserted successfully."; remove or comment this line
    header("location: http://www.google.com");
    echo "<script>window.location = 'http://www.google.com';</script>";
    exit(); // use exit. It's a good practice
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
}
mysqli_close($link);