我有这段代码可以很好地工作,只是我似乎不能让UNSET命令和header命令工作。
我试着在我的代码中移动它们,但是没有成功。语法不可能是错误的(我认为)命令的位置有什么错误吗?
该函数运行良好,我收到成功消息,但没有重定向。我在一篇教程中看到有人使用了"../html/Search.php";但是当我尝试这样做时,搜索页面出现在页面的中间。
下面是我的代码:
function UpdateCompanies($connection, $tax, $address, $city, $country, $status, $website, $company_foundation ) {
$n = mysqli_real_escape_string($connection, $name);
$t = mysqli_real_escape_string($connection, $tax);
$a = mysqli_real_escape_string($connection, $address);
$c = mysqli_real_escape_string($connection, $city);
$ct= mysqli_real_escape_string($connection, $country);
$s= mysqli_real_escape_string($connection, $status);
$w= mysqli_real_escape_string($connection, $website);
$f= mysqli_real_escape_string($connection, $company_foundation);
$e= mysqli_real_escape_string($connection, $company_employees);
$query = "UPDATE `seta`.`companies` SET `tax_number`='$t',`street`='$a', `city`='$c', `country_id`='$ct',`status`='$s',`website`='$w',`foundation_year`='$f', `employees`='$e' WHERE `company_id`='".$_SESSION["company_mod"]."' ;";
if ($connection->query($query) === TRUE) {
echo "New record Updated successfully.";
header('Location: Search.php');
unset($_SESSION['company_mod']);
} else {
echo "Error: " . $query . "<br>" . $connection->error;
}
}
请注意,我承诺一旦我让这部分代码正常工作,我就会清理更多的变量。
发布于 2018-06-02 20:28:35
你不能在echo
命令后发送报头!也许你可以使用下面的代码
header( "Refresh:5; url=http://www.example.com/page2.php", true, 303);
echo "New record Updated successfully.";
unset($_SESSION['company_mod']);
另外,我建议您删除MySQL的错误消息。因为这可能会违反安全规定
发布于 2018-06-02 20:48:26
您可以尝试使用此代码吗?:
function UpdateCompanies($connection, $tax, $address, $city, $country, $status, $website, $company_foundation ) {
$n = mysqli_real_escape_string($connection, $name);
$t = mysqli_real_escape_string($connection, $tax);
$a = mysqli_real_escape_string($connection, $address);
$c = mysqli_real_escape_string($connection, $city);
$ct= mysqli_real_escape_string($connection, $country);
$s= mysqli_real_escape_string($connection, $status);
$w= mysqli_real_escape_string($connection, $website);
$f= mysqli_real_escape_string($connection, $company_foundation);
$e= mysqli_real_escape_string($connection, $company_employees);
$query = "UPDATE `seta`.`companies` SET `tax_number`='$t',`street`='$a', `city`='$c', `country_id`='$ct',`status`='$s',`website`='$w',`foundation_year`='$f', `employees`='$e' WHERE `company_id`='".$_SESSION["company_mod"]."' ;";
if ($connection->query($query) === TRUE) {
echo "New record Updated successfully.";
unset($_SESSION['company_mod']);
echo "<script type='text/javascript'>window.location.replace='http://example.com/';</script>";
exit;
} else {
echo "Error: " . $query . "<br>" . $connection->error;
}
}
https://stackoverflow.com/questions/50656829
复制相似问题