저는 PHP에 익숙하지 않습니다. 등록 및 로그인을 시도하고 있습니다.Loggin in PHP가 작동하지 않습니다.
내가 새로운 사용자로 등록하면 데이터베이스에서 작동합니다. 그러나 로그인 할 때 모든 것을 시도한 문제가있는 것 같습니다.
사용자가 로그인하면 홈 페이지로 리디렉션되고 로그인 정보가 잘못되면 오류 메시지가 표시됩니다.
<?php
session_start();
if(isset($_SESSION['users_id']) ){
header("Location: /");
}
require 'database.php';
if(!empty($_POST['email']) && !empty($_POST['password'])):
$records = $conn->prepare('SELECT id,email,password FROM users WHERE email = :email');
$records->bindParam(':email', $_POST['email']);
$records->execute();
$results = $records->fetch(PDO::FETCH_ASSOC);
$message = '';
if(count($results) > 0 && password_verify($_POST['password'], $results['password']) )
{
$_SESSION['users_id'] = $results['id'];
header("Location: php.dev/index.php", true, 301); exit();
}
else {
$message = 'Sorry, thoes credentials do not match';
}
endif;
?>
header("Location:....)
이 작동하지 않는 것 : 여기
header("Location: php.dev/index.php", ture, 301);
:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Login</title>
<link href="Style/phpstyle.css" rel="stylesheet" type="text/css">
<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet">
</head>
<body>
<div class="header">
<a href="php.dev/index.php"> TIPBUCKET </a>
</div>
<?php if(!empty($message)): ?>
<p><?= $message ?></p>
<?php endif; ?>
<h1>Login</h1>
<span> or <a href="register.php">Register here</a></span>
<form action="login.php" method="POST">
<input type="text" placeholder="enter your email" name="email">
<input type="password" placeholder="Password" name="password">
<input type="submit">
</form>
</body>
</html>
어떤 대답 : 당신은 당신의 헤더에 오타가
'php.dev/index.php'는 무엇을 의미합니까? 확실히 그것은 URL이 아닙니다 ... – arkascha
현재 로컬 호스트 MAMP를 사용하고 있으므로 현재 URL은 php.dev이고 index.php는 홈 페이지입니다 – user3719086
유효한 URL은'http://php.dev/ index.php'. 'php.dev/index.php'는 도트와 슬래시가있는 임의의 문자열입니다. – arkascha