gpt4 book ai didi

php - %22(双引号)突然添加到 url

转载 作者:可可西里 更新时间:2023-10-31 22:44:31 27 4
gpt4 key购买 nike

我正在制作一个邮件程序,用于向客户邮寄时事通讯,时事通讯中将包含图像和链接。当我在 localhost 上测试它时,一切正常并且链接有效。但是,当我将它上传到我的网站时,链接和图像路径将不再有效。

出于某种原因,它在链接和路径中添加了 %22(我发现这是双引号 "),所以我邮寄的链接看起来像这样:

/%22http//www.mywebsite.com/%22

图片路径是这样的:

%22http//www.mywebsite.com/content/someimage.jpg/%22

我正在使用 TinyMCE 编辑时事通讯,我尝试了 relative_urls : falseconvert_urls : false 但没有任何效果。我不认为这是一个 TinyMCE 问题,但我想我还是要提一下。

我不知道是什么原因造成的,所以如果有人知道这是怎么回事,那就太好了!

更新:我检查了我的代码并查看了邮件中发送的文本的 html,并且链接始终没有双引号,所以我猜这是服务器问题。

最佳答案

这是 magic_quotes 的问题 检查您的 phpinfo() 是否已关闭。如果你能够关闭它,你必须在你的 php.ini 中禁用它。

您可以使用以下代码测试它是启用还是禁用:

<?php
echo "Magic quotes is ";
if (get_magic_quotes_gpc()) {
echo "enabled.";
} else {
echo "disabled";
}
?>

另一个修复方法是使用 stripslashes() 删除斜线。这很可能会解决问题。

阅读有关stripslashes() 的文档 HERE

一个简单的例子:

<?php
$str = "Is your name O\'reilly?";

// Outputs: Is your name O'reilly?
echo stripslashes($str);
?>

编辑:您可以尝试的另一件事是使用 html_entity_encode()

一个例子:

<?php
$orig = "I'll \"walk\" the <b>dog</b> now";

$a = htmlentities($orig);

$b = html_entity_decode($a);

echo $a; // I'll &quot;walk&quot; the &lt;b&gt;dog&lt;/b&gt; now

echo $b; // I'll "walk" the <b>dog</b> now
?>

信息HERE

另一个答案。对于 url 中的 html_entity_encode() https://stackoverflow.com/a/10001006/1379394

关于php - %22(双引号)突然添加到 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17187673/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com