Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php在javascript中为mailto编码字符?_Php_Javascript_Quotes_Mailto - Fatal编程技术网

使用php在javascript中为mailto编码字符?

使用php在javascript中为mailto编码字符?,php,javascript,quotes,mailto,Php,Javascript,Quotes,Mailto,我正在使用window.location.href='mailto:?body=visit' 这很好,但是链接的构建方式是window.location.href='mailto:?body=' 现在,除非$content包含'或类似的内容,从而破坏了代码,否则这种方法可以正常工作 我怎样才能做到这一点呢?您可能想使用,它会转义引号。您可能想使用,它会转义引号。使用rawurlencode函数[]对输入中URL中无效的任何字符进行编码 <?php $content = "Hello, th

我正在使用
window.location.href='mailto:?body=visit'

这很好,但是链接的构建方式是
window.location.href='mailto:?body='

现在,除非
$content
包含
'
或类似的内容,从而破坏了代码,否则这种方法可以正常工作


我怎样才能做到这一点呢?

您可能想使用,它会转义引号。

您可能想使用,它会转义引号。

使用
rawurlencode
函数[]对输入中URL中无效的任何字符进行编码

<?php $content = "Hello, this' an...\n\nexample!"; ?>
window.location.href = "mailto:?body=<?php echo rawurlencode($content); ?>";

确实,当您将某些内容放入带引号的字符串中时,通常希望使用
addslashes
[]。在这种情况下,它将无效,因为
rawurlencode
的输出没有任何需要用斜杠转义的字符。

使用
rawurlencode
函数[]对输入中URL中无效的任何字符进行编码

<?php $content = "Hello, this' an...\n\nexample!"; ?>
window.location.href = "mailto:?body=<?php echo rawurlencode($content); ?>";
确实,当您将某些内容放入带引号的字符串中时,通常希望使用
addslashes
[]。在这种情况下,它将无效,因为
rawurlencode
的输出没有任何需要用斜杠转义的字符。

使用:

window.location.href='mailto:?body=';
使用:

window.location.href='mailto:?body=';
window.location.href = 'mailto:?body=<?php echo rawurlencode($content); ?>';