allora ragazzi ho un piccolo problema che non riesco a risolvere partiamo dal login:
Codice PHP:
<form action="controllo.php" method="post">
<fieldset>
<p>
<label for="username">Username:</label>
<input type="text" name="user">
</p>
<p>
<label for="password">Password:</label>
<input type="password" name="psw">
</p>
</fieldset>
<input type="submit" value="Invio">
<p class="links"><a href="registrazione.html" class="register">Registrati</a></p>
</form>
poi il controllo
Codice PHP:
<?php
session_start();
$user = $_POST['user'];
$psw = $_POST['psw'];
$_SESSION['user'] = $user;
include 'db.inc.php';
try
{
$sql = "SELECT idUtente,COUNT(*) FROM accesso WHERE user = :user AND psw = :psw ";
$st = $pdo->prepare($sql);
$st->bindValue(':user' , $user, PDO:ARAM_STR);
$st->bindValue(':psw' , $psw, PDO:ARAM_STR);
$st->execute();
}
catch(PDOException $e)
{
$error = "Errore nell'esecuzione della query ";
include 'error.html.php';
exit();
}
$res = $st->fetch();
if($res[0] > 0)
{
if($res['admin'] == 1)
{
$_SESSION['id'] = "admin";
//$risq = "Accesso riuscito.";
header('Location:chat.php');
}
else
{
$_SESSION['id'] = "user";
//$risq = "Accesso riuscito.";
header('Location:chat.php');
}
//$risq = "Accesso riuscito.";
header('Location:chat.php');
}
else
{
//$risq = "Accesso non riuscito.";
header('Location:index.html');
}
?>
allora questa pagina mi controlla se un utente che si logga è presente nel database if($res[0]>0) e successivamente un secondo controllo per verificare che l'utente sia un admin cioè se il campo admin(aggiunto cosi "alter table accesso add column admin boolean" sul database relazionale di altervista) se il campo admin è 1 allora è admin, se è a 0 sarà un normale utente. poi su chat.php in base se è un utente è admin oppure no viene visualizzato un messaggio diverso(poi aggiungerò dei comandi appositi per chi è admin) chat.php:
Codice PHP:
<?php
session_start();
$user = $_SESSION['id'];
if(!isset($_SESSION['id']))
{
header('Location: .');
}
?>
<body>
<div style="color:blue; font: 20px Arial; text-align: center;">
<?php if($user=="admin")
{
echo "Benvenuto Admin: " . $_SESSION['user']; }else
{
echo "Benvenuto: " . $_SESSION['user'];
}
?>
</div>
sapete aiutarmi? quello che mi succede è che sia un utente con admin settato a 1 o 0 mi visualizza sempre il benvenuto per l'utente normale