Javascript 关于重定向通知-PHP/JS

Javascript 关于重定向通知-PHP/JS,javascript,php,jquery,html,css,Javascript,Php,Jquery,Html,Css,当我对页面执行标题重定向或其他重定向方法时,如何使模式框/通知框出现?基本上是一种成功的事情。就像我点击发送一样,它会打开一个页面,然后将它们带回发送按钮所在的页面,并显示一个成功框?有什么想法吗?如果只是登录或类似的东西,您可以将消息存储在正在处理的任何页面上的会话中,然后在页面重定向后,将该会话变量放入常规变量并取消会话设置。然后,您只需将任何内容打印为HTML或Javascript 在您提交到的页面上 //Do your processing $_SESSION['someReturnMe

当我对页面执行标题重定向或其他重定向方法时,如何使模式框/通知框出现?基本上是一种成功的事情。就像我点击发送一样,它会打开一个页面,然后将它们带回发送按钮所在的页面,并显示一个成功框?有什么想法吗?

如果只是登录或类似的东西,您可以将消息存储在正在处理的任何页面上的会话中,然后在页面重定向后,将该会话变量放入常规变量并取消会话设置。然后,您只需将任何内容打印为HTML或Javascript

在您提交到的页面上

//Do your processing
$_SESSION['someReturnMessage'] = 'Success!';
header('Location:./originalpage.php');
关于originalpage.php

//Top of file
if(isset($_SESSION['someReturnMessage'])){
    $message = $_SESSION['someReturnMessage'];
    unset($_SESSION['someReturnMessage'];
}

...further down the page where you want the message to show...
if(isset($message){
    echo $message;
}
您还可以使用AJAX,它可能更适合执行简单任务


不过,使用会话可能不是一个好主意,所以请确保在有更好的解决方案时不要使用会话:

如果需要通过AJAX调用触发PHP页面上的某些代码,则无需直接打开该URL即可。只需将该PHP URL传递给调用,就会执行PHP页面代码,并将响应返回到发起请求的页面。它看起来像这样:

<span id="someButton">Button</span>
<div id="someDivOnYourPage"></div>

<script>
    $('#someButton').click(function(e) {
       $.ajax('page.php', {
          success: function(data) {
             alert(data); //This alerts 'Hello from PHP!'
             $('#someDivOnYourPage').html(data);//this will set 'Hello from PHP!' inside the #someDivOnYourPage div
          },
          error: function() {
             alert('An error occurred');
          }
       });
    });
</script>
按钮
$(“#someButton”)。单击(函数(e){
$.ajax('page.php'{
成功:功能(数据){
警报(数据);//此警报“你好,来自PHP!”
$('#someDivOnYourPage').html(data);//这将在#someDivOnYourPage div内设置'Hello from PHP!'
},
错误:函数(){
警报(“发生错误”);
}
});
});
page.php

<?php
    echo "Hello from PHP!";
?>


可以在这里找到更详细的解释和可下载的示例:。

我认为重定向是不可能的。在不知道您的具体需求以及重定向将实现什么的情况下,我的最佳选择是,您可以尝试通过“发送”按钮所在页面上的iframe加载该页面。或者通过AJAX调用加载URL。在重定向之前,您可以使用AJAX调用或设置会话变量,并在脚本中检查此变量,您正在重定向到它,一旦他们单击它,就字面上说成功,就像我只需要它完成一些PHP一样。我需要它说成功并重新加载页面,这可以做到吗?可能会放一些javascript来启动一些html来显示php何时完成,有人吗?Ron我该怎么做?在我将html转换为php之前,我从来没有见过任何ajax代码。设置cookie并检查JS代码是否存在,如果存在,显示notificationIve在会话之前弄乱了一次,这是为了做最后一次使用之类的事情,它计算时间,一旦它们进入页面,它就会重置时间,但老实说,我对ajax一无所知,$message session return message和unset位,我会用send按钮将消息位放在页面上,然后他们被重定向到的页面中的未设置,然后又被重定向回来,它应该会弹出该消息吗?如果这是完美的,我可以制作一个css模式框,并在上面加上$message变量。请确认这一点。我更新了这个示例,但听起来Slavenko Miljic的示例可能更适合您尝试使用AJAX进行的操作。因此,基本上,如果我加载u提供的代码片段并将其链接到我在其注释中给出的php,它会基本上启动该php并将其打印在同一页面的屏幕上吗?它还会重新加载页面吗?嗯,不完全是这样。您不会像在浏览器中打开PHP页面时所期望的那样在屏幕上看到“test”一词。但是
returnedData
变量的值将是“test”。PHP页面上打印出来的任何内容都会返回到success:AJAX调用的回调函数,AJAX的主要目的是在不刷新整个页面的情况下处理数据。好吧,我试着让这个AJAX加载一个带有php的文件。我将它链接到文件,点击按钮,但它没有做任何事情,并说发生了错误,如返回的数据是关于什么的?我需要在链接的php文件中使用某种js或php吗成功?好吧,我已经编辑了我的答案以提高可读性,这应该会让你知道它是如何工作的。