【发布时间】:2010-01-08 10:42:47
【问题描述】:
我有一个 html 表单,它通过 AJAX(jquery 表单插件)提交到我服务器上的 PHP Web 代理。 Web 代理使用 curl POST 到第三方脚本。
我的 html 表单的输入名称为 p[fname]、p[lname]、c[name]、p[loc]、p[loc][email]、p[loc][email][detail]。名称由第三方应用程序指定。
当我使用 GET 将表单提交到 Web 代理时,我可以简单地执行以下操作以将表单数据成功传输到 curl 请求中的第三方脚本:
$postvars = $_SERVER['QUERY_STRING'];
curl_setopt ($session, CURLOPT_POSTFIELDS, $postvars);
问题 #1:使用 GET 将表单数据提交到我的网络代理有什么“错误”吗?正如我所提到的,它工作正常,并且需要更少的编码。 $_SERVER['QUERY_STRING'] 包含我需要通过 POST 传递给第三方的数据,格式完全正确。
问题 #2:如果有令人信服的理由使用 POST 提交到我的 Web 代理,那么在 $_POST 中循环多维关联数组以便动态构建 $postvars 而无需硬编码的最佳方法是什么任何关键值?
注意:html 表单不是关键任务,它提交的数据会进入第三方服务的批准提示。它不会直接插入到生产数据中。
【问题讨论】: