繁体   English   中英

html电子邮件中的表单POST在PHP中看不到变量

[英]Form POST in html email doesn't see variable in PHP

我发送带有表单和按钮的HTML电子邮件,如下所示:

<form action="http://myurl/index.php" method="post">
<input type="hidden" name="testing" value="123456">
<button  class="btn" type="submit">SEND</button>
</form>

然后在我的index.php页面中,以这种方式读取testing变量:

echo $_POST['testing'];

但我无法读取变量并给我这个:

Notice: Undefined index: testing

有没有一种方法可以将可变内容从html邮件发送到php页面?

哦。 立即获得该电子邮件部分。

由于安全性/隐私性原因,大多数邮件程序都不会发出POST请求。 在此处使用GET:

在HTML中: <a href="http://myurl/index.php?testing=123456">SEND</a>
在PHP中: echo $_GET['testing']

当然,在这种情况下,数据是可见的-但这就是重点。

电子邮件不能与许多相当标准的html配合使用。 在这种情况下,我将使用以下内容:

<a href="http://myurl/index.php?testing=123456">Submit</a>

然后将锚定样式为按钮。 然后在您的php端,使用它来确保变量到达该位置:

print_r($_GET);

更换时会发生什么:

<button  class="btn" type="submit">SEND</button>

<input type="submit" value="Send" />

我意识到您可能已经在给定样式,因为您有一个类语句,但是您仍然可以很容易地对输入类型=“ submit”进行样式设置。 我遇到了使用该对象发布变量的问题。

另外,FWIW,您无需在操作中指定完整的URL。 实际上,您可能应该执行以下操作来保护自己免受XSS攻击:

<form action="<? echo htmlentities('/path/to/index.php'); ?>" method="post">

暂无
暂无

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

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