C#验证码生成
2012年01月20日 标签:C#验证码,ValidateCode做网站开发,验证码是必不可少的东西,目前实现验证码的方法也很多,
封装的控件太过死板,用起来不方便,没法改。
下面我提供一个验证码功能,把函数写在一般处理页里,当成图片输出就可以了!
1、新建ValidateCode.ashx
using System;
using System.Web;
using System.Text;
using System.Drawing;
using System.Drawing.Imaging;
using System.Web.SessionState;
using System.Data.Sql;
using System.Web.Management;
public class ValidateCode : IHttpHandler, IRequiresSessionState
{
Color[] colors ={ Color.Orange, Color.Gray, Color.Green, Color.Gold, Color.White, Color.LightPink, Color.Blue, Color.Black };
public void ProcessRequest(HttpContext context)
{
//sb保存验证码的值
StringBuilder sb = new StringBuilder();
Random random = new Random();
for (int i = 0; i < 4; i++)
{
sb.Append(random.Next(0, 10));
}
context.Session["ValidateCode"] = sb.ToString();
Bitmap image = new Bitmap(55, 22);
using (Graphics graphics = Graphics.FromImage(image))
{
graphics.Clear(Color.White);
Font font = new Font("Arial", 15, FontStyle.Bold | FontStyle.Italic);
graphics.DrawString(sb.ToString(), font, Brushes.DarkOrange, 0, 1);
for (int i = 0; i < 3; i++)
{
Point p1 = new Point(random.Next(1, image.Width - 1), random.Next(1, image.Height - 1));
Point p2 = new Point(random.Next(1, image.Width - 1), random.Next(1, image.Height - 1));
graphics.DrawLine(Pens.White, p1, p2);
}
for (int i = 0; i < 50; i++)
{
image.SetPixel(random.Next(1, image.Width - 1), random.Next(1, image.Height - 1), colors[random.Next(0, colors.Length)]);
}
image.Save(context.Response.OutputStream, ImageFormat.Gif);
//graphics.Dispose();
}
context.Response.ContentType = "image/gif";
}
public bool IsReusable
{
get
{
return false;
}
}
}
===========================================================================================
2、HTML页面
<img src="ValidateCode.ashx" alt="点击图片刷新验证码" id="imageid" height="22" width="55"style="color: blue; cursor: pointer" onclick="imageUrl()" /><a href="#"onclick="imageUrl()">看不清?</a>
<script>
//验证码
function imageUrl(){
var verify=document.getElementById(imageid);
verify.setAttribute(src,ValidateCode.ashx?+Math.random());
}
</script>
============================================================================================
3、完成,在后台验证Session["ValidateCode"] 就可以了!
这个方法很灵活,可以改成你喜欢的任意风格,主题的颜色也可以和你设计的网页相同,十分完美!
源码下载:http://www.aixinxian.com/My/MyFileInfo.aspx?id=11
初识电子商务
2012年01月19日 标签:电子商务,八里台新文化广场,商拓时间过得飞快,几个月的实习期满,
在这几个月的时间里,学会的PS,CSS+DIV,也算小有所成!
08年正式大学毕业,难道的学士学位,准备走出门,找工作!
我地个妈,也不知道是我时运不计还是怎么样,这年的毕业生相当的多,每次去招聘会都是人山人海,找工作那段时间真是叫我刻骨铭心!
为了表示对那段日子的纪念,贴图一张

找工作遇到同样场面的举手!
呵呵,估计那几年毕业的学生都会有所感触,
我的犹豫实习期的优秀表现,是我找份工作并不难了,仅仅3天的时间,我就确定了工作,当时也没考虑前景什么的,
看看上图你就知道,只要管顿饭的工作,都会挤破头,所以我方式也没考虑太多,
第一份正式工作,是在一个集团公司的网路发展部做新项目开发,也正式这次机会让我接触到了电子商务。
来秀一下第一份工作开发的网站

公司下面的企业站

以实体作为依托的电子商务,
好了,更具体的功能设计,需求分析的事就不多讲
应该能够看的出来,至少从美术设计角度比实习的时候还是进步了许多的,不再只会使用大片大片的图块,开始注重元素的细节,如纹理、质感、光线等因素。
提到这个,那时接触的大师级设计,
下面是大师为我们这个项目设计的卡通形象:

现在看起来依然很酷!!大师就是大师!
设计的第一个LOGO
2012年01月19日 标签:LOGO设计,勋章,蓟州情缘人应该有个好的习惯,特别是设计人员,要将自己以前的作品尽数保留下来,可是本人,一直都没太在意,
所以现在能找到的作品不多了,仅剩一些刻意留下的,对我有些纪念价值的东西。
LOGO设计其实接触的比较少,下面是我做的第一个LOGO

这个作品有很大程度是超别人的,但是最终效果我很满意,而且他让我学会了使用“钢笔工具”;
下面还有我做的第一个gif动画:
![]()
呵呵,给一个论坛设计勋章,现在看好像有点BUG,我记得以前效果还可以的!
工作第一单-傻四怪味麻辣烫
2012年01月19日 标签:麻辣烫,网页设计,工作雏稿,傻四怪味麻辣烫07年的年底,终于找到了一份工作,面试作品上文已经介绍过了,在一家很小的网络公司做杂工!
呵呵,顾名思义,什么活都干,没有固定职位。
老板第一次让我尝试做个单,给一个卖麻辣烫的做个网站!
虽然是个小生意,但丝毫不敢懈怠,一下便是“大作”,呵呵,留个纪念!

现在看来,确实功底不够,基本上都是大块大块的色块,然后用了点笔刷做点缀。明显看的出技术的青涩,但还好,现在看来也不算太难看!
网页开发处女座-海贼王
2012年01月18日 标签:海贼王,海贼王网页由于学习的内容与毕业后的专业不符,刚刚毕业,我没有任何面试的本钱,去了几家公司,处处碰壁!
哎,07、08年正式毕业生最多的两年,毕业生多,工作难找!
去面试别人总会问有没有做过?有没有经验什么的,被逼之下,自学PS,DW,开始了我的网页开发生涯:
下面就是我的处女作:《海贼王》,为什么选择这个题材呢?也想不到能做什么题材,什么都不懂,唯独对动漫很感兴趣,所以就做了个自己最喜欢的动漫做了主题!

现在看上去作品很是青涩,呵呵,但当时我自己还是很满意的!
当时虽然碰了几次壁,但还是凭借这个作品找到了一份每月400元的实习工作!
http://www.aixinxian.com/UD/HZW/
网页中还存在很多问题,也没考虑过屏幕尺寸和位置,呵呵,现在不做修改,留下原版做个纪念!
数据库木马清理方法
2012年01月18日 标签:SQL注入,数据库注入,参数注入,注入删除sql注入是比较常见的,木马入侵方式。
表现:数据库内大量字段内容内插入<script>脚本,目前很多浏览器遇到被入侵的网站都会有所提示!

原因:一般通过网页传值的参数漏洞进入数据库,其实预防方法很容易,只要对参数进行一下判断,或者使用存储过程等方式就可以避免,
解决方法:但如果你已经不幸中招,那么可以按照以下方法清楚木马。
方法一
DECLARE hCForEach CURSOR GLOBAL
FOR
SELECT Nupdate +QUOTENAME(o.name)
FROM sysobjects o,syscolumns c,systypes t
WHERE o.id=c.id
EXEC sp_MSforeach_Worker @command1=N?
<script src=http://hack.hackeye.com/cn.js></script>为要查找的插入的js内容。
方法二
declare @t varchar(255),@c varchar(255)
declare table_cursor cursor for select a.name,b.name
from sysobjects a,syscolumns b ,systypes c
where a.id=b.id and a.xtype=u and c.name
in (char, nchar, nvarchar, varchar,text,ntext)
declare @str varchar(500),@str2 varchar(500)
set @str=<script src=http://z360.net></script>
set @str2=
open table_cursor
fetch next from table_cursor
into @t,@c while(@@fetch_status=0)
begin exec(update [ + @t + ] set [ + @c + ]=replace(cast([ + @c + ] as varchar(8000)),+@str+,+ @str2 +))
fetch next from table_cursor
into @t,@c end close table_cursor deallocate table_cursor;
学习理财(三) - 开支的合理安排
2012年01月17日 标签:理财,开支安排,学会生活,理财根据上文的4321定律,我们应该是知道,理财理的是321这部分。但这篇文章重点想将以下4,也就是生活开支。
我也查阅了一些网上的文章,也想学一下,别人花钱是怎么花的!
下面我对网络文章进行一个小小的总结。
为合理的消费,我们把生活消费分为5部分:
第一部分:必要生活费,也就是吃、穿、住、行所产生的必要费用,这块并无太多可说,根据每个人的家庭状况而定。
第二部分:社会交际费,这笔钱用于比如给朋友打打电话的电话费,请朋友吃饭所产生的餐饮费。
可别把这比开销当做无用的开销哦!!因为他可能对你的将来产生莫大的帮助!如果你坚持请客一年,你的朋友圈应该已经为你产生价值了,你的声望、影响力、附加价值正在提升!
第三部分:学习费,钱不多,买的书就要认真阅读,学会学了就用的精神。每一本书,看完后,就把它变成自己的语言讲给别人听,与人分享可以提高你的信誉度,并且,提升亲和力。另外的300元存起来,每一年参加一次培训,从不间断。等收入高一些了,或者有额外的积蓄,就参加更高级的培训。参加好的培训,既可以免费结交志同道合的朋友,又可以学习平时难以领悟的道理
第四部分:旅游费,地球其实并不大,一年旅行一次,在地图上标注出你所走过的地方,留下这些美好的记忆,这也是我们人生的财富。
第五部分:人生投资,
增加对身体的投资,让身体始终好用,
增加对社交的投资,扩大你的人脉,
增加对学习的投资,加强你的自信,
增加对旅游的投资,扩大你的见闻,
增加对未来的投资,增加你的收益。
保持这种平衡,逐渐你就会开始有大量的盈余。这是一个良性循环的人生计划。
感悟中心:学习理财,更要学习生活!
学习理财(二)-理财中的几个重要比例
2012年01月15日 标签:4321定律,72定律,80定律,双十定律,房贷三一
上一回,我们是说攒钱的几个阶段,下载再说说如何攒下钱来,如何分配生活中的开销。
著名的《4321定律》:
收入的40%用于供房及其他项目的支出, 30%用于家庭生活开支及投资理财产品等, 20%用于银行存款保底, 10%可以用于保险等其它用途!
除了以上的比例外,再介绍几个算法:
《72定律》:
在复利的情况下,(本金 x 2 )所需要的时间 = 72 / 年利率。 举个例子:银行存10万,年利率2%,需要36年变为20万
《80定律》:
股票占总资产的合理比例 = 80 /年龄 %。30岁股票可占资产的50%,50岁时最多可占30%
《双十定律》:
家庭保险设定的额度应该为 家庭年收入的10倍,保险支出应该在家庭年收入的10%。
《房贷三一定律》:
每个月房贷的金额不要超过当月收入的 1/3.
学习理财(一)- 理财的三个阶段
2012年01月15日 标签:生活杂谈,学习理财,生活理财通货膨胀一直加加剧,辛苦挣来的工资,在银行也在加速蒸发!
这是社会现状,我们没办法改变他,只能用点心思,减少在这些现状面前的损失。
这些年随着越来越多的人不愿意看到自己的钱蒸发,精明的商人提出了“理财”这个词,无论你去银行、保险都很容易见到这个词。
为了适应现在的局面,我也要开始学习理财了!
我的理解:”理财“就是攒钱!
攒钱大概可以分为三个阶段,这三个阶段分别要攒一下三笔钱,
第一份:急用钱,这笔钱需要能供你6至12月的生活。这笔钱雷打不动,为了保证如果需要失业或特殊情况,保证自己正常的生活。这笔钱适合存在银行,活期定期都可以。
第二份:保命钱,这笔钱需要够你3至5年的生活费。这笔钱也正是我现在在存的,也应该是很多年轻人正在存的,也是我理解理财中比较重要的一部分。这笔钱适合买一些国债,保险什么的。我们需要把这笔钱用包比较保险的理财图解当中。
第三份:闲钱,如果您的钱两份钱都攒够了,那么恭喜您,你的最基本生活得到了保障,这第三份钱,可能会给您带来额外的收益和惊喜(当然这个惊喜可能也是你不太想看到的)。这笔钱应该是您5到10年不用的钱,这笔钱可以投资些股票、基金、房产,投资项目,做生意等。
当然,如果你这第三份钱也足够用了,那么你可以小奢华一下了,挥霍一下也是合理的,也不需要太守财奴了!
