Ho un problema con questo codice:
Codice PHP:
<?php
// recupera valori dal form
$username=$_POST['username'];
$password=$_POST['password'];
// connetti al database
$stringconnect="Driver={Microsoft Access Driver (*.mdb)}; ";
$stringconnect.="Dbq=C:\Program Files\server2go\htdocs\AutoLanza\adminuser.mdb; ";
$connect = @odbc_connect($stringconnect, "", "");
// recupera tabelle utenti e admin
$administrator=odbc_exec($connect,"select * from admin");
$user=odbc_exec($connect,"select * from user");
// recupera dati admin (unici perciò niente while)
$usernamead=odbc_result($administrator,2);
$passwad=odbc_result($administrator,3);
//controlla se l'admin vuole entrare
if($username==$usernamead && $password==$passwad)
header('location:areaAdmin.php');
while(odbc_fetch_row($user))
{
$usernameut = odbc_result($user,2); //prendi la colonna 2 da user
$passwut = odbc_result($user,3); // prendi la colonna 3 da user
if($username==$usernameut && $password==$passwut)
{
odbc_close($connect);
header('Location:areaUser.php');
}
odbc_close($connect);
?>
In poche parole, nonostante la sintassi sia giusta, la stessa if che uso per controllare se i dati inseriti sono quelli dell'admin, per l'utente non funziona. Sembra che la condizione non sia vera e dunque non entra nella if.
Il fatto è che la condizione è per forza vera. Ho controllato più e più volte, e anche se i dati nel database sono uguali ai dati inseriti nel form, non riesco ad entrare nella if.
Ho provato annidando due if, ma non funziona lo stesso.
Qualcuno sa dirmi come risolvere?