php项目怎么加密,密码都直接写在程序里吗?
密码都通过加密然后存如数据库 也就是说密码不是明文存储的,登录的时候对比的是加密后的hash
phpmyadmin改错了密码无法登陆了怎么办?
方法如下: 如果找到config.inc.php直接修改密码; 如果找不到,自己创建config.inc.php文件放在第一辑文件夹下: $cfg['PmaAbsoluteUri'] = "http://127.0.0.1/phpMyAdmin-2.8.0.2/"; $cfg['Servers'][1]['host'] = "localhost"; $cfg['Servers'][1]['auth_type'] = 'config'; $cfg['Servers'][1]['user'] = "root"; $cfg['Servers'][1]['password'] = "你的新密码"; ?> 1,phpmyadmin修改密码后无法登录,有可能phpmyadmin对mysql密码修改不成功,直接使用原密码即可登陆。 mysql重新设置密码: mysql>use mysql mysql>set password for 'root'@'localhost'=password('newpasswd'); mysql>set password for 'root'@'%'=password('newpasswd'); 2,也有可能是自己对刚修改的密码忘记了。可以重新更改Mysql密码,步骤如下 具体步骤如下: 1.关闭正在运行的MySQL。 2.打开DOS窗口,转到mysql\bin目录。 3.输入mysqld-nt --skip-grant-tables回车。如果没有出现提示信息,那就对了。 4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录(cd)。 5.输入mysql回车,如果成功,将出现MySQL提示符 > 6. 连接权限数据库>use mysql; (>是本来就有的提示符,别忘了最后的分号) 6.改密码:> update user set password=password("123") where user="123"; 7.刷新权限(必须的步骤)>flush privileges; 8.退出 > \q 9.注销系统,再进入,开MySQL,使用用户名123和刚才设置的新密码123登陆。
在php5中md5在加密字符串后如何解密?
md5加密是不能逆运算的,现在的pj大都是穷尽法,就是有一个庞大的MD5码对照表放在那里,然后一个一个去对照着查。
php如何对URL参数加密和解密?
对url密文用decode进行URL编码一下,接收时再用urldecode解码下再解密,这样做是为了避免被密文中的特殊字符影响
php利用session如何实现单ip登陆限制?
我们知道,Session和Cookie配合起来使用可用来实现会话跟踪与控制。在一些场景下可能需要做单IP限制登录,很多开发者可能就会想到用Session会话来实现,但是不能单独靠Session来实现单IP限制登录。
第一步:单IP登录限制需要基于会话控制这个很好理解,既然有登录,那就离不开会话控制技术(Cookie+Session),当用户成功登录后,我们需要获取到用户的IP,同时标记会话状态,这样此用户后续的请求都会归属于此会话中。
第二步:用户登录后要将用户IP存储起来基于第一步,当用户登录成功后,就需要获取用户的真实IP,然后存储起来。常见的存储方式有:缓存文件、数据库、文件。考虑到性能,我们建议可以将用户的真实IP存储到Redis这类NoSQL中。
具体思路是:用户登录成功后 =》获取用户真实IP =》从数据库中找到当前登录用户的唯一ID值 =》将用户唯一UID做为Redis的Key存储,其Value则为此用户的IP。
第三步:每次登录与登出都要更新对应的Redis Key对应的值上面2步做好后,然后需要对登录与登出逻辑做处理了,具体规则如下:
1、每次登录成功后
每次登录操作时,验证用户名及密码正确后需要查看此用户的UID对应的Redis Value值(如果Cookie+Session状态都存在也需要判断Redis中是否有值),如果Redis中有值,则代表此用户之前登录过,再进一步判断用户当前的IP是否和上次登录的IP一致,如果不一致则代表用户在多处登录了,再根据业务做进一步处理。
2、登出操作
当用户登出时,同样需要对Redis中的记录做同步删除操作。