我正在学习PHP,主要关注的是我的网站添加了活动,但我不知道SQL。有没有办法在没有SQL的情况下做到这一点?
答案 0 :(得分:0)
您可以使用平面文件 - 只关注可能是并行添加新帐户。但是如果你想深入挖掘网站开发,那么SQL绝对是值得深入研究的。
答案 1 :(得分:0)
快速&脏解决方案,您可以将用户凭据存储在数组中,例如:
$creds = array(
array( 'username' => 'john123',
'password' => 'hello'),
array( 'username' => 'lucyliu',
'password' => 'dieblackmamba')
//more sub arrays like above here
);
然后,您可以匹配用户的输入,例如:
$username = $_POST['username'];
$password = $_POST['password'];
$match = false;
for($i=0;$i<count($creds);$i++) {
if(strcmp($username,$creds[$i]['username']) == 0) {
if(strcmp($password,$creds[$i]['password']) == 0) {
// start session and set something to indicate that user is logged in
session_start();
$_SESSION['authenticated'] = true;
$_SESSION['username'] = $creds[$i]['username'];
$match = true;
}
}
}
if($match) echo 'Login successful: welcome ' . $creds[$i]['username'];
else echo 'Invalid credentials';
编辑:在后续页面调用中,您可以通过阅读$ _SESSION
来检查用户是否仍然登录session_start();
if($_SESSION['authenticated'] === true) {
echo 'User ' . $_SESSION['username'] . ' is logged in.';
}
要注销用户,您可以执行以下代码:
$_SESSION = array();
// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
// Finally, destroy the session.
session_destroy();
答案 2 :(得分:0)
检查会话处理的工作方式 http://us.php.net/session,这样就可以保存用户对象。
只需将会话保存在一个服务器环境中,在多服务器环境中,您需要将会话保存到公共场所(如数据库),但对于更简单的页面和学习只需保存到会话中