请教:如何在html中输出php的执行结果?请帮忙看看下面的代码,谢谢!

hello.php代码如下:
<?php
header("Content-type:application/x-javascript");
echo "document.write('<p>Hello World</p>');";
?>
test.html代码如下:
<script type="text/javascript" language="javascript" src="hello.php"></script>
说明:
1、hello.php的路径没有问题。
2、执行hello.php时除换行显示Hello Word外,还会将document.write以及后面的分号显示出来,是应该这样吗?应该只显示Hello Word吧?

请帮忙看看代码是否有问题。请帮修改一下,或能给一个肯定能执行的例子,谢谢!

你的代码没问题。因为hello.php是直接输出这段语句,但你这行代码没有放在<script>中执行,那么输出结果是直接是:
document.write('<p>Hello World</p>');
而test.html正则引用了hello.php的执行结果,并作为JS来运行,那么你直接打开test.htm就会输出<p>Hello World</p>。
另外你在hello.php加的这句:header("Content-type:application/x-javascript");
这是声明文件的类型,有了这句,PHP将会向浏览器发送一段声明表名该文件是JS文件(尽管后缀名是php),如果没有这句,在test.html中是不会有效果的(hello.php不被视为js文件,它输出的代码将被忽略)。
你的代码完全没问题。不过你这样的做法并不妥当,因为你把输出的内容作为JS代码来执行,会导致搜索引擎看不懂你的网页。PHP文件中其实是可以嵌入html代码的,只需要把PHP代码放入<?php .... ?>中与html区分开便可,不过你要记住的是,php是服务器端语言,它是在服务器中运行的,也就是说,当你打开一个php页面的时候,服务器将会执行一次php文件中<?php ... ?>里的内容,然后输出文本再传递给浏览器,浏览器再根据输出的内容来呈现页面。
比如以下代码:
<html>
<head>
<title>hello world</title>
</head>
<body>
<?php echo('hello world'); ?>

</body>
</html>
运行结果输出的源码将是:
<html>
<head>
<title>hello world</title>
</head>
<body>
hello world
</body>
</html>
当然,你看到的运行结果是只有一句:hello world,这是浏览器解析了HTML之后的结果。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-02-27
你这个要求最好使用jquery的get来实现。
先去http://jquery.com/下载一个jqurey.js来。

hello.php代码如下:
<?php
echo '<p>Hello World</p>';
?>

test.html代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />

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

</head>
<body>

<script type="text/javascript">
$.get("hello.php"function(data)
{
document.write(data);
});
</script>

</body>
</html>
第2个回答  2013-02-27
html文件 你在script当中 src= hello.php ,即使是加载进来,也不会解释执行php的代码的。
这个php 和html文件你要理解,
一个是服务器端的脚本,一个是客户端浏览器解释执行的结果。

你在html文件中使用php是没有效果的。除非你把test.html也改变成php...

当你做东西的时候,一定记得,php代码功能是在服务器端执行,并返回的结果,不能再改变了
写在html标签中的东西,可以使用。如果想动态的用,请使用ajax追问

能给个例子(关于ajax的),谢谢!还有一点分,若能行,都给你了。

追答

$.post("hello.php",
function(data){
alert("data);
});

放到script标签中,前提是你得用jquery.js

第3个回答  2013-02-27
执行 test.html追问

执行后没有任何反应。请帮忙看看哪儿出了问题。

追答

运行hello.php显示什么

html怎么调用php返回的值并显示出来。求代码!
你最后一句“echo json_encode($info,320);”已经输出这个结果了啊。如果你是在html中直接用,就直接用就行了,如:<p><?php echo $info['name']; ?><\/p>;如果你是在ajax中用,就直接在success方法里输出就行了,如:.ajax({url:"xxx.php",success:function(result){ console.log(result....

如何在html文件里写php程序
1、首先在php文件里定义一个变量,“$str”这是php里定义的字符串变量:2、要在html里使用这个变量,比如输出该变量的值,首先在需要插入的文字写入php的声明,然后就可以用echo来输出就行了:3、运行页面,就可以看到在html里成功输出了变量的值。以上就是在html中使用php的演示:

编写一段代码,尝试在普通HTML页面中嵌入PHP代码,并显示出”你好“字样...
<html> <body> <?php echo "你好";?> <\/body> <\/html>

如何在html文件里写php程序?
1、新建html文档并使用html模板生成必要元素,然后在body标签中添加一段文字:2、在body标签中输入“<?php ?>”,然后可以在这段代码中间编写php代码,编写完成之后将文件进行保存:3、用鼠标将保存后的文件选中,按下键盘上的“F2”键对文件进行重命名,将文件后缀从“html”更改为“php”,这时文件会...

html 嵌入php显示php的源代码
PHP源代码原样输出,通常的原因在于,PHP代码没有经服务器端解析。通常,服务器端如果要对PHP进行解析(也就是当你在浏览器里用url访问时某个php脚本时),而不是显示其源代码,需要设置,比如,在apache里:AddType application\/x-httpd-php .php AddType application\/x-httpd-php .htm 一般将PHP...

html 中 调用PHP代码.
首先,第一种写法那是肯定错误的,php不能在<?php?>中再嵌套一个php标签。第二种肯本没看过的写法,都拆的不成样子了。第三种你到时候可以试试,或者麻烦点你可以先把$show_category_name;赋值给另一个名称,然后 <?php $show_name=$show_category_name;?> value= "<?php echo $lang['$...

php后台查出数据,输出在html表格里,怎么做
= mysql_fetch_array($query)){ ?> <tr> <td><?php echo row['id'];?><\/td> <td><?php echo row['title'];?><\/td> <\/tr> <?php } ?> <\/table> 原生的就这样循环出来 多个字段就加多几个td就行 最好做个处理,把查找出来的结果组编成新数组,使用foreach循环比较好 ...

如何让一段html代码经过php程序的if语句判断后显示,急用,在线等啊
使用php嵌套ifesle实现,下面是一个例子,看懂就能解决你的问题了 <?php a = $_GET['a'];\/\/这里获取一个get值,改成你的获取session echo $a;if($a > 0){ \/\/判断有session ?> <div id="a">a大于0<\/div> <!--有session输出这段--> <?php } else{ \/\/判断无session ?

怎么用php做网站 如何在HTML中利用php
首先你要明确的是,html是前端,负责制作网站的前端页面,所谓的前端就是你现在看到的百度知道的页面,这就是前端html+css+js写出来的。而php是一个网站的后端,也就是实现我们能够在百度知道 里面发表问题,回答问题等一系列功能的后端语言。从你问的问题能看出你应该是个初学者,我给你举个实例的代...

如何在HTML文件中运行php代码?
IIS在IIS中的应用程序映射里添加:“可执行文件:”路径\\php.exe “扩展名:”.htm 这样就可以让php解释htm中的php代码了。因为你的HTML内容中夹带PHP请求语句(如<? ...?>),需要PHP引擎来语法解析,而PHP服务的默认文件后缀为.php和.php3,.htm和.html后缀的文件是不会提交PHP引擎解析的。

相似回答