php如何传递字符串,如何将PHP字符串传递给Javascript函数调用?

博客讨论了在PHP中传递字符串到JavaScript函数时遇到的问题,特别是当字符串包含可能破坏JavaScript的字符(如双引号)时。解决方案是正确转义字符串,确保在JavaScript中能够正确解析。作者提到了使用PHP的转义函数来处理字符串,并提供了代码示例展示如何在PHP和JavaScript之间传递数据。

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:

Pass a PHP string to a Javascript variable (and escape newlines)

因此,从本质上讲,我试图从PHP页面传递一个字符串作为javascript函数的参数。 该脚本所在的页面包含PHP,但它们位于两个单独的文件中。

但是,每当我尝试传递字符串时,它都会停止运行javascript。 我可以传递PHP整数,但不能传递字符串。 有可能解决这个问题吗? 我一直在互联网上寻找可能导致我的错误的原因,但找不到任何东西。 任何帮助将不胜感激。

这是PHP和HTML。 单击提交时该功能运行。

$comment ="7b";

echo"

这是javascript函数。

function uploadPostComment(PostCID, Comment){

var PostCommentData ="fsPostID="+PostCID;

PostCommentData +="&fsPostComment="+Comment;

var xmlHttp = new XMLHttpRequest();

xmlHttp.open("post","uploadPostComment.php", true);

xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

xmlHttp.setRequestHeader("Content-length", PostCommentData.length);

xmlHttp.setRequestHeader("Connection","close");

xmlHttp.onreadystatechange = function()

{

if(xmlHttp.readyState == 4)

{

if(xmlHttp.status == 200)

{

alert("Message Posted");

}

else

{

alert("Oh no, an error occured2");

}

}

};

xmlHttp.send(PostCommentData);}

请记住,如果$comment包含引号,则大多数答案都会中断。 你必须逃脱那些。

echo"

您需要引用字段。 如果您的字段是整数,则不需要用引号引起来;如果是字符串,则需要用引号引起来。 我引用这两个都是因为我不知道parentID是字符串ID还是数字ID。 当然可以执行您的应用程序需要的操作。

更新:关于迈克尔的评论,如果评论中包含引号,则打破。 现在,我们在$ comment中转义所有双引号以防止出现这种情况。

非常感谢。 正是我想要的。 让我发疯。

是您的罪魁祸首,尤其是uploadPostComment($parentID, $comment);-如果$ comment是字符串,则需要将引号放在适当位置:uploadPostComment($parentID, \"$comment\");

将字符串用转义的双引号引起来,例如\"$comment\"

$comment ="7b";

echo"

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值