• ----:)欢迎访问源码网(:----
    • 首页
    • 博客
    • 学院
    • 下载
    • 论坛
    • 影视
    • 发布源码
    • RSS
    • ITPig
    • 笑话网
    • 百家姓
    • 繁體中文

源码网 - 中国第一源码门户
选择镜像:网通镜像 - 电信主站
  • 首 页
  • 新闻动态
  • 网站运营
  • 网页制作
  • WEB开发
  • 编程开发
  • 图像媒体
  • 操作系统
  • 数据库
  • 服务器
热门搜索 优化 SEO 故事 cms IIS7 MySQL 个人 AdSense 主题推广 | 文章搜索: 高级搜索
会员登录/控制面版您的位置: 学院首页 >> WEB开发 >> PHP 开发 >> PHP接触 >> 详细内容
 

推荐文章

 
 

热点文章

  • 主流PHPBlog程序之2005
  • PHP新手总结的PHP基础知识
  • PHP高手之路
  • PHP入门指导:如何学习PHP?
  • PHP比ASP优秀的七个理由
  • 新手遇到编程问题的解决方法
  • Zend Framework使用实例
  • PHP是一种没有前途的嵌入式脚本语
  • 致php初学者
  • PHP开发中session应用详解
  • 关于ZendOptimizer
  • php和asp对象的等价关系
 
 

相关文章

 
 

百度搜索

 
 

我学php从自动摇奖系统开始…

  • 阅览次数:
  • 文章来源: CP整理
  • 原文作者: 不详
  • 整理日期: 2006-10-09
  • 发表评论
  • 字体大小:
  • 小
  • 中
  • 大

巧合,这种东西我可没写过,而且我也是刚学php,好多语法都不是简单的。有些功能用函数能实现的我却非要自己写一个函数来用………真丢人,不过给新手一个学习过程的提示吧。
自动摇奖系统:24小时内不能重复IP,先从这里开始。
$ip=getenv("remote_addr");///取IP值存入$ip,当然,ip的格式是2.2.2.2啊。但是要把ip记录下来……一个文件里就要有几万行了。麻烦。我把ip的最后一位取下来,做文件名来用。这样就有255个文件了,每个文件里只存前三个类。
方法:$ipip=explode(".",$ip);把ip以.分段存入$ipip这个数组中。
这样,IP头就等于:$Head = $ipip[0].".".$ipip[1].".".$ipip[2];
打开文件时就可以用:$File = @fopen($Dir_File.$ipip[3].".txt","r");
用if ($File)做条件开始,这样可以在没有$Dir_File.$ipip[3].".txt"的时候自己用else来建立一个文件。
while(!feof($File))////当没有到文件尾时…
.........
$OldIP=explode("|",fgets($File,255));取出当前行来,因为txt里的格式是要用时间+IP来保存的,所以,中间用|来分格,这样,$OldIP就存了两个值。IP时间和IP C类。

 

$OldIP[0]用来做时间和现在的date("U")来比较过24小时的秒数86400了,就删掉当前行。没有的话就接着比较。
if (($Head."
")==$OldIP[1])
因为每一行最后有一个
的换行,所以要加上一起比吧。

这里有一个问题,就是删掉当前行上的时间+IP,这个……我是新学啊,不知道有没有函数可以直接做到,反正别人告诉我没有,我就自己写了一个。方法是用读数组的file();来读入数组变量。然后从要删掉的那个位置开始把后面的都向前移动。然后再写回去,注意,最后一个不写,就大功告成了。
function delete($Line_delete)
{//delete开始
global $ipip;///这些在前面都定义了的
global $ip;///这些在前面都定义了的
global $Head;///这些在前面都定义了的
global $Dir_File;///这些在前面都定义了的
$Filedelete = file($Dir_File.$ipip[3].".txt");

for ($i=$Line_delete;$i<count($Filedelete)-1;$i++)
{
$Filedate[$i]=$Filedate[$i+1];
}
$File_reputs=fopen($Dir_File.$ipip[3].".txt","w");
$reback_goto=count($Filedelete);
for ($i=0;$i<$reback_goto;$i++)
{
fputs($File_reputs,$Filedelete[$i]);
}
fclose($File_reputs);
}//delete 结束

如果哪位老大知道有直接删行的函数告诉我吧。

请又说回来。这个删除函数带入的值就是当前指针的位置,怎么做呢?


delete(ftell($File));

这样就行。

记得要关掉文件哦: fclose($File);


$File = @fopen($Dir_File.$ipip[3].".txt","a+");
if ($File)
{//222对应的括号
if ($qusi)
{//111
$StartTime=date("U")."|".$Head;
fputs($File,"$StartTime
");
}//111
fclose($File);
}
上边的都完事啦。如果全检查了也没发现这位老兄以前来过,那就把他的IP也加进去吧。上面的方法就行了。


至此,IP检测部分全都完成。其它部分就是产生一些随机数了,所以很简单。我也不用说了。
给初学者一个思路,如果有更好的方法,请一定要告诉我。我才学了几天php。哈哈~!!!!addoil!


忘记了最重要的事情,这个摇奖摇出来的是oicq号的密码,全部的靓号哦。
就连:13211313和13211314这样的情侣号都有呢。
(一生爱你一生一生/一生爱你一生一世)
想要的话就来吧,送给女朋友一个,她一定很开心。

http://yahoo.6to23.com

[cut]

【本文版权归原作者及奥索网共同拥有。如需转载,请注明原作者及出处】

上一篇:PHP使用zlib扩展实现页面GZIP压缩输出
下一篇:构建支持Master/Slave读写分离的数据库操作类
  • 网友评论:
  • 查看所有评论
  • 我要发表评论
您的网名:
留言主题:
你要发表的内容:

 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 发布软件 | 帮助中心 | 源码论坛

Copyright © 2005-2007 CodePub.Com  程序支持:木翼  滇ICP备05005971号