PHP:代码变成HTML<! - 评论? - > [英] PHP: Code gets turned into HTML <!-- Comments? -->

查看:149
本文介绍了PHP:代码变成HTML<! - 评论? - >的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



 < p>你好<? echo $ name; ?>,,你好吗?< / p> 

打印:

 < p> Hello<! - ? echo $ name; ? - >,,你好吗?< / p> 

作为评论。

  function showName(){
document.getElementById (name)。innerHTML =< p> Hello< ;? echo $ name;?>,你好吗?< / p>;
}

因此,我嵌入.js文件,如下所示:

 < script type =text / javascriptsrc =base.js>< / script> 

因此,在它改变< p id =name> ;< / p> 我得到:

 < p id =name>你好<! - ? echo $ name; ? - >,,你好吗?< / p> 

我有.php文件中的代码,它似乎工作正常。现在我把它放在一个单独的base.js文件中,它不再起作用。帮助!

解决方案

这是因为它不再是PHP。



更改为

 < script type =text / javascriptsrc =base.php>< / script> ; 

并且有一个
<?php头(content-type:text / javascript);
$ name =...;
?>

function showName(){
document.getElementById(name)。innerHTML =< p> Hello<?php echo $ name;?>,你好吗? < / p>中;
}



改为

  function showName(name){
document.getElementById(name)。innerHTML =< p> Hello+ name +,你好吗?< / p>;
}

在php文件中有

 < script> 
//使用json_encode使脚本注入的字符串安全。
//仍然需要引用单个字符串
showName(<?php echo json_encode($ name);?>);
< / script>


when I enter in code like this:

<p>Hello <? echo $name; ?>, How are you?</p>

It prints:

<p>Hello <!--? echo $name; ?-->, How are you?</p>

As a comment. I have it in a file called base.js with this code:

function showName() {
   document.getElementById("name").innerHTML = "<p>Hello <? echo $name; ?>, How are you?</p>";
}

So I embed the .js file like so:

<script type="text/javascript" src="base.js"></script>

So, after it changes the <p id="name"></p> I get:

<p id="name">Hello <!--? echo $name; ?-->, How are you?</p>

I had the code in the .php file, and it seemed to work fine. Now that I have it in a separate base.js file, it ceases to function. Help!

解决方案

That is because it is no longer php.

Change to

<script type="text/javascript" src="base.php"></script>

and have a 
<?php header("content-type:text/javascript"); 
$name = "...";
?>

function showName() {
   document.getElementById("name").innerHTML = "<p>Hello <?php echo $name; ?>, How are you?</p>";
}

Or

change to

function showName(name) {
   document.getElementById("name").innerHTML = "<p>Hello "+name+", How are you?</p>";
}

and in the php file have

<script>
// using json_encode to make the string safe for script injection. 
// Still needs quotes for a single string
showName("<?php echo json_encode($name); ?>");
</script>

这篇关于PHP:代码变成HTML&lt;! - 评论? - &GT;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆