自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ugg的专栏

逸学堂-专注移动互联网

  • 博客(155)
  • 资源 (18)
  • 收藏
  • 关注

原创 广度不足,深度不够

其实一直觉得如此,尤其是最近这几天。不知道是对自己的要求提高了,还是之前一直没有意识到。最近,团队内要成立兴趣小组,参加了,凑个人数。前天,小组第一次会议,开完后后悔了。讨论了半天,不知道兴趣小组,将来是干什么的,没有远景,没有计划。成立兴趣小组的原因就是,“老大的意思”。然后手下的一群人开始活跃起来,码人,然后就要一群人被忽悠进来了。这群人可不是普通的人,可以说是目前团队的精英了,因为那

2009-06-25 15:25:00 5235 2

原创 关于内存的一些理解

使用top查看内存进程内存时,常常涉及到关于对VIRT,RES,CODE,DATA,SWAP,Swap(进程),虚拟内存,常驻内存(物理内存),代码段,共享内存,数据段等概念,今天自己研究一下,一方面是记录下来,另一方面,希望对同学们有参考的作用。TOP时,VIRT,RES,CODE,DATA各个字段说明如下SWAP,即我们安装操作系统时,设置的交换区大小,推荐位物理内存的1-2倍。Swa

2009-06-08 17:06:00 3607 1

原创 打造自己的checkinstall

相信使用过rpmbuild打包的读者,对整个打包过程都记忆犹新,这个过程对于一个新手来说是异常复杂的。不仅要需要学习spec格式文件的规 范,还要把文件先打包成tar,然后再把tar文件拷贝的到指定的目录过程去,最后执行rpmbuild命令。中间任何一步出错,都要从头再来。经过多次往返,才能打成一个rpm包。这一切复杂的过程,迫使你不等不找一种更

2009-05-26 16:10:00 6830 2

原创 杂项

关于团队,现在是一个团队的时代,不在乎个人能力的高强,需要的是有个强的团队。所以,要找最强的团队。关于态度,年轻轻狂,工作迷茫,总是找不到方向,心也浮躁。放下眼前的一切,静静的想,心平静了。感觉就要成功了。

2009-03-12 22:20:00 2129 1

原创 php实现验证码的识别(中级篇)

 在上篇文章php实现验证码的识别(初级篇)>中,讲了如何识别简单的验证,这里的简单只的是验证码有数字和字母组成,格式统一,每次出现位置固定。这篇文章将继续深入研究识别验证码,这次识别的目标是,验证码有字符和数字组成,验证码存在旋转(可能左右都旋转),位置不固定,存在字符与字符之间的粘连,且验证码有更强的干扰素。这篇文章讲解的方法,并不是万能的解决方案,并且提供代码不能

2009-03-09 12:39:00 56713 79

原创 php实现验证码的识别(初级篇)

近期研究一些突破验证码方面的知识,记录下来。一方面算是对这几天学习知识的总结帮助自己理解;另一方面希望对研究这方面的技术同学有所帮助;另外也希望引起网站管理者的注意,在提供验证码时多些考虑进去。由于刚刚接触这方面的知识,理解比较浅显,有错误再所难免,欢迎拍砖。验证码的作用: 有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试。其实现代的验证码一般是防止机器批量注册的,防止

2009-03-03 15:30:00 38752 41

原创 如何防止网站数据丢失

最近最闹心的事,就是呵呵笑话网的数据库中的数据丢失了,找空间提供商息壤理论,人家来个一推四六五,我们什么都没做,你的数据库自己挂了,我们不没有做操作。妈的,通过狗头息提供的phpadminmysql中的显示服务器运行时间,明明显示的是2009年2月2号xx时xx分启动运行。而我知道呵呵笑话网不能访问的时间,也是2月2号的晚上。狗头息真够意思,可能知道那天是我的生日,非要送我一份生日礼物,诚心给我找

2009-02-13 11:24:00 3524 2

原创 基于流模式长连接的简单实现

基于流模式的长连接我们可以做很多事情,比方说在局域网内,我们建立这种模式,可以时时传输数据,而不用每次传输数据是创建socket,传输完后,关闭socket。可以减少创建销毁socket的时间。基于流模式的下,数据一直在发送,我们需要知道,每次发送数据量,所以常见的方式时,我们在发送数据时,指定此次发送数据的长度,服务器读取流数据时,先读取数据长度,然后再按长度读取此次发送的数据。我使用selec

2008-12-18 15:08:00 2545 4

原创 C++流实现内幕---由boost::lexical_cast引发的一个问题

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <!-- /* Font

2008-11-26 17:06:00 7366 11

转载 linux程序退出时返回值的含义

#define SIGHUP   1 进程由於控制终端死去或者控制终端发出起命令 #define SIGINT   2 键盘中断所产生的信号 #define SIGQUIT   3 键盘终止 #define SIGILL   4 非法的指令 #define SIGTRAP   5 进程遇到一个追踪(trace)或者是一个中断嵌套 #define SIGABRT   6 由abort系统调用所产生的

2008-10-17 12:03:00 4051

原创 网站终于上线了

经过一个月的开发网站终于上线了,记录一下。基本功能已经完成,页面实现很简单.只是开始自己一起从头开始做,很多东西需要学习。html+css,还好有些php,mysql基础,所以,简单几个页面最后用了将近一个月。网站的定位面向纯文字信息,不会涉及到大量图片内容,基于这个考虑,所以,开发了专门针对PSP访问的wifi版(正好适合PSP的屏幕,当然其他支持wifi的手机也可以使用,但是我也不知道显示效果

2008-08-21 10:59:00 1819

原创 初探模板元编程

关于模板元编程的知识也有所了解,相关的书籍也看过几本,但是至今还没有亲手写过一个模板元程序,原因就是没有一个合适的机会应用模板元编程技术,今天在CSDN上看见一个帖子,定义常量字符串char *p="Hello,Word!";既然是常量字符串,应该可以在编译期知道p的长度,在编译期间如何得到?这个问题,我首先想到用模板元编程来实现,于是尝试编写一个。真正用模板元编程

2008-07-24 11:03:00 7329 3

原创 利用Socket提交文件到web server

    前一段时间开发一个WebDAV的客户端,主要是接受发送文件。因为只需要上传下载文件,所以不想使用curl这样重量级的库,所以,基于以上原因自己编写封装一个类,利用socket完成对文件的上传和下载,还可以使用内核函数sendfile实现文件上传时的“零拷贝”。在本例中,同样也给出使用curl方式对文件进行上传操作的方法。针对WebDav的开发还有一个专门的库neon,同样这里也给出使用ne

2008-07-22 14:10:00 1591 1

转载 UNIX/LINUX 平台可执行文件格式分析

可执行文件格式综述 相对于其它文件类型,可执行文件可能是一个操作系统中最重要的文件类型,因为它们是完成操作的真正执行者。可执行文件的大小、运行速度、资源占用情况以及可扩展性、可移植性等与文件格式的定义和文件加载过程紧密相关。研究可执行文件的格式对编写高性能程序和一些黑客技术的运用都是非常有意义的。 不管何种可执行文件格式,一些基本的要

2008-07-18 09:56:00 1311

原创 浮点性(float)转化为字符串类型 自定义实现和深入探讨C++内部实现方法

  写这个函数目的不是为了和C/C++库中的函数在性能和安全性上一比高低,只是为了给那些喜欢探讨函数内部实现的网友,提供一种从浮点性到字符串转换的一种途径。  浮点数是有精度限制的,所以即使我们在使用C/C++中的sprintf或者cout 限制,当然这个精度限制是可以修改的。比方在C++中,我们可以cout.precision(10),不过这样设置的整个输出字符长度为10,而不是特定的小数点后1

2008-07-17 16:30:00 7762

原创 据传微软面试题(一)

Q:有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在17分钟内这四个人都过桥?A: 第一步:AB过桥,A 返回,耗时 2+1 = 3    第二步:CD过桥,B返回,耗时10+2 = 12    第三步:AB过桥,耗时 2。累计 3+12+2=17Q:如果你有一个容量为

2008-07-07 21:28:00 1603

原创 程序设计方式 之 嵌套头文件包含方式

       一直以来写程序有个习惯,喜欢把常用的STL类,或者其他常用的类,变量,宏等定义到一个文件内,然后在使用其中一个类的地方包含这个文件。一直再使用,也一直存在困惑,这种设计方式的能否放心大胆的使用,对它始终心存畏惧,所有这些促使我完成这篇文章,并且经过种种测试,有足够的信心继续使用这种设计方式。       操作如下定义base.h文件,包含基本的STL类,并且通过typ

2008-06-23 17:27:00 5501 6

原创 四年了,工作的迷茫。

默然回首,到今年6月份已经大学毕业四年了,在社会的大学中已经学习了四年了!做了四年的程序员,偶尔也会做做项目经理。现在还是一个程序员,在看得见的将来还会是一个程序员。在某些人眼中,肯定认为我很失败,“四年了还是一个程序员,看这人混得”。其实现在的我感觉也很失败(姑且说失败吧),技术没有炉火纯青,工作没有节节高升,生活上撑不死饿不着,功没成,业没就,现在有的就是一份糊口的工作。四年,弹指一瞬间。

2008-06-20 13:21:00 2132 4

翻译 如何编写lighttpd插件

编写插件在开始编写插件之前,应该先熟悉lighttpd中两个基本数据结构以及他们所在文件: buffer (buffer.c) array (array.c) global structures (base.h) 接下来需要阅读: http://www.lighttpd.net/docume

2008-06-19 16:44:00 5009 2

原创 下载配置lighttpd

创建开发子目录 dev/,下载 Lighttpd 源代码并解压到其下,最新 Lighttpd 稳定版代码为 lighttpd-1.4.19: $ mkdir dev$ cd dev$ wget http://www.lighttpd.net/download/lighttpd-1.4.19.tar.bz2$ tar xjf lighttpd-1.4.19.ta

2008-06-19 16:35:00 4162

原创 PHP扩展导出类

php扩展导出类方式比较简单,可以在已经开发好的php扩展上直接应用,不会影响到原先的应用。只需要更改一下xxx.c(xxx为php扩展的C文件名)第一步,编写如下代码static zend_function_entry php_my_class_functions[] = { PHP_FALIAS(connect, my_connect, NULL) PHP_FALIAS(c

2008-06-17 18:27:00 1685

转载 apache, DSO原理

Apache HTTP服务器是一个模块化的软件,使管理者可以选择核心中包含的模块以裁剪功能。可以在编译时选择被静态包含进httpd二进制映象的模块,也可以编译成独立于主httpd二进制映象的动态共享对象DSO,DSO模块可以在编译服务器之后编译,也可以用Apache扩展工具(apxs)编译并增加。本文阐述如何使用DSO模块及其工作原理。工作原理DSO是Dynamic Shared Ob

2008-01-07 14:47:00 1702

原创 curl简单介绍

关于Curl的介绍很多,这里不详细介绍,主要谈一下简单应用。最近研究了一下Linux下的curl C API,最新版本为7.17,curl c API的文档比较丰富,唯一就是查找起来,费些时间。Curl的C API和curl的PHP API,函数接口和作用大致相同,所以如果有PHP API使用经验应该很好理解。       基于curl 的C API写了一个扩展C++ singleton类

2007-11-29 11:51:00 2753

原创 简单通用的makefile文件

########################################################################### 通用makefile文件# makefile规则# target ... : prerequisites ...#     command#   ...#   ...# target 是一个目标文件,可以是Object File,也可以是执行文件?

2007-10-26 16:10:00 1439

转载 unix中find命令部分实例

 find / -name httpd.conf find / -name access_log 2>/dev/null find /etc -name ‘*srm*’ find / -amin -10 # 查找在系统中最后10分钟访问的文件 find / -atime -2 # 查找在系统中最后48小时访问的文件 find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件 find

2007-06-21 14:36:00 4107

转载 股票在赚谁的钱?

 最近股市疯涨,看到一篇文章,比喻得很不错 转贴:“股票在赚谁的钱,蒸发是什么”以前看过一个故事,转过来看看能不能解答你的疑问。假设一个市场,有两个人在卖烧饼,有且只有两个人,姑且称他们为烧饼甲、烧饼乙。假设他们的烧饼价格没有物价局监管。假设他们每个烧饼卖一元钱就可以保本(包括他们的劳动力价值)假设他们的烧饼数量一样多。——经济模型都这样,假设需要很多。再假设他们生意很不好,一个买烧饼的人都没

2007-06-05 09:12:00 1712

原创 做技术要把自己变的单纯,做管理要把自己变圆滑

做技术要把自己变的单纯,做管理要把自己变圆滑曾几何时,自己也曾游刃于众多复杂的社会关系中,而现在却不会推销自己。做技术让人的想法越来越单纯,有时候感觉自己很傻,已经不会为人做事。也许在关注技术的同时,更应该去学习管理。有人问我三年内的目标是什么?技术专家有人问我你的优缺点是什么?…做了三年技术了,还没有好好想想自己的优缺点是什么,确实是做人的一项失败。仔细想想,我就是我。如

2007-05-28 10:17:00 3160 4

转载 跟我一起写 Makefile

陈皓 概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和 professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解 HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不

2007-05-23 14:53:00 13081 16

转载 GNU make 指南

 翻译: 哈少     译者按: 本文是一篇介绍 GNU Make 的文章,读完后读者应该基本掌握了 make 的用法。而 make 是所有想在 Unix (当然也包括 Linux )系统上编程的用户必须掌握的工具。如果你写的程序中没有用到 make ,则说明你写的程序只是个人的练习程序,不具有任何实用的价值。也许这么说有点儿偏激,但 make 实在是应该用在任何稍具规模的程序中的。希望本文可以

2007-05-23 14:37:00 1811

原创 《高质量C++C编程指南》纠错与拾遗(一)

使用C++/C编程的程序员,几乎都看过林锐博士写的《高质量C++C编程指南》这篇百页经书,并且通过阅读这篇百页经书,受益匪浅。我也是这篇文章的受益者。通过这篇百页经书,我学到很多知识,也给于了我深入学习C++的动力。最近,偶得机会,再次拜读林锐博士的《高质量C++C编程指南》,发现里面有些观点颇有争议,本文作者对这些观点进行的了考证,整理,汇总,形成了此文档,这里绝无批驳,贬低《高质量C++C

2007-05-17 09:27:00 2004

转载 关于Debug和Release之本质区别

------------------------------------- 本文主要包含如下内容: 1. Debug 和 Release 编译方式的本质区别 2. 哪些情况下 Release 版会出错 3. 怎样“调试” Release 版的程序 --------------------------------------              关于Debug和Release之本质区别的讨论

2007-04-26 13:00:00 1530 1

转载 CRT 调试堆

本节内容内存管理和调试堆 描述堆函数的“Debug”版本。这些函数解决两个最难处理的内存分配问题:改写已分配缓冲区的结尾和内存泄漏(当不再需要分配后未能释放它们)。 调试堆中的块类型 描述在调试堆中内存块所分配到的五种分配类型。出于泄漏检测和状态报告的目的,以不同方式对这些分配类型进行跟踪和报告。 调试堆 提供有关使用调试堆的信息。信息包括:哪些调用用于“Debug”版本,释放内存块

2007-04-26 11:59:00 5298

转载 类似TM名片对方形象tabctrl(属性页)的实现

使用QQ公司的IM聊天时,聊天窗口右侧“名片/对象形象”Tabctrl做的非常漂亮,最近公司在方面也涉及到此问题。所以对IM的这种实现方式做了一些了解。使用spy++,发现IM的这个tabctrl并不是从MFC中的CTabCtrl继承而来,属于腾讯自己实现的。而我的做法是尝试采用CTabCtrl类来实现这种方式,并且最后我也给出了这种方式的实现。IM的tabctr与普通的tabctrl的一

2007-04-19 10:35:00 2121

原创 systemparametersinfo参数说明

SPI_GETACCESSTIMEOUT lpvParam是一个ACCESSTIMEOUT结构,其中要载入辅助访问特性计时信息。在调用函数之前,uParam必须设为ACCESSTIMEOUT结构的大小 SPI_GETANIMATION lpvParam是一个ANIMATIONINFO结构,将在其中载入窗口最小化和恢复时的动画信息。不能在NT 3.51中使用 SPI_GETBEEP lpvP

2007-04-18 17:05:00 2838

原创 VC常用技术新编

以下技术,只提供函数名和简单应用事例。详细内容参看MSDN,事例中的代码如无特别说明版权归microsoft所有1:判断窗口最小化最大化状态       最小化到任务栏使用IsIconic()函数判断       最大化通过IsZoomed()函数判断       GetWindowPlacement(),调用此函数可以获取窗口的正常状态,最大化,最小化。通过WINDOWPLACEMENT结构

2007-04-11 15:04:00 1732

原创 基于C语言的内存池的设计与实现

介绍:       设计内存池的目标是为了保证服务器长时间高效的运行,通过对申请空间小而申请频繁的对象进行有效管理,减少内存碎片的产生,合理分配管理用户内存,从而减少系统中出现有效空间足够,而无法分配大块连续内存的情况。目标:    此次设计内存池的基本目标,需要满足线程安全性(多线程),适量的内存泄露越界检查,运行效率不太低于malloc/free方式,实现对4-128字节范围内

2007-03-27 21:34:00 14853 8

转载 BSTR内存结构

COM 中除了使用一些简单标准的数据类型外,字符串类型需要特别重点地说明一下。还记得原则吗?COM组件是运行在分布式环境中的。通俗地说,你不能直接把一个内存指针直接作为参数传递给COM函数。你想想,系统需要把这块内存的内容传递到“地球另一边”的计算机上,因此,我至少需要知道你这块内存的尺寸吧?不然让我如何传递呀?传递多少字节呀?!而字符串又是非常常用的一种类型,因此 COM设计者引入了BASIC中

2007-03-22 10:04:00 3254

转载 很幽默的讲解六种Socket I/O模型

很幽默的讲解六种Socket I/O模型 信息来源:幻影论坛     作  者: flyinwuhan (制怒·三思而后行) 本文简单介绍了当前Windows支持的各种Socket I/O模型,如果你发现其中存在什么错误请务必赐教。一:select模型二:WSAAsyncSelect模型三:WSAEventSelect模型四:Overlapped I/O 事件通知模型五

2007-03-22 09:53:00 1800

转载 性能计数器参考

计数器参考有两种协议允许访问性能计数器,可以在使用其中某个协议的性能监视器、第三方客户端软件或自定义应用程序中查看计 数器数据。这两个协议是简单网络管理协议 (SNMP) 和性能数据帮助器 (PDH),下表对这两种协议进行了比较。协议帮助器文件一定不能编辑。若要编写自己的自定义应用程序访问性能计数器,可将帮助器文件作为参考。可在 MSDN 联机资料库中找到有关两个协议的接口的说明。

2007-03-12 16:19:00 2877

转载 VC++多线程下内存操作的优化

许多程序员发现用VC++编写的程序在多处理器的电脑上运行会变得很慢,这种情况多是由 于多个线程争用同一个资源引起的。对于用VC++编写的程序,问题出在VC++的内存管理的具体实现上。以下通过对这个问题的解释,提供一个简便的解决方 法,使得这种程序在多处理器下避免出现运行瓶颈。这种方法在没有VC++程序的源代码时也能用。 问题C和C++运行库提供了对于堆内存进行管理的函数:C提供的是mal

2007-03-12 14:37:00 2191

高级验证码识别

验证码识别,自动生成keys,帮别人写的,别人又重写的。

2015-07-23

非输入区键盘消失的方法

触摸非输入区(背景)使UITextField(UISearchBar)键盘消失的三种方法代码

2012-02-09

在UITableView中自定义UITableViewcell实现ibooks图书列表样式

通过自定义UITableViewCell实现ibooks的图书列表样式。

2012-02-06

IE扩展插件订餐系统

一个IE扩展插件,主要实现一键登陆某网站,并完成相关的操作,需要修改代码设置登陆网站账号密码。

2011-09-08

Chrome扩展插件订餐系统,可方便扩展其他系统

一个chrome扩展插件,主要实现一键登陆某网站,并完成相关的操作,可以自动设置登陆网站账号密码。通过本系统可以方便修改为登陆其他网站,执行其他相关操作,比如登陆某火车票网站,自动抓取特定的火车票信息等等。

2011-09-08

FF扩展插件订餐系统,可方便扩展其他系统

一个Firefox扩展插件,主要实现开启FF后,自动登陆某网站,并完成相关的操作,可以自动设置登陆网站账号密码。通过本系统可以方便修改为登陆其他网站,执行其他相关操作,比如登陆某火车票网站,自动抓取特定的火车票信息等等。

2011-09-08

IPhone 的toolbar 和 tabbar 的图标资源

IPhone 的toolbar 和 tabbar 的图标资源

2010-07-07

dezenderGUI zend解密软件

解密经过zend加密的文件,比如shopex里面的某些文件,可以通过此软件解密。

2010-01-04

php实现验证码的识别(修正版)

这个版本的识别码http://download.csdn.net/source/1084418的修正版,只要稍加训练就可以实现上个版本的功能,这个php实现验证码中级篇,增加二值化去杂点的操作,解决两个字符粘连问题,可以识别旋转字符,并且具有一定的学习功能,并提供了bmp到jpeg的转换方法,目前这个方案应该可以应付90%的互联网验证码识别工作。这个版本不能直接应用商业化,只是提供一种方法,你可以根据自己的需求修改。另外:此代码切勿用于非法用处,违者引起的一切后果自负。

2009-10-20

php实现验证码的识别(修正版)

这个版本的识别码,是http://download.csdn.net/source/1084418的修正版,fix一些bug,只要稍加训练就可以实现上个版本的功能,这个php实现验证码中级篇,增加二值化去杂点的操作,解决两个字符粘连问题,可以识别旋转字符,并且具有一定的学习功能,并提供了bmp到jpeg的转换方法,目前这个方案应该可以应付90%的互联网验证码识别工作。这个版本不能直接应用商业化,只是提供一种方法,你可以根据自己的需求修改。另外:此代码切勿用于非法用处,违者引起的一切后果自负。

2009-10-20

一步一步SEO - 一步一步搜索引擎优化

SEO,对大多人来说是个有意思的话题,不过似乎只要和搜索引擎沾边的话题都是有意 思的,谁让现在搜索引擎火那。对于绝大多数中小网站管理者来说,想推广,就想到SEO, SEO 似乎是一道神秘的灵符,只要用上它,可以保证我们的网站一夜之间流量直线上升, 其实这是错误的遐想。本文作者结合其自身站点的一些经验,以及借鉴网上的一些成功经验, 逐步揭开SEO 的神秘面纱,还原SEO 的本质,让大家对SEO 有个清醒的认识,相信自己 也可以成为SEOer

2009-07-15

checkinstall_cn

checkinstall_cn,是经过改造后的checkinstall,不但修复了md5验证的bug,而且开发了一种新的文件格式,更加方便打包。

2009-05-26

php实现验证码的识别(中级篇)

这是我写的php实现验证码的识别(URL:http://download.csdn.net/source/1063621)的继续,这个版本的识别码,只要稍加训练就可以实现上个版本的功能,这个php实现验证码中级篇,增加二值化去杂点的操作,解决两个字符粘连问题,可以识别旋转字符,并且具有一定的学习功能,并提供了bmp到jpeg的转换方法,目前这个方案应该可以应付90%的互联网验证码识别工作。这个版本不能直接应用商业化,只是提供一种方法,你可以根据自己的需求修改。另外:此代码切勿用于非法用处,违者引起的一切后果自负。

2009-03-08

php实现验证码的识别(初级篇)

近期研究一些突破验证码方面的知识,记录下来。一方面算是对这几天学习知识的总结帮助自己理解;另一方面希望对研究这方面的技术同学有所帮助;另外也希望引起网站管理者的注意,在提供验证码时多些考虑进去。由于刚刚接触这方面的知识,理解比较浅显,有错误再所难免,欢迎拍砖。

2009-03-03

php版mysql数据库备份恢复代码

最近呵呵笑话网的数据库丢了,没办法空间提供商死活恢复不了数据库,态度还极其恶劣。而提供商提供的phpadminmysql导出数据库又有2m的限制,只能自己写一个数据库备份恢复类了。这是我借鉴网上提供的一种方法,修改了其中的timestamp部分,希望对大家有所帮助。

2009-02-13

基于流模式长连接的简单实现

基于流模式的长连接我们可以做很多事情,比方说在局域网内,我们建立这种模式,可以时时传输数据,而不用每次传输数据是创建socket,传输完后,关闭socket。可以减少创建销毁socket的时间。 基于流模式的下,数据一直在发送,我们需要知道,每次发送数据量,所以常见的方式时,我们在发送数据时,指定此次发送数据的长度,服务器读取流数据时,先读取数据长度,然后再按长度读取此次发送的数据。 我使用select复用IO机制实现了一个简单的client,server机制,希望对初学者有帮助

2008-12-18

USocket

前一段时间开发一个WebDAV的客户端,主要是接受发送文件。因为只需要上传下载文件,所以不想使用curl这样重量级的库,所以,基于以上原因自己编写封装一个类,利用socket完成对文件的上传和下载,还可以使用内核函数sendfile实现文件上传时的“零拷贝”。在本例中,同样也给出使用 curl方式对文件进行上传操作的方法。针对WebDav的开发还有一个专门的库neon,同样这里也给出使用neon库完成文件上传操作的方法。

2008-07-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除