现在我有简单的电子邮件登录表单
<form action="one.php">
<input type="email" name="email"/>
</form>
one.php 是电子邮件过滤器gmail用户并将其标题为自定义路径
<?php
$email = $_POST['email'];
if (stripos($email, '@gmail.com') !== false) {
header('Location: ../gmail/index.html');
} else {
header('Location: /unknownusers');
}
?>
现在我们完成了第一页 我的问题是 如何通过电子邮件将姓名发送到另一个页面&#39; / gmailusers中的示例
<html>
<head>
</head>
<body>
<div>
<font>Welcome back,</font>
<?php
include 'one.php';
echo $email; ?>
</div>
</body></html>
$ email在此不起作用,因为one.php没有保存信息
我怎么能做到这个
index.html 文件中的欢迎回复&#39; User.Email@gmail.com'
任何身体都可以帮助我使用PHP代码。
答案 0 :(得分:1)
你所做的事情没有意义,但为了让它发挥作用,在two.php
替换......
echo $email;
带
echo $_POST['email'];
HOWEVER 您正在one.php
重新加载页面,因此永远不应执行上面的代码更改。 (你为什么这样做?)无论如何,如果安全性不是问题,在one.php
你可以通过这样做将电子邮件传递给其他页面......
header('Location: ../gmail/index.html&email='.$_POST['email']);
然后,在index.html
文件中,您可以访问变量$_GET['email']
。
如果安全性存在问题,则会变得更加复杂。
答案 1 :(得分:1)
最简单的方法是不使用location
重定向,而只包括要显示的文件。
<?php
$email = $_POST['email'];
if (stripos($email, '@gmail.com') !== false) {
include "gmail.php";
} else {
header('Location: /unknownusers');
}
(此文件将替换gmail / index.html,因为大多数服务器配置都不会将.html文件传递给PHP处理器。)
<html>
<head>
</head>
<body>
<div>
<font>Welcome back, <?php echo $email; ?></font>
</div>
</body></html>
在这种情况下,one.php向gmail用户显示gmail.php指示的内容,并将其他用户重定向到unknownusers页面。
如果您希望“登录”保持不变(因此您的服务器会记住此人是谁),您需要session。