1#楼 |
|
|
回复人:一起PHP |
注册时间:2004-02-27 |
主题/回复:247/1521 |
积分:4649 |
等级:★★★★★☆(十一级) |
称号:论坛圣人 |
|
|
|
1#楼 发表于2005-04-22 17:33:29
评分:1
|
|
|
2#楼 |
|
|
回复人:一起PHP |
注册时间:2004-02-27 |
主题/回复:247/1521 |
积分:4649 |
等级:★★★★★☆(十一级) |
称号:论坛圣人 |
|
|
|
2#楼 发表于2005-04-22 17:34:03
评分:♂
|
|
|
3#楼 |
|
|
回复人:一起PHP |
注册时间:2004-02-27 |
主题/回复:247/1521 |
积分:4649 |
等级:★★★★★☆(十一级) |
称号:论坛圣人 |
|
|
|
3#楼 发表于2005-04-22 17:37:26
评分:♂
|
|
我的机器没有什么问题,我的代码中是在回复和发帖的时候加了一个判断
把现在的时间和上次发帖时间相减,如果小于30秒则不允许发表新的。
我在这里运行是正常的,时间提示也是正确的。
你可以关闭所有和本站有关的IE窗口,然后重新登陆试一下。由于上次发帖时间是保存在session中的,有可能和开多了窗口混了有关。 |
|
4#楼 |
|
|
回复人:一起PHP |
注册时间:2004-02-27 |
主题/回复:247/1521 |
积分:4649 |
等级:★★★★★☆(十一级) |
称号:论坛圣人 |
|
|
|
4#楼 发表于2005-04-22 17:49:51
评分:♂
|
|
代码用的下面的代码:
--------------------------
$a=new now;
$t=mktime($a->getdatetime()); //这是获得当前的时间格式是yyyy-mm-dd h:m:s
if(($t-$_SESSION["lastsend"])<30){
echo "<script language=javascript>alert('Sorry!每次发帖必须间隔30秒以上!');history.go(-1);</script>";
exit;
}
$_SESSION["lastsend"]=$t;
---------------------------
如果是本次登陆以来的第一次发帖,那么$t-$_SESSION["lastsend"]的结果就是$t,肯定大于30,发帖成功,如果现在时间减去上次发帖时间小于30,则提示错误。
海天旭日帮忙看一下有没有问题。
|
|
5#楼 |
|
|
回复人:lather |
注册时间:2005-04-21 |
主题/回复:37/63 |
积分:1079 |
等级:★★★☆(七级) |
称号:论坛贤士 |
|
|
|
5#楼 发表于2005-04-22 18:25:20
评分:1
|
|
我菜一下:
看你的程序我看不出问题,是不是now中的getdatetime()函数编写有错误
还有是不是$_SESSION["lastsend"]的记录有问题???
本人菜得很,发言只供参考! |
|
6#楼 |
|
|
回复人:lather |
注册时间:2005-04-21 |
主题/回复:37/63 |
积分:1079 |
等级:★★★☆(七级) |
称号:论坛贤士 |
|
|
|
6#楼 发表于2005-04-22 18:29:59
评分:♂
|
|
|