Ho girovagato un pò sul forum per trovare un buon codice che mi permettesse di creare un form con login e aprire una pagina se le credenziali sono ok.
Ecco quello che ho fatto:
codice index.php
codice:
<?php
session_start();
if (isset($_POST['user'])) {
include('utenti.php'); foreach ($utenti as $utente) {
if($utente['nomeutente'] == $_POST['user'] and $utente['password'] == $_POST['pass']){
$_SESSION['login'] = $utente['id']; header('Location: protetta.php?'.session_name()."=". htmlspecialchars(session_id())); exit; } }
die('Nome Utente o Password errati'); } ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Login</title> </head>
<body>
<form action="" method="post">
<input name="user" type="text" id="user" value="Nome Utente" onFocus="if(this.value=='Nome Utente') this.value='';" />
<input name="pass" type="password" id="pass" value="Password" onFocus="if(this.value=='Password') this.value='';" />
<input name="login" type="submit" value="Login" />
</form>
</body>
</html>
Codice utenti.php
codice:
<?php
$utenti[]=array('id' => 1, 'nomeutente' => 'admin', 'admin' => 'io');
$utenti[]=array('id' => 2, 'nomeutente' => 'user', 'user' => 'luca'); ?>
codice protetta.php
codice:
<?php
session_start();
if(isset($_SESSION['login']))
echo 'Contenuto privato';
else echo 'Contenuto pubblico'; ?>
Pur creando i file e mettendoli nella solita directory quando vado a inserire il nome utente e la password nn accade nulla rimane sempre nel form della login