HTML Javascript $ _post响应显示PHP标头位置页面而不是转发

时间:2018-02-27 14:32:23

标签: javascript php html

我有一个html代码,它将输入发送到PHP,其中php重定向到登录页面。

但是当我按照下面的方式发布帖子请求时,它会回复javascript;使用转发index.html代码而不重定向到index.html。

<?php echo $_POST["item"]; header('location: ../index.html'); ?>

PHP代码(当我直接进入php时它工作正常)

  

{{1}}

3 个答案:

答案 0 :(得分:1)

您无法像这样重定向用户。 AJAX次来电只能发送和接收数据。

而是在window.location.href = ''来电的成功功能中使用AJAX重定向用户。

所以而不是

<?php echo $_POST["item"]; header('location: ../index.html'); ?>

<?php echo $_POST["item"]; return '../index.html'; ?>

然后在script中使用该返回值,例如:

function(data, textStatus) {
    alert("Response from server: " + data);
    document.getElementById("item_select").selectedIndex = 0;

    window.location.href = data; 
});

答案 1 :(得分:0)

当您进行ajax调用时,您需要更改javascript端like that上的页面。您可以从php发送0或1以决定是否重定向。

答案 2 :(得分:0)

不使用php标头,而是在PHP标记之外使用<meta>标记

如:

<?php

echo($_POST["item"]);

?>

<meta http-equiv="refresh" content="5;URL='../Index.html'" />

content="之后的5替换为您想要的多少秒,直到重定向执行