PHP在本地文件上模拟POST数据

时间:2011-11-27 04:36:42

标签: php curl pci-compliance

我知道cURL主要用于从远程站点获取数据。您是否应该使用cURL从使用POST数据的本地URL获取数据?

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

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

我使用file_get_contents()函数来检索该网页并发送电子邮件。问题:执行此操作时不会出现POST数据,因此,如果您是收到收据电子邮件的人,则不会显示您的结算信息。没有办法证明收据实际上是你的。

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

1 个答案:

答案 0 :(得分:2)

您是否可以在脚本中使用include或require而不是使用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";