我有一段代码如下:<?php
class submitFunc{
static $a;
function submitFunc(){
}
function testFunc(){
$this->a++;
echo "\n a = ".$this->a;
}
}
extract($_POST);
extract($_GET);if ($act == "subok"){
$monitor = new submitFunc();
$monitor->testFunc();
$monitor->testFunc();
$monitor->testFunc();
}
?>
<form name="form1" method="post" action="?act=subok">
<input type="submit" value="提交">
</form>
================ 当我第一次点击“提交”按钮以后出现:
a = 1 a = 2 a = 3
可我第二次点击“提交”按钮以后还是出现:
a = 1 a = 2 a = 3我希望的效果是:
当我第一次点击“提交”按钮以后出现:
a = 1 a = 2 a = 3
第二次点击“提交”按钮以后出现:
a = 4 a = 5 a = 6
class submitFunc{
static $a;
function submitFunc(){
}
function testFunc(){
$this->a++;
echo "\n a = ".$this->a;
}
}
extract($_POST);
extract($_GET);if ($act == "subok"){
$monitor = new submitFunc();
$monitor->testFunc();
$monitor->testFunc();
$monitor->testFunc();
}
?>
<form name="form1" method="post" action="?act=subok">
<input type="submit" value="提交">
</form>
================ 当我第一次点击“提交”按钮以后出现:
a = 1 a = 2 a = 3
可我第二次点击“提交”按钮以后还是出现:
a = 1 a = 2 a = 3我希望的效果是:
当我第一次点击“提交”按钮以后出现:
a = 1 a = 2 a = 3
第二次点击“提交”按钮以后出现:
a = 4 a = 5 a = 6
解决方案 »
- 如何给上传文件加限制
- 没分了,但是还得问,请大家帮忙:怎样自动检测如果当前页没有被设置为首页,则在关闭ie的时候自动弹出提示窗口,怎么作?
- mysql 不能執行這樣的 sql 語句嗎,請大家幫忙看看!!select customer_id from so where custoemr_id in (select customer_id from so limi
- 怎样在php中,将字符串ip转换成整数型的ip?
- ☆☆☆请大家谈使用PHP开发时较好的技术,以及MVC结构的使用☆☆
- php里面有没有可以判断不同的主机的文件是否存在的函数?
- 请问:用phpmyadmin2.2.2如何备份数据库为.sql文件?
- 请给我一个session使用的例子!我在等着呢!
- 关于php数组的问题
- arr多维判断加删除怎么写?
- php 读取文件怎么优化
- 请教一个查询命令
你想要的效果是在一次请求里面多次执行到这个地方如有a.php
<?phpfoo();
//foo();
//foo();function foo() {
static $a; $a++;
echo $a;
}
?>
你每次访问a.php都只会输出1
若把两个注释去掉,那么每次访问都会输出123,这是static的用法你应该通过其它方式记录,比如cookie session 或者共享内存
如果你确实希望能一步一步提交,最后一次再保存所有的东西,可以考虑下列方法将前一步所得到的内容做成hidden放在这一步的页面上
在数据库使用临时表记录每一步的内容
使用共享内存记录每一步的内容>我在想是不是有一种类,可以在窗体关闭以前都有效的呢?
我个人没有听说过这样的类,但是cookie 和 session都可以通过某种设置达到类似的目的
>在数据库使用临时表记录每一步的内容
>使用共享内存记录每一步的内容php可以使用共享内存吗?我去查一下,呵呵
将前一步所得到的内容,加密或者序列化,做成hidden放在这一步的页面上.net就是这么做的.
或者将前一步的内容保存进数据库里面.
<?php
class submitFunc{ static $a;
function submitFunc(){ } static function testFunc(){ if(!$_GET['a'==""]){ submitFunc::$a = $_GET['a']; }
submitFunc::$a++; echo "\n a = ".submitFunc::$a;
$_GET['a']=submitFunc::$a;}
}if ($_GET['act'] == "subok"){
$monitor = new submitFunc();
$monitor->testFunc();
$monitor->testFunc();
$monitor->testFunc();
}?>
<form name="form1" method="post" action="oop.php?act=subok&a=<?php echo $_GET['a'];?>">
<input type="submit" value="提交">
</form>