如何使用没有表单的POST将变量从PHP脚本发送到另一个脚本?

时间:2011-06-07 18:59:29

标签: php

我正在尝试编写我的第一个PHP脚本(希望如此)。我想将用户输入从HTML页面内的表单发送到PHP脚本并在脚本内验证它们。然后,如果输入数据有任何问题,请返回第一页并突出显示错误的字段。否则转到另一页(类似成功的事情)。

如何在不使用表单的情况下将第二个脚本的反馈发送到第一页?

4 个答案:

答案 0 :(得分:3)

简而言之,你会有这样的事情:

<?php

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
   $errors = array();

   $name = $_POST['name'];
   if ($name !== 'Fred') {
      $errors[] = 'Please enter "Fred"';
   }

   ... validate more fields ...

   if (count($errors) == 0) {
     ... form is ok ...
     header('Location: everything_is_ok.php');
     exit();
   }
}

?>

<form action="<?php echo $_SERVER['SCRIPT_NAME'] ?>" method="POST">
Enter 'Fred': <input type="text" name="name" value="<?php echo htmlspecialchars($name) ?>" /><br />
<input type="submit" />
</form>

基本上:让表单页面提交回自己。如果一切正常,请将用户重定向到另一个页面。否则重新显示表单。

答案 1 :(得分:2)

重新加载第一页并在会话中发送反馈,例如。如果存在session ['errors'],请回显它们。请注意,无论如何,你必须在你的html页面中包含一些php标签。

答案 2 :(得分:2)

只需将表单POST发送给自己,然后在PHP中检查值,如果它们有效,请不要显示表单并执行提交代码。如果它们无效,则显示包含值和错误的表单。

答案 3 :(得分:0)

使用会话...这是一个帮助您入门的链接:http://www.tizag.com/phpT/phpsessions.php