Zunächst möchte ich Codecourse für das Tutorial danken. Alles funktioniert ein Vergnügen, aber ich möchte die Fehler in meine Tabelle td anzeigen. Vielleicht eine dumme Frage, aber ich bin ein Anfänger und versuchte es mir selbst ohne GlückPHP OOP Anmelden/Registrieren System
<?php
require_once 'core/init.php';
if(Input::exists()) {
if(Token::check(Input::get('token'))) {
$validate = new Validate();
$validation = $validate->check($_POST, array(
'username' => array('required' => true),
'password' => array('required' => true)
));
if($validate->passed()) {
$user = new User();
$remember = (Input::get('remember') === 'on') ? true : false;
$login = $user->login(Input::get('username'), Input::get('password'), $remember);
if($login) {
Redirect::to('index.php');
} else
echo "Incorrect username or password";
} else {
foreach($validate->errors() as $error) {
echo $error, '<br>';
}
}
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action='' method='post'>
<table>
<tr>
<td><!-- display errors here --></td>
<td><!-- and/or here --></td>
</tr>
<tr>
<td><label for='username'>Username</label></td>
<td><input type='text' name='username' id='username'></td>
</tr>
<tr>
<td><label for='password'>Password</label></td>
<td><input type='password' name='password' id='password'></td>
</tr>
<tr>
<td></td>
<td><label for='remember'><input type='checkbox' name='remember' id='remember'>Remember me</label></td>
</tr>
<tr>
<td><input type='hidden' name='token' value='<?php echo Token::generate(); ?>'></td>
<td><input type='submit' value='Login'></td>
</tr>
</table>
</form>
</body>
</html>
Bewegen Sie die foreach-Schleife einfach über die Fehler nach unten, wo Sie sie anzeigen möchten. – JimL
Weisen Sie alle Fehler einer Variablen zu ($ error_messages) und geben Sie sie an, wo immer Sie wollen. –
@JimL - Ich denke nicht, dass es so einfach ist, müssen wir die Fehler in dieser Schleife zu einem Array hinzufügen, und dann eine zusätzliche foreach-Schleife – ArtisticPhoenix