Grazie per la risposta, purtroppo temo di non aver capito molto bene cosa possa realmente fare ... ti spiego :
La mia pagina con cui gli utenti fanno login e' questa ( riporto solo il form ) : login_utenti.php
Codice PHP:
<form name="loginutenti" action="processi_php/log_user.php" method="post">
<table id="login">
<tr>
<td colspan="2">Inserisci il tuo username e la tua password</td>
</tr>
<tr></tr>
<td>Username</td>
<td><input type="text" name="user"/></td>
</tr>
<tr>
<td>Password</td>
<td><input type="text" name="pass"/></td>
</tr>
<tr>
<tr></tr>
<td colspan="2"><input type="submit" value="Accedi" />
</tr>
</table>
</form>
La pagina con cui viene elaborata la richiesta e' questa : log_user.php
Codice PHP:
<?php
include ("config.php"); // ci sono i dati per la connessione al db
//Username e password per il login
// Rendo innocue le variabili inserite dall'utente
$pass = md5(mysql_real_escape_string($_POST['pass']));
$user = mysql_real_escape_string($_POST['user']);
//Questo sarebbe il primo errore che vorrei personalizzare : se o user o pass non sono inserite, in questo caso rimanda a login utenti.
if (!$user || !$pass) {
header ("location: ../login_utenti.php");
exit;
}
//Mi connetto al server
$db_conn = mysql_connect($db_host, $db_user, $db_pass, $db_name) or die ("Errore connessione:" . mysql_error());
mysql_select_db($db_name, $db_conn);
//Cerco corrispondenza nel db
$query_login="SELECT * FROM utenti WHERE user='$user' AND pass='$pass'";
$result = mysql_query($query_login, $db_conn);
//num1 restituisce il numero di righe in cui nick e password sono quelli inseriti.
//Se c'è ne almeno una allora significa che sono stati inseriti i dati correttamente.
$num1 = mysql_num_rows($result);
//Avvio una sessione e indirizzo all'index una volta che il login ha avuto successo.
if ($num1 >0)
{
session_start();
$_SESSION['user'] = $user;
$_SESSION['logged'] = 1;
header ("location: ../index.php");
}
// Questo e' il secondo errore che vorrei personalizzare. in questo caso, per comodita
// grafica, stampo un messaggio informativo.
else {
echo "Login Fallito.Username o Password errati.";
}
?>
In entrambi i casi che ho elencato qui sopra, vorrei che l'utente fosse rimandato ad errorlogin_utenti.php ( pagina che devo ancora creare ) oppure se fosse possibile alla stessa login_utenti.php , ma con un messaggio di errore personalizzato.
Ora, il codice che mi hai scritto te, devo inserirlo in log_user ( magari al posto del primo if di verifica che ho messo io ) o in login_utenti ? In quest'ultima pagina infatti, non esistono processi di controllo php ....