关于站内短消息的程序的开发

王志勇 发表于 2009年05月27日 20:53

这是我编写的站内短消息程序http://e.orshu.com/send/5001。

我在2007年开发完成了第一个站内短消息的程序,用于一个行业的网站,当时开发这个程序大约用了半个月。那个功能做得比较细,比如可以查找好友,添加/删除好友,好友列表调序,允许未注册用户发送短消息,信息回复,单条/全部删除信息,防止重复发送。

前天使用PHP重新编写了这个程序,把以前用户不常用的功能都去除,仅保留重要的功能。用了大约一天的时间,这个站内短消息程序完成。PHP的程序比较简化,自己编写的程序清晰可见,更简单易用,所以大大提高了开发速度,我觉得PHP的开发速度至少是ASP的2~3倍。PHP最主要的优势是程序简化,include()函数很强大,很多网站都是使用PHP开发,服务器租用价格低。

PHP的include()函数的优秀之处在于,include的括号中可使用参数,例如include("../$auf/cg.php");,当include在条件语句中,不符合条件时,不会调用该包含文件,例如测试时把cg.php文件删除,当不符合if的条件时,程序不会报错。例如if ($auf==3) include("../iou/cg.php");,当$auf不为3时,不会调用cg.php。

include()函数使用参数,以及使用if语句来判断是否调用的好处在于,当一个程序页面的访问量大时,可以节省服务器资源。也就是节省了母程序页面的字节,将一个大片的if判断区域写成一个.php文件,然后被判断语句调用是否包含。

祝你早日掌握PHP!

15条评论:
1   freetao 2009-05-28 09:16
强人啊。。
2   minchao 2009-05-28 23:25
不知道作者想表达什么?
展现自己写的程序?
说要共享?
宣传自己的网站?
3   自由勇 2009-05-29 06:54
2楼,你初来这里,你是不谦虚的初学者,这样不友好地质问,有趣么?不知道你第一次在这里留言,是认真的,还是spam(“垃圾评论”)?像你这样通过质问,或者贬低别人来抬高自己,讲过头话,这样的人有很多,希望你以后不要再来这里留言了。你在深圳呆上几年,感受一下这里的压力,自然会明白。
你认真看一下文章,就会明白在表达什么。我不想长篇地表达,节省读者的时间,用简短的语言。回答你的几个问题:
1. 想表达的是,我的站内短消息的程序的功能简介,新的程序删去了一些功能;PHP的开发速度确实更快,大家都可以学;include()函数的2个优秀之处。
2. 我不需要展现自己写的程序,比我写得好的人有很多。博客有说话的权利,也有记日记的权利。
3. 哪部分是属于分享,内行的人自然会明白。你没有看明白可以友好地提问,如果让你觉得不舒服,不要留言就是了,这里没有任何给你带来损害的内容,我已经付出了很多,也没有向你索取什么。
4. 此篇的分享部分占50%,宣传占50%,我们也要生存。
4   华晨 2009-06-04 11:19
看到博主一天就重写好了一个程序,我很是佩服,我就只有一次完整地用PHP写程序,那次是写的是CMS,花了四整天的时间做的,几乎废寝忘食的那种,而且是模仿别人的样式做的,而且没有拓展性。很佩服博主,向博主看齐!另外,只听我爸爸说过一线城市压力紧张,没想到真是这样,不过博主可以考虑到压力小点的城市呀,比如苏州,嘿嘿。你觉得呢?
5   自由勇 2009-06-04 11:50
是的,开发程序需要用废寝忘食的方式。集中精力连续开发程序,可以缩短开发时间,可能会缩短几倍,几十倍的时间。
6   自由勇 2009-06-04 11:57
我去年花了5个月的时间开发的一个网站,每天废寝忘食地编程,大约花了1200个小时,功能很丰富,在去年11月份开通。但是访问量不理想,于是决定关闭了。
今年重新开发一个网站,省去了很多的功能,废寝忘食地工作大约4天的时间,网站上线。PHP的确是一种更快速开发的语言,节省了很多的开发时间。
苏州我没有去过,呵呵。将来不大可能去苏州定居,因为我的家人在河北。
7   华晨 2009-06-04 12:41
请问博主,你的博客的后台是用的什么来提醒有新评论了呢?是不是发邮件到QQ邮箱呢?因为QQ有邮件提醒功能的。还有我暑假决定开发一个网站,不知道能不能完成,如果完成了我到时候想请博主看看并提一些意见或建议,不知博主是否能有时间帮忙看一看,谢谢!
8   自由勇 2009-06-04 13:04
建立一个数据库,例如有新的评论,某字段的值例如$auf增加1。
网站的后台的首页调用这个数据库,后台首页写入这句<?if ($auf){}?>即当$auf不为零时,会提示有新的信息。
然后,查看最新评论时,写入<?if ($auf){
//给$auf的值清零。即已经查看了最新评论,$auf的值清零,不再出现提示。
}?>
所有的最新提示,例如信息反馈,最新注册用户,最新的订单等等,都是使用这一原理。如果有多个网站,可以使用iframe调用每个简化过的管理后台,不用一个一个网站地打开管理后台。只要有新的提示,都能看到。
好的,到时候请发网址给我。祝你的网站成功!
9   自由勇 2009-06-04 13:11
我在最初编程的三四年里,都没有做这样的后台,查看最新数据都要每个页面去看,花费了很多的时间。现在把提示都集中在一起,无论有多少个最新提示,都可以直接看到。
10   华晨 2009-06-05 22:11
那个$auf变量查看评论后清零是关键,学习了,谢谢!
我到时候做好了一定发网址给你,再次谢谢了!
11   Saturn 2009-06-06 01:25
像2楼这样的留言,直接无视即可,没有必要较真。
博客这东西本就是表达主人自己的意愿和想法,违背此条,博客就失去其意义了。
其实这篇文章对于那些从ASP转向PHP编程的朋友还是比较有帮助的,至少它说明了在PHP中可以动态的选择Require/Include一个文件,而这在ASP中是很难实现的。
12   自由勇 2009-06-07 22:04
2楼没有再回来了,应该是一条spam,为他的博客做宣传。
2楼这种通过攻击别人的宣传方式是恶劣的。
13   lee2k 2009-12-07 01:52
你好,朋友,我是来自csdn的lee2k.最近正寻找优秀的站内信的设计方案.

添加/删除好友,好友列表调序,允许未注册用户发送短消息,信息回复,单条/全部删除信息,防止重复发送。

这些都是很不错的功能.不过.目前在下正寻求着如何解决数据亢余问题.

主要是"一对一"和"一对多"的处理,一对一,是属于普通的消息而已,而一对多则是所说的广播或公告信息.主要是这一对多的.

如果对每个用户都添加一条消息记录,这样管理员在后台创建公告消息的时候,可能一下子会产生数十万条的数据记录增加.

对此,我调查了挺多方法,但没有一个比较理想的.希望得到您的帮助.如果您有独特的方法,希望能说下思路.和我分享一下.

十分感谢.

14   自由勇 2009-12-07 09:00
13楼的朋友好!如果我开始此类“一对多”的站内消息群发,我设想中会用这2种方法:
1、对部分用户的群发,例如给30位好友群发,每位用户对应的数据库增加一条记录。
2、对全体用户的群发,专门建立一组数据库,用来储存全体群发的消息。当这个数据库有新的消息,则给每位用户提示。这样,不用每位用户都单独发送。
15   lee2k 2009-12-08 00:02
嗯.您的建议我也有想过.特别建立个公共用的message_sys数据表,这样的方法,就是把一对一和一对多的消息区分开来了.我继续去探索些其他方法.感谢您的建议.

抱歉,评论已关闭。

王志勇:1980-09-26 (38周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2018年11月
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2018 auiou.com All rights reserved.
此Blog程序由王志勇编写 已经发布在Arsue