除了字符串$ _GET字符串参数之外还有其他方式返回数据?

时间:2015-04-07 02:03:58

标签: php get header location session-variables

所以当我试图重新填充表单时,除了重定向GET变量之外我还有其他选项吗?

我想我可以创建会话变量并使用它。我是否认为这些只是两种方式?

我现在拥有的是:

if ( count($m) > 0 ) {    
// there is an error in fields filled out so we are sending user back to     form.
$_SESSION["myarray"] = $m;
header("location: ./edit.php?datefield=".$datefield."&text=".$entry."&flag=".$flag);    
}

但这会向用户显示我的变量。我想避免这种情况。

更新 我重新措辞了我的问题,代码更清晰。 我也喜欢发现我的解决方案是使用include('edit-error.php')。这基本上是原始的edit.php,其中一切都被删除了,但生成表单所需的代码,我用所需的变量填充了edit-error.php。我以前从未在我的工具箱中使用过这个,所以我很感谢建议它的用户。

2 个答案:

答案 0 :(得分:1)

您可以考虑用户隐藏信息(不完全,但比GET更强)的一种方法是在您的信息中创建一个JSON并向您的页面发送POST请求。

就个人而言,我仍然更喜欢会话,但还有其他方法。

答案 1 :(得分:0)

我使用的解决方案是我的用户pala_,所以感谢pala_我投了你的评论。

我使用了include('edit-error.php')。这基本上是原始的edit.php,其中一切都被删除了,但生成表单所需的代码,我用所需的变量填充了edit-error.php的表单。我以前从来没有在我的工具箱中这样做,所以我很感激建议它的pala_。

这允许我进行服务器端验证并再次使用用户输入重新显示表单,以便他们可以重新提交。我使用标题(位置)与参数提交作为GET我不想要那样。使用include()对我来说是一个完美的解决方案。