如何从PHP脚本返回成功信息

时间:2013-09-21 10:38:53

标签: php

我有一个页面将表单发送到PHP脚本。我想以某种方式在脚本执行时将成功信息返回到页面。现在我不能使用jQuery AJAX请求,因为我的表单将文件提交到服务器,我想避免在可能的情况下将get参数附加到url。

我试过这样做:

$_REQUEST['status'] = 'File uploaded successfully';

但是,当我检查是否在我的页面上设置了这个变量时,我得到了错误。

这样做的最佳做法是什么?

3 个答案:

答案 0 :(得分:2)

首先,你说I would like to avoid appending get parameters to the url。如果这是您唯一关心的问题,您可以使用jQuery.post(),不使用任何查询参数。

但是如果你正确地解释了它,它只是发布到普通php脚本的普通表单。不是吗?在这种情况下,只需回显成功/失败信息:

$succes = do_something($_POST['my_posted_var']);
if($success) {
    echo 'Yeah! It worked!';
} else {
    echo 'This is disappointing...';
}

或将用户重定向到感谢页面。

header('Location: '. thanks.php);

编辑好了(见评论)。在这种情况下,使用会话。您可以在请求之间传输数据,而无需使用某种参数进行操作。请阅读this。总结一下,你可以做类似下面的事情:

=execution_script.php=
session_start();
// do your stuff
$_SESSION['status'] = 'succes'; // or failure for that matter
header('Location: status_view.php');

=status_view.php=
session_start();
echo 'Status: ' . $_SESSION['status']; 

答案 1 :(得分:0)

1)。你可以重写网址 比如“index.php?msg = $ success” 在您的首页通过$ _REQUEST ['msg']来回复此消息。

2)。您可以使用大多数MVC框架正在使用的会话Flash消息尝试谷歌它,它将获得有关它的更多信息

答案 2 :(得分:0)

你可以这样做......试试吧

header('Location: welcome.php?status=File Uploaded Successfully..!!');.

然后使用

显示成功消息
<?php if(isset($_REQUEST['status'])) echo $_REQUEST['status'];
 header('Location: welcome.php');. ?>

或者您可以简单地执行此操作

header('Location: welcome.php?status=1');.
<?php if(isset($_REQUEST['status']=='1')) echo 'File Uploaded Successfully..!!';