2011-11-27 64 views
0

我知道cURL主要用于从远程站点获取数据。你应该使用cURL从使用POST数据的本地URL获取数据吗?PHP在本地文件上模拟POST数据

例如,我有一个页面显示收据。我使用它发送html电子邮件,并且也让客户在浏览器中查看收据是否他们的电子邮件客户端没有正确显示。

如果POST持卡人数据存在,它将显示收据中的名字,姓氏,地址,城市,州,邮编,电话,电子邮件和付款方式。

我使用file_get_contents()函数来检索该网页并发送电子邮件。问题:这样做时不会出现POST数据,所以如果您是收到收据电子邮件的人,那么您的账单信息将不会显示。没有办法证明收据实际上是你的。

我试图遵守PCI标准,所以我试图避免在会话或数据库表中存储持卡人数据。

+0

你在开玩笑吗?我认为你在寻找include(),因为你的说法毫无用处。没有人会让自己的服务器向自己发送发布请求,并将其留给客户端脚本。 –

+0

那么如何将数据包含在不希望存储在会话或数据库表中的网页中? – David

回答

2

而不是使用file_get_contents()你可以不使用包含或需要在脚本中拉你在那个文件?在此之前,您可以手动设置$ _POST变量,并且包含的​​文件将触发电子邮件并包含用户数据。

//Script where you're calling file_get_contents() 

$_POST['firstName'] = $firstName; 
$_POST['lastName'] = $lastName; 
//etc for all fields 

include "your_email_script"; 
+0

寻找这个答案需要付出比应有的更多努力。有很多帖子,像Adam的上面那样,人们说在你自己的服务器上发布脚本是愚蠢的,但是如果你使用的是需要POST的脚本,如何避免这种情况而不杀小猫? TheOx提供了简单的解决方案。谢谢! –