一个php问题,与js相关的,求帮忙!

<script>
var number=1;
function nextone(){
if(number<20){
number=number+1;
}
}
</script>
我有一个button点击会执行这个nextone();
<?php $aa= ?>怎么获取这个number值,因为我要吧这个number值加进数据库,我知道可以用$aa=<script>document.write(number)</script>获取到number值,但是永远是1,点击后应该变化,但是却不变。

PHP脚本在服务端即被解释执行,变成了HTML或者其他以后传输给客户端(浏览器),浏览器再执行HTML内的JS脚本,所以你这个写法是有问题的。
如果要让PHP获得JS的执行结果,通过AJAX、iframe等方法都可以实现,但是一般需建立第二个PHP脚本来接收这个参数。
需要具体的帮助请把完整的程序提供给我。追问

其实我是再做一个在线测试的功能,而且是做一题处理一题,用户选择了答案,点击提交,如果正确(是否正确是在js里判断的,我先把答案查出来,隐藏起来,别人提交答案后对比一下,并显示正确答案),我用个变量记录一下,然后加进数据库,要正确了我才能记录一个,也就在js里判断正确以后,我要如何把这个值提出来,加进数据库呢

追答

其实最好的方法是AJAX,JS提交一个答案,后台处理好以后(该记录的记录,该给分的给分),因为你先把答案拿到前台不是很合适,容易被看到。
处理好以后,再把后面一道题目传到前台,这样比较合适。
以下用jquery的方法写的:

$('#okButton').click(function(){
var data = {a:''};
data.a = $('#input').val();
$.getJSON('url.php',data,function(json){
$('#questionDIV).text(json.question);
}
}
//以上是前台JS(JQUERY)的写法;

后台 url.php
$a = $_GET['a']; //这里得到了前台传来的值
/***
对值进行处理
***/
/***
获得新的问题
***/
$output['question'] = '新的问题';
echo json_encode($output);

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-03
例如你现在是在 A.php 写入下面的代码:
<script type="text/javascript">
function changeNumber(){
var number=document.getElementById('number').value;
number=parseInt(number)+1; //这里是加1
document.getElementById('number').value=number; //这里是赋值
};
</script>

<form action="test.php" method="post">
<input type="hidden" name="number" id="number" value="1" />
<input type="button" name="change" id="change" value="点击这里加1" onclick="changeNumber()" />
<input type="submit" name="submit" value="提交" />
</form>

看到上面的action="test.php" 了吧,你新建立一个test.php写入下面的代码:
<?php
$number=$_POST['number']; //这里就是传值了
//下面就是你添加到数据库的部分的代码了,这里的部分你就自己处理吧,记得给分哦
?>
第2个回答  2011-08-03
function nextone(){
var number=1;

if(number<20){
number=number+1;
<?=$aa;?> = number ;
}
}追问

这也行???,应该是没用的

追答

你尝试下吧

不尝试怎么知道呢

追问

理论上就有问题,我也试了一下,确实不行呢

第3个回答  2011-08-03
一个是客户端,一个是服务器端,这样写肯定不行,你可以加个<input type=hidden>点击的时候这个值为number的值,然后php获取input的值就容易的。或是用ajax在后台处理
第4个回答  2011-08-03
那你需要使用ajax,在判断正确之后,将你计算的number值用javascript的ajax方法,post给服务器端。在服务器端接受该值,并写入数据库。

PHP与JS对接的问题,有前端页面(html的)和后端页面(PHP的),JS怎么获取...
首先,前端js通过ajax请求后端php,请求数据推荐json格式 后端php收到请求后,解析数据并处理 后端返回处理后结果,不推荐var_dump打印,会打印多余的无用信息,返回时json_encode()转成json格式再返回 前端js收到返回值后解析json数据即可

有关php和javascript的问题
1.1 用户界面相关的复杂计算,举个例子:在网页上显示显示各种统计图表 1.2 对用户输入进行客户端格式化,例子:ckeditor就属于这类应用 1.3 对将要与服务器进行交互的数据进行整理、统一提交请求:例子:比如有些特定的时候,客户端会频繁地与服务器交互,这时候,我们可以将数据进行汇集后统一提...

php引用javascript变量问题!
首先js定义变量,你并没有让它输出..在php代码里面 你设定 $page 为 document.write(page) 这一句打印出来之后是js代码,所以是由js来输出的,在前面已经设置page为10,所以输出10 在下面你输出 ($page + 1)这一句让php非常费解,你前面设定的$page为字符串(document.write(page)),现在又加1...

js和php在同一个文件中相互获取值的问题
最常用的大概要属ajax了,这里js向php发送的,和php向js回应的都是字符串类型的数据,这些字符串可以根据需要被转换成不同类型(对象,数字,bool值)。 把php输入到html中,js通过dom节点来访问和修改这些值,至于php如何接收这些值,不是直接丢到form里,get或post过去就结束了么? 极端情况的话,也可以直接把php的值输出...

php js引用绝对路径的问题
我们说的绝对路径是指相对于网站根目录而言的。即据对路径是以“\/”开头的路径。假设你的网站目录是www目录,下面有个index.php文件以及一个js目录,js目录下有个a.js文件,那么你在index.php中调用js的时候,使用据对路径调用js应该是:\/js\/a.js,如: 使用相对路径可以用下面两种方式: 我看你...

初学php,在html与js写界面是,经常会发生js代码没有执行的情况
用谷歌浏览器来调试,运行JS代码前先右键打开审查元素 再点击console窗口,有错误的话,那里会报告的。或者,用火狐浏览器,安装firebug插件也有相应的功能。

同一php文件中,如何将Js代码中的变量,传递到php代码中。
你没理解 js\/php 运行时的顺序和逻辑.js仅在 浏览器中运行.php 仅在服务器端运行.2者交互, 通常通过 http get\/post 协议进行交互.因此, 要将 js 变量传输到 php, 需通过 get\/post 将参数传入.譬如: function test(){ var x="abc";.ajax("test.php?x="+x);} 而 test.php 中, 通...

php 弹窗问题,望大牛指点!!!
首先说这应该算是一个js问题 一个php的内容都是在服务器端执行的 涉及到页面动态交互功能都是属于js范畴 即便是ajax也是通过ajax重新进行了一次php请求 与前一次php请求没有任何关系 <?phpecho "alert('sucess'); window.location.href = 'http:\/\/127.0.0.1\/saver.asp';";?>你的问题可以按...

php js跨域请求,并设置cookies
阁下的问题,只是获取COOKIE时间,那么可以直接通过JS抓取目标页或JSON获得。而B域名的cookies.php,完全不需要访问index.php来获得上一个COOKIE的时间,因为它们是同一个站,index.php能访问到的COOKIE,cookies.php也能访问到。B域名的cookies.php参考如下(仅供参考,具体请根据自己情况另行写代码):if(...

JS传值给PHP问题请教
post 或者 get 或者个 a.php?id=值 在 a.php页面就可以用 $_GET['id']; 来获取值 不想刷新页面的话 可以用 ajax 方式 与a.php 通讯 参考资料:http:\/\/blog.wumashi.com

相似回答
大家正在搜