我已经构建了一个名为Login的类,其中有一个构造可以记录它们但它没有...我还有一个名为isAuthenticated的静态函数,用于检查用户是否已登录...我一直在用静态函数等乱搞,但似乎无法得到我想要的东西.
理想情况下,它是我可以轻松去的地方
<?php if (Login::isAuthenticated()) { ?>
<a href="/sign-out/">Sign Out</a>
<?php } ?>
Run Code Online (Sandbox Code Playgroud)
到目前为止,这是我的班级...完成我的尝试..
class Login
{
private static $_auth;
public function __construct($username, $rawPassword) {
global $db;
require('edit/users/config.php');
$hashedPassword = sha1(SALT . $_POST['password']);
$query = 'SELECT firstname FROM users WHERE user = "' . $db->cleanString($username) . '" AND pass = "' . $db->cleanString($hashedPassword) . '" LIMIT 1';
$login = $db->query($query);
if ($login) {
$_SESSION['username'] = $username;
self::$_auth = true;
header('Location: ' . CONFIG_DIR_BASE);
} else {
ErrorHandler::addErrorToStack('Your username and/or password …Run Code Online (Sandbox Code Playgroud) 网站安全:用户登录新鲜或密码从cookie中提取并登录(如果煮熟的密码无效,则拒绝).+多次登录失败会导致拒绝.
密码是md5哈希并用随机数盐化.
我的问题是,这不合适吗?
我明白这不是很安全.有人可以访问用户的cookie,破解散列cookie,然后知道用户密码.
但是,它是否相当安全,并且在任何地方存储纯文本密码都是不道德的,这在某种程度上是不道德的吗?
问题:如何在注册/登录(任何其他)php页面中使用https?伪代码:
is it https?
yes continue
no redirect same page via https
Run Code Online (Sandbox Code Playgroud)
背景: 我想做一个安全的注册和登录表格.我想通过所有步骤来检测我是否错过了什么.2.我想特别询问如何使用https来保护去往服务器的密码.
添加2. HTTPS CONNECTION CHECK用户单击链接到登录/注册页面,我应该这样做:
是HTTPS吗?是=> CONTINUE,NO =>通过HTTPS重定向页面我知道有一些变量或某些东西告诉我它是否是https,但我不知道如何在php5中编写它(这一两行).那么问题是如何做第2点(HTTPS连接CHECK)?
我有一个网站,我在服务器端使用PHP,mysql作为数据库.我使用以下脚本从数据库中检索数据.有人能让我知道这段代码是否容易受到注入攻击?如果是这样,请你解决一下吗?
<?php
// PHP script
$usrname=$_POST['usrname'];
$_SESSION['usremail']=$usrname;
$usrpassword=$_POST['passwd'];
$db=mysql_select_db('mydb',$connection);
$result=mysql_query("select usrfname,usrlname from userinformation where usremail='$usrname' and usrpassword='$usrpassword'") or die('failed to login');
Run Code Online (Sandbox Code Playgroud)
任何帮助是极大的赞赏.
谢谢