鱼C论坛

 找回密码
 立即注册
查看: 2890|回复: 7

谁会c#啊,求帮忙做一篇登录注册的课程设计及文档.急

[复制链接]
发表于 2012-6-14 16:25:44 | 显示全部楼层 |阅读模式
9鱼币
一)登录即一般的后台登录界面。
1. 要进行防SQL注入
2. 密码进行加密
3. 要产生4位随机验证码。
4. 登陆成功后进入一个读取信息界面。
二、
注册:用户输入相关的信息能入数据库表中
注册要求:
1. 信息有用户名,性别,收货地址,密码,确认密码,手机,这些不能为空其中手机项可以选择是否隐藏不可见。
2. 确认密码要与密码相等
3.
4. 另有信息邮箱,QQ为可选项,可以为空
5. 用户名只能为字母,数字,下划线开头,并且是在4-12字母之间
6. 注册不能有重复的用户名

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-6-15 04:21:08 | 显示全部楼层
文档没有,部分代码有。这玩意不难,自己找个时间敲下很快就搞定了。简单讲一下:
一)登录即一般的后台登录界面。
1. 要进行防SQL注入 :  参数化SQL语句基本能解决
2. 密码进行加密:     .net   framerwork 类库里有自带的加密  (垃圾了一点,能凑合用)
3. 要产生4位随机验证码。   :  网上查下代码,一大堆,直接拿来,JS的,C#的都有的
4. 登陆成功后进入一个读取信息界面。 : 登录后就读取?读取当前用户么?这样的话可以用Session或者Cookie保存,如果是用OOP的那就更简单了,全是对象。读取其它信息的话,在页面Load事件里写上代码就OK。
二、
注册:用户输入相关的信息能入数据库表中
注册要求:
1. 信息有用户名,性别,收货地址,密码,确认密码,手机,这些不能为空其中手机项可以选择是否隐藏不可见。  :   界面设计不是问题,Update下数据库就OK,记得密码同样加密,不然回头登录验证有问题
2. 确认密码要与密码相等 : 1、前台JS判断(推荐)   2、后台代码判断
3.
4. 另有信息邮箱,QQ为可选项,可以为空
5. 用户名只能为字母,数字,下划线开头,并且是在4-12字母之间:  正则表达式,不会的话网上搜索一下,也一大堆,基本的正则网上都有。
6. 注册不能有重复的用户名:  1、在焦点离开用户名文本框事件 JS动态从数据库判断是否存在   2、表单提交后先判断,再执行注册或返回重新填写用户名操作。

解答Over,这些提示应该能让你独立完成这些功能。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-6-15 08:08:43 | 显示全部楼层
二楼果然不愧是2楼
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-6-15 17:54:46 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-6-16 10:17:24 | 显示全部楼层
xiaoyu5062 发表于 2012-6-15 17:54
每天22更健康。

偶尔2就OK了,每天2不得了哟
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-6-16 14:56:59 | 显示全部楼层
飘渺 发表于 2012-6-16 10:17
偶尔2就OK了,每天2不得了哟

NONONO,每天二生活才快乐~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-6-17 16:53:51 | 显示全部楼层
本帖最后由 懑道 于 2012-6-18 15:48 编辑

首现在数据库创建一个表
防SQL注入 可以指定一个常量来指定页面
比如:
       define('SCRIPT','register');
密码加密可以用sha1这个函数

产生验证码 具体代码:
function _code($_width=75,$_height=25,$_rnd_code=4,$_flag=false)
    {
        for($i=0;$i<$_rnd_code;$i++)
        {
            $_nmsg.=dechex(mt_rand(0,15));
        }        
        $_SESSION['code']=$_nmsg;
   
        $_img=imagecreatetruecolor($_width,$_height);
        $_white=imagecolorallocate($_img,255,255,255);
        imagefill($_img,0,0,$_white);
        
        if($_flag)
        {
            $_black=imagecolorallocate($_img,0,0,0);
            imagerectangle($_img,0,0,$_width-1,$_height-1,$_black);
        }
        for($i=0;$i<6;$i++)
        {
            $_rnd_color=imagecolorallocate($_img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
            imageline($_img,mt_rand(0,$_width),mt_rand(0,$_height),mt_rand(0,$_width),mt_rand(0,$_height),$_rnd_color);
        }
        for($i=0;$i<100;$i++)
        {
            $_rnd_color = imagecolorallocate($_img,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255));
            imagestring($_img,1,mt_rand(1,$_width),mt_rand(1,$_height),'*',$_rnd_color);
        }
        for($i=0;$i<strlen($_SESSION['code']);$i++)
        {
            $_rnd_color=imagecolorallocate($_img,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));
            imagestring($_img,5,$i*$_width/$_rnd_code+mt_rand(1,10),mt_rand(1,$_height/2),$_SESSION['code'][$i],$_rnd_color);
        }
        header('Content-Type:image/png');
        imagepng($_img);
        imagedestroy($_img);
    }




想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-9-11 10:44:33 | 显示全部楼层
SQL防注入,用存储过程来写..
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-5 09:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表