民勤县泉山镇学校:关于php编程

来源:百度文库 编辑:高考问答 时间:2024/05/09 09:39:50
谁能告诉我怎么用php实现禁止刷新页面?我有一个计数器的代码,怎么让它不通过刷新进行计数?代码如下:
<?php
setcookie("WriteExpire","Expire in 1 second",0);
$countfile = "counter.txt";
if(($fp = fopen($countfile,"r+")) == false){
printf("open file %s failed!",$countfile);
exit;
}
else
{
$count = fread($fp,10);
$count = $count+1;
fclose($fp);
$fp = fopen($countfile,"w+");
fwrite($fp,$count);
fputs($fp,$fg);
echo "<div align=center><font size=5>计数器:$count</font><br>";
$fp = fopen($countfile,"r");
$array_count=1;
while(!feof($fp)){
$current_number=fgetc($fp);
$counter_array[$array_count]=$current_number;
$array_elements=count($counter_array);
$array_count=$array_count+1;
}
echo "<div align=center><font size=5>计数次数 :";
for ($array_id=1;$array_id<$array_elements;++$array_id){
echo "<img src=countimg/".$counter_array[$array_id].".gif>";
}
echo "</font>";
fclose ($fp);
}

?>
</body>
</html>

$count = fread($fp,10);

// 如果cookie不存在或ip地址不等于cookie里设置的ip地址,计数
if(!isset($_COOKIE["xxxxxx"]) or $_SERVER["REMOTE_ADDR"]!=$_COOKIE["xxxxxx"]){
$count = $count+1;
fclose($fp);
$fp = fopen($countfile,"w+");
fwrite($fp,$count);
fputs($fp,$fg);

// ++ 成功,设置cookie,一天的存活周期
@setcookie("xxxxxx",$_SERVER["REMOTE_ADDR"],time()+3600*24);
}

改一下,试一下。把第一行的setcookie注释掉吧。

用session。一打开页面就给session赋值。判断是否有值。