首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CURL和magic_quotes

CURL和magic_quotes
EN

Stack Overflow用户
提问于 2011-04-07 08:59:06
回答 3查看 358关注 0票数 0

我对cURL和magic_quotes有意见。

出于不同的原因,我无法关闭magic_quotes。但是当我创建一个CURL POST请求时,我确实需要禁用这个特性。

在这个CURL POST请求中,我传递了一个包含XML和xml开始标记的变量,如下所示:

代码语言:javascript
复制
$xml_request = ' <?xml version="1.0"?><SaleRequest> <CustomerData> <Email>alex@virtuman.com</Email> <CustomerData> <SaleRequest>';

在我创建了curl post请求之后:

代码语言:javascript
复制
$url="https://my.secureserver.com/parsexmlscript.cgi";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "xml=".$xml_request);
curl_setopt ($ch, CURLOPT_HEADER, 0);
$result = curl_exec ($ch);
curl_close ($ch);

在结果中:在安全的服务器第一个开始标记上接收到的请求如下所示:

代码语言:javascript
复制
<?xml version=\"1.0\"?>

在这个xml解析器死后,它告诉我XML文档的格式不正确。

有没有办法只为创建此post请求的一个脚本禁用魔术引号?

或者可能有任何其他方法来绕过它?

非常感谢您的帮助!

EN

回答 3

Stack Overflow用户

发布于 2011-10-24 22:49:01

为什么不在perl base64_decode( $incomingdata )中使用base64_encode( $xmldata )呢?

这样,php就没有奇怪的字符要编码了。

票数 2
EN

Stack Overflow用户

发布于 2011-04-07 09:15:42

可能的步骤:

  • try stripslashes($xml_request) in your actual code
  • 2003中的set_magic_quotes_runtime(0)可能具有包装在<Files specific.php>

中的php_flag magic_quotes off

其中大部分信息都在magic_quotes的PHP手册中。

评论将不会被回复。

票数 0
EN

Stack Overflow用户

发布于 2011-04-07 09:51:44

试试这个:

代码语言:javascript
复制
$xml_request = str_replace("\\", "", $result);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5574701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档