js与php数据交互(如是使用js向一个php页面传一个值)

本文目录
- 如是使用js向一个php页面传一个值
- js和php在同一个文件中相互获取值的问题
- 如何把php中获取的数据传递到js中使用
- php和js互相调用,php中有一个数组,在html有一个按钮,按钮调用js函数的时候会传一个数字参数
如是使用js向一个php页面传一个值
JS向PHP传递数值只有两种方法:GET和POST,GET把参数写在URL上,例如abc.php?param=123,POST的参数在数据里面。
JS调用PHP(无论GET或者POST)一般有两种方式,一是是用HTML窗口,使用GET的例子:
《iframe src=abc.php?param=123》《/iframe》
使用POST的例子:
《form action=abc.php method=post name=form1》
《input type=hidden name=param value=123》
《/form》
《script language=javascript》
form1.param.value=123;
form1.submit();
《/script》
JS调用PHP(无论GET或者POST)的另外一种方式是是用AJAX,例子代码网上很多,我写一个最简单的:
《script language=javascript》
var xmlHttp=null;
if (window.ActiveXObject) xmlHttp=new ActiveXObject(’Microsoft.XMLHTTP’);
else if (window.XMLHttpRequest) xmlHttp=new XMLHttpRequest();
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.open(’POST’,’abc.php’);
xmlHttp.send(’param=123’);
function handleStateChange(){
if (xmlHttp.readyState==4){
if (xmlHttp.status==200){
alert(xmlHttp.responseText);
}
}
}
《/script》
js和php在同一个文件中相互获取值的问题
你好php是服务端脚本语言,js是浏览器端脚本语言,除非使用ajax进行数据提交否则,一但服务端生成好页面传到浏览器端后就不再参与浏览器端的“运算”,所以你想在同一个页面中不重新进行请求就js和php相互获取值是不现实的。
另:
你的代码分析如下:
《script》
var linka;
linka=window.location.href;
《/script》
《?php
$ch="《script》document.write(linka);《/script》";
echo $ch."《br /》";
《script》
到这步为止,php获得js的变量非常顺利
下面接着
《script》
var k;
k="《?php echo $ch;?》";
alert(k);
《/script》
其实你的整个页面都是php的,执行
$ch="《script》document.write(linka);《/script》";
这一句的时候,php的$ch仅仅只是被赋予了"《script》document.write(linka);《/script》"这个字符串,js代码并没有运行.php也并没有获得js的变量!获得的只是字符串而已.
如何把php中获取的数据传递到js中使用
看你想怎么使用PHP的数据。比如我从数据库里拿出一个数据,然后echo
《h1》《?php echo $title; ?》《/h1》
那你JS里就可以通过DOM来获取h1的innerHTML
不要直接用js,最好用现成的library,比如jQuery,Prototype之类的,因为他们有浏览器兼容。
还有就是用ajax,动态获取你要的内容。即通过JS代码,调用PHP代码,然后传递回你要的数据。
AJAX非常的流行,因为不会造成网页停滞,强调的是asynchronous (不同步)。
php和js互相调用,php中有一个数组,在html有一个按钮,按钮调用js函数的时候会传一个数字参数
那就只能使用ajax了!也就是按钮触发js函数后, ajax再次异步执行一次php并返回结果而进行后续操作!
或者页面执行的时候, 直接将php数组输出js格式的json数据,也行!
比如:
《?php
$arr = array(
array(’a’ =》 ’abc’),
array(’a’ =》 ’bcds’)
);
?》
《script》
var arr = 《?php echo json_encode( $arr ) ?》;
function mods( num ) {
//你自己的操作,下面只是测试而已
alert( arr.a );
//arr.a 就是你要的值
}
《/script》
《button type="botton" onClick="mods(0)"》按钮《/button》

更多文章:
数据库管理系统和数据库系统分别侧重(数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例)
2026年9月7日 17:00
springmvc的依赖(springMVC的注入方式有哪几种,这与springMVC依赖)
2026年9月7日 14:00
display flex 自动换行(overflow-y:hidden;overflow-x:auto;无效解决方法)
2026年9月7日 11:00
timestamp without time zone(Postgresql中to_date()函数使用问题)
2026年9月7日 09:40






