gpt4 book ai didi

php - 验证后将 PHP 变量数据传递到另一个页面

转载 作者:太空宇宙 更新时间:2023-11-04 16:21:16 25 4
gpt4 key购买 nike

虽然我在这里发现了与此问题类似的内容,但它并没有完全回答我的问题。

我已经设置了这个 php 脚本来验证表单数据,它有效,在验证之后我希望它将信息传递到另一个脚本页面,让用户验证他们的输入数据,然后邮寄数据。在这种情况下,我遇到了麻烦。在过去的几天里,我一直在努力寻找解决方案,但不幸的是,我没有找到解决方案。

        <?php

$name_error = '';
$email_error = '';
$comments_error = '';

$error = false;

if (!empty($_POST['submitted']))
{ //if submitted, the validate.

$name = trim($_POST['name']);

if (empty($name))
{
$name_error='Name is required';
$error = true;
}

$email = trim($_POST['email']);

/* If e-mail is not valid show error message */
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email))
{
$email_error='E-mail address not valid';
$error = true;
}

$comments = trim($_POST['comments']);

if (empty($comments))
{
$comments_error='Comments are required';
$error = true;
}

if ($error == false)
{
$name_send = $name;
$email_send = $email;
$comments_send = $comments;

/* Redirect visitor to the thank you page */
header('Location: /mail.php');
exit();
}
}

附加到的表格:

<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post">

<label>Your Name</label><br />
<input type="text" name="name" style="width:95%" class="text" value='<?php echo htmlentities($name) ?>' />
<br/>
<span class='error'><?php echo $name_error ?></span>
<br />

<label>Email</label><br />
<input type="email" name="email" style="width:95%" class="text" value='<?php echo htmlentities($email) ?>' />
<br/>
<span class='error'><?php echo $email_error ?></span>
<br />

<label for="comments" style="font-size:16px;">Feedback Comments</label><br />
<textarea name="comments" style="width:95%;" rows="8" value='<?php echo htmlentities($comments) ?>'></textarea>
<br />
<span class='error'><?php echo $comments_error ?></span>
<br />


<input type="checkbox" name="allowCommentPublish" checked="checked" />
<label for="allowCommentPublish" style="font-size:10px;">Allow these comments to be used on our website</label>

<fieldset class="optional">

<h2>[ OPTIONAL ]</h2>

<label>Company Name</label><br />
<input type="text" name="companyName" style="width:95%" class="text" />
<br/>

<label>Phone</label><br />

<input type="text" name="phone" style="width:95%" class="text" /><br/>

<div style="margin:5px 0px;">
<input type="checkbox" name="incmarketing" />
<label style="font-size:10px;"> Yes, you can email me specials and promotions.</label>
<br/>
</div>
</fieldset>

<fieldset>
<input type="submit" name="submitted" value="Send" />
</fieldset>

我会指出我主要关注主要数据输入:姓名、电子邮件和评论。

我需要此表单中的信息继续发送,但我不知 Prop 体如何执行此操作,我们将不胜感激任何帮助。

最佳答案

要将值传递到下一页,您必须使用这三种方法中的任何一种。1. 使用数据设置 cookie。2. 使用全局变量session。3.在url中传递数据。

对于 cookie,您可以设置 cookie 的值如下

setcookie('name',$name);

在你的下一页中读取那些 cookie 数据

对于 session :

 $_SESSION['name']= $name;

用于从 cookie 和 session 中读取数据:

 $name = $_COOKIE['name'];

$name = $_SESSION['name'];

要使用 session ,您必须添加行

session_start();

在发送或接收(使用)数据的页面的开头

和 url

header('Location: /mail.php?name=$name&email=$email&comment=$comments');

Read more on using session

关于php - 验证后将 PHP 变量数据传递到另一个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29000906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com