请教:如何在html中输出php的执行结果?请帮忙看看下面的代码,谢谢!
hello.php代码如下:<?phpheader("Content-type:application/x-javascript");echo"document.writ...
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吧?
请帮忙看看代码是否有问题。请帮修改一下,或能给一个肯定能执行的例子,谢谢! 展开
<?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吧?
请帮忙看看代码是否有问题。请帮修改一下,或能给一个肯定能执行的例子,谢谢! 展开
4个回答
展开全部
你的代码没问题。因为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之后的结果。
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之后的结果。
展开全部
你这个要求最好使用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>
先去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>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
html文件 你在script当中 src= hello.php ,即使是加载进来,也不会解释执行php的代码的。
这个php 和html文件你要理解,
一个是服务器端的脚本,一个是客户端浏览器解释执行的结果。
你在html文件中使用php是没有效果的。除非你把test.html也改变成php...
当你做东西的时候,一定记得,php代码功能是在服务器端执行,并返回的结果,不能再改变了
写在html标签中的东西,可以使用。如果想动态的用,请使用ajax
这个php 和html文件你要理解,
一个是服务器端的脚本,一个是客户端浏览器解释执行的结果。
你在html文件中使用php是没有效果的。除非你把test.html也改变成php...
当你做东西的时候,一定记得,php代码功能是在服务器端执行,并返回的结果,不能再改变了
写在html标签中的东西,可以使用。如果想动态的用,请使用ajax
追问
能给个例子(关于ajax的),谢谢!还有一点分,若能行,都给你了。
追答
$.post("hello.php",
function(data){
alert("data);
});
放到script标签中,前提是你得用jquery.js
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
执行 test.html
追问
执行后没有任何反应。请帮忙看看哪儿出了问题。
追答
运行hello.php显示什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询