繁体   English   中英

如何在没有 forms 的情况下使用 POST 将变量从 PHP 脚本发送到另一个脚本?

[英]How to send variables from a PHP script to another script using POST without forms?

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

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

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

<?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>

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

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM