Citat:
La till en array som du kan logga vad som gick fel med användarens försök, och sedan printa ut den.
Försök att alltid ha engelska mer konsistent och mer beskrivande namn i elementen. T.ex. "username" istället för bara "name" eller "password" istället för "pwd", och "login" hellre än "loggaIn".
Här har du en testad och fungerande kod:
Försök att alltid ha engelska mer konsistent och mer beskrivande namn i elementen. T.ex. "username" istället för bara "name" eller "password" istället för "pwd", och "login" hellre än "loggaIn".
Här har du en testad och fungerande kod:
Kod:
<?php
$errors = [];
if(isset($_POST['login'])){
$users = ['abc' => 'volvo', 'def' => 'bmw', 'ghi' => 'opel'];
$username = isset($_POST['username']) ? $_POST['username'] : '';
$password = isset($_POST['password']) ? $_POST['password'] : '';
if(isset($users[$username]) && $password === $users[$username]){
header('location: index2.php'); exit;
}
// There were a error
if(isset($users[$username])){
$errors['password'] = 'Lösenordet är felaktigt';
}
else{
$errors['username'] = 'Användarnamnet existerar inte';
}
}
?>
<!DOCTYPE html>
<!--
Får inte if statement i php att bli true?
-->
<html>
<head>
<meta charset="UTF-8" lang="en">
<title>Uppgift 2</title>
</head>
<body>
<h1>Logga in </h1>
<!-- logga in formulär -->
<form action="index.php" method="post">
<input type="text" name="username" placeholder="Användarnamn">
<input type="password" name="password" placeholder="Lösenord">
<button type="submit" name="login">Logga in</button>
<button type="submit" name="SparaNyAnvändare">Spara ny användare</button>
<?php
// Lista alla errors
if($errors){ echo '<ul>'; foreach($errors as $err){ echo '<li>'. $err .'</li>'; } echo '</ul>'; }
?>
</form>
</body>
Det som krävdes var "header location" i if för att min kod att funka.
När man skapar autentisering gissar jag att det är praxis att samla namn och lösenord i en databas. Men uppgiften är att spara allt i en textfil. Är det klokast att spara namn och lösen i samma textfil eller separerade? Tänker att det kanske blir enklare att loopa igenom namn och lösenord om dessa finns sparade i separerade textfiler?
__________________
Senast redigerad av bosscs2 2021-02-27 kl. 09:35.
Senast redigerad av bosscs2 2021-02-27 kl. 09:35.