php标头不适用于ajax。使用js重新加载的问题

时间:2014-07-27 19:45:50

标签: javascript php ajax header reload

所以我将post数据的ajax请求用于php脚本。 在某些时候,PHP脚本重定向。

至少它应该是。但它会做各种奇怪的事情

header('Location: index.php');

它获取index.php中的所有内容并将其放入回调区域。

所以我决定使用javascript重新加载页面。这就是我得到的

$.post('booking.php',
{
    firstname : $('#firstname').val().trim(),
    lastname : $('#lastname').val().trim()
},function(data){   
        window.location = 'index.php';
        $('.notification-booking').html(data);
});

问题是。有一些反馈意见。我在那里显示反馈片刻,然后重新加载页面。如果用户还没有读完文本,那么哪些是麻烦的。 所以我想做以下几点。

  1. 重新加载页面,
  2. 显示反馈
  3. 吃甜甜圈,快乐。
  4. 完全按照这个顺序  我没有。 3受控制。帮助排名第一

1 个答案:

答案 0 :(得分:0)

您可以通过URL通过JavaScript将变量传递到第二页,然后通过PHP检索它们。这样,只要用户需要阅读信息,您就可以显示信息。

首页上的Javascript

window.location = 'second.php?firstVar=' + firstname + '&secondVar=' + lastname + ';

然后在second.php中,您可以检索这些变量的值,并根据需要显示它们。

<?php
$first = $_GET['firstVar'];
$last  = $_GET['secondVar'];
?>

我建议您通过Javascript而不是PHP标头重定向用户,因为according to this thread它很容易搞砸PHP标头。我假设这就是为什么你会变得奇怪的行为。