我的问题很简单。但我太纠结于此了。问题是,一旦我点击提交按钮,该页面应该重定向到其他页面。请告诉我我做错了什么?因为我什么都试过了。
代码:
Update-docket.php
<?php
//error_reporting(0);
$link = mysqli_connect("localhost", "home_db", "root", "");
// Check connection
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
// Escape user inputs for security
$sql = 'SELECT * FROM prod_details';
$result = mysqli_query($link,$sql);
while ($row = mysqli_fetch_array($result))
{
$Quantity1 = $_POST['p_'.$row['id']. ''];
$id = $row['id'];
$store = $row['rstore'];
// echo $store;
foreach ($_POST as $key => $value)
{}
if(!empty($Quantity1)) {
$query="update prod_details SET rdocket='$Quantity1' WHERE id='$id'";
if(mysqli_query($link, $query)) {
header('Location: /docket-details.php');
exit();
} else {
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
}
}docket-details.php
<form class="form-horizontal" action="update-docket.php" method="post" name="myform" autocomplete="off">
<button type='submit' name='submit' class='btn c-theme-btn c-btn-square c-btn-uppercase c-btn-bold'>Submit</button>请帮帮我!
发布于 2018-07-05 18:05:41
您的Location线路不正确,请使用以下命令重定向:
header('Location: /url');https://secure.php.net/manual/en/function.header.php
更新
我认为你的if声明没有得到满足。再次尝试启用错误日志记录,并在每个条件部分中使用var_dumping,以查看真正的问题所在。现在,您已经更新了代码以使用header,理论上它应该可以工作。但我猜测$_POST不会返回您想要/期望的内容。
发布于 2018-07-05 18:07:36
已编辑!
试试这个:
header('Location: /docket-details.php');
// i'm sorry, forgot to add exit
exit();当然,您可以填写完整的url,如果您参考。
重要提示:不应在此行之前进行任何输出,因为它将生成标题。在发送响应头之前没有一个echo!
发布于 2018-07-05 18:10:09
应该是这样的:
if(!empty($Quantity1)) {
$query="update prod_details SET rdocket='$Quantity1' WHERE id='$id'";
$res = mysqli_query($link, $query);
if($res) {
header('Location: /docket-details.php', true, '200');
} else {
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
}https://stackoverflow.com/questions/51188404
复制相似问题