关于md5函数

komali 2008-03-28 01:02:37
各位大侠,我用MD5对注册页面的密码加了密,例如:
&passwd=$_POST["passwd"];
$md5=md5($passwd);

在数据库对应的密码那一栏值显示的是"6512bd43d9caa6e02c99".现在问题是如果我想在登陆页面以刚刚注册的用户登陆就登陆不了了提示密码不正确,是不是加密进了数据库之后还要再解密才能登陆?
...全文
159 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sven 2008-03-28
  • 打赏
  • 举报
回复
长度怎么不对? PHP md5处理后应该是32位的啊,你这个是不是字段长度不对?
striker_un 2008-03-28
  • 打赏
  • 举报
回复
要学会调试.
最简单最直接的方法.
就是把你提交的变量.
提交的变量加密后的状态,
数据库取出的值,一个一个的echo 出来.
看看到底是哪里出了问题.

搞不好是数据库字段没有足够长这类小问题造成的影响.
wlhcy 2008-03-28
  • 打赏
  • 举报
回复
把从登陆框获取到的密码信息用md5加密 然后在和数据库的密码进行比较!
komali 2008-03-28
  • 打赏
  • 举报
回复
to gaoshou_z,是否可以举个例子啊 菜鸟不懂啊
gaoshou_z 2008-03-28
  • 打赏
  • 举报
回复
先把用户输入的密码MD5加密后再用得到的密文去和数据库中的密文对比就行了
komali 2008-03-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 phpMania 的回复:]
不是,md5是不可逆加密
会把你输入的密码md5加密后与数据库中的密码密文对比,
一样就密码正确,否则密码不对
[/Quote]
谢谢!
那如果与mysql的密码密文不匹配 怎么样才能让它们匹配呢?
PleaseDoTellMeWhy 2008-03-28
  • 打赏
  • 举报
回复
MySQL也有md5函数!

mysql->query( "SELECT * FROM `user` WHERE password=md5('{$_POST['password']}')" );
phpMania 2008-03-28
  • 打赏
  • 举报
回复
不是,md5是不可逆加密
会把你输入的密码md5加密后与数据库中的密码密文对比,
一样就密码正确,否则密码不对

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧