ciao a tutti,
mi sono accorta di avere un problema nella mia pagina di login, un problema relativo all'impaginazione.
ci� sorge quando inserisco una dato errato in uno dei due campi, nome utente o password. ovviamente l'istruzione echo, che viene richiamata da un if, fa il suo lavoro, ovvero stampa a video l'istruzione che avvisa dell'errore, ma cos� facendo mi blocca il flusso della pagina, quindi non mi � possibile per esempio scorrere verso il basso.
ecco il codice:
codice:come posso risolvere questa situazione? <?php // Includo la connessione al database require('config.php'); // Se il modulo viene inviato... if(isset($_POST['login'])) { // Dati Inviati dal modulo $user = (isset($_POST['user'])) ? trim($_POST['user']) : ''; // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato d� di default '' $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : ''; // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato d� di default '' // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza if (!get_magic_quotes_gpc()) { $user = addslashes($user); $pass = addslashes($pass); } // Crypto la password e la confronto con quella nel database $pass = md5($pass); // Controllo l'utente esiste $query = mysql_query("SELECT id FROM utenti WHERE user = '$user' AND pass = '$pass' LIMIT 1"); // Se ha trovato un record if(mysql_num_rows($query) == 1) { // prelevo l'id dal database $login = mysql_fetch_array($query); // Creo una variabile di sessione $_SESSION['login'] = $login['id']; // reindirizzo l'utente header('Location: privata.php'); exit; } // se non esiste da l'errore else { echo('<div style="position:absolute;width:80%;left:50%;margin-left:-40%; top:500px;text-align:center; z-index:999999"> <b>Nome Utente o Password errati</b> </div>');} } ?> <!DOCTYPE html> <html lang="it"> <head><title></title><head><body> ... form html per il login... </body></html>
ho letto che dovrei concatenare il codice php con quello html, "spezzando" un if in qualcosa tipo
codice:<?php if ($ciao == 6){ ?> codice html < ? echo 'Nome Utente o Password errati; } ?>
ma non riesco a farlo! o meglio, se spezzo il codice dal primo if, funziona, ma si blocca la connessione al database e lo script non mi rimanda alla pagina private.php; ho provato con l'ultimo if e funziona, la pagina, mentre mostra l'errore, scorre fino al footer, ma se rientro nella pagina, quest'ultima si presenta come se fosse priva di css...
qualcuno mi pu� aiutare? povera me, sono disperata
![]()

Rispondi quotando