开源 html编辑器,开源丰富的HTML编辑器

这篇博客针对PHP初学者,指出了在处理用户登录时的一个常见错误,即直接在代码中硬编码验证,而不是利用数据库进行身份验证。博主建议使用MySQL存储用户凭证,并通过$_SESSION进行会话管理。文中提供了创建用户表的SQL语句及示例数据,还给出了检查登录凭据的PHP代码示例,强调了使用sha1等安全散列函数处理密码的重要性。此外,推荐了一个适合新手的PHP教程链接,帮助读者进一步学习。
摘要由CSDN通过智能技术生成

你这样做错了,我非常怀疑你能不能这么快地开发应用程序,就像你说从昨天开始学习PHP一样,你的例子表明你很难理解服务器端语言的基础知识,你说你会用if (username == x && password == x)检查登录这是完全错误的做法,而你应该使用像MySQL这样的数据库来存储和检查登录凭证,即通过$ _SESSION(会话变量),更确切地说,

考虑登录表格

拥有数据库总是更好,请考虑以下数据库以及下列表格和值。

CREATE TABLE `users` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`name` varchar(50) NOT NULL,

`password` varchar(50) NOT NULL,

PRIMARY KEY (`id`),

);

INSERT INTO `users` VALUES('First User', '6c049bc0f30da673d0a82c5bd1a13cde');

INSERT INTO `users` VALUES('Second User', '6a6150f8eb2c263a31eb91487bebf1d6');

INSERT INTO `users` VALUES('Third User', '2fd7e7348da8dd5f67103b15be525859');

第二个参数是密码的散列值,我使用了md5(),您也可以使用sha1()或其他人。

现在要检查登录凭据,您需要在checkLogin.php中编写以下代码

if(isset($_POST['submit'])) {

$username = mysql_real_escape_string($_POST['username']);

$password = sha1(mysql_real_escape_string($_POST['password']));

$result = mysql_query('SELECT id, username FROM users WHERE users.username = '.$username.' AND users.username =.'$password) or die('unable to select database');

if(mysql_num_rows($sesult) > 0) {

$row = mysql_fetch_array($result);

$_SESSION['userId'] = $row['userId'];

}

}

?>

在其他页面中如果要检查用户是否已登录以便您可以访问,那么您只需要检查会话变量

if(isset($_SESSION['userId'])) {

//Give Page Access to this user.

}

这只是关于PHP如何工作的一个基本而粗略的想法,为了让您入门,我建议您查看本教程的新手。

http://devzone.zend.com/article/627

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值