Buonasera,
vi chiedo gentilmente di controllare questo codice:
questa è la prima parte del mio file insert_news.php.codice:$redirect = "http://localhost/skaletz_hq/insert_news.php"; session_start(); // controllo dati del login if (isset($_POST[posted_username]) && isset($_POST[posted_password])) { if ($login_user == $_POST[posted_username] & $login_psw == $_POST[posted_password]) $_SESSION['user'] = $_POST['posted_username']; else header("Location: $redirect?loginfail=1"); }
Se i dati del login non sono corretti si viene riindirizzati alla stessa pagine con un get loginfail=1
Ecco adesso il corpo del file insert_news.php
come notate mi affido a TemplatePower per dividere il codice php da quello html. Se non si è ancora loggati, inserisce il blocco form login, se la variabile get loginfail è 1, dovrebbe assegnare a ERRORE un messaggio. Questo però non avviene!!! qualcuno ha un'idea perchè???codice:include_once( "class.TemplatePower.inc.php" ); $tpl = new TemplatePower( "templates/insert_news.tpl" ); $tpl->assignInclude( "header", "templates/header.tpl" ); $tpl->assignInclude( "left_nav_admin", "templates/left_nav_admin.tpl" ); $tpl->prepare(); // viene generato il login se non ancora loggati if(!IsSet($_SESSION['user'])) //controllo se sono già loggato { $tpl->newBlock( "login" ); if($_GET['loginfail' == 1]) //login sbagliato $tpl->assign("ERRORE", "Login non riuscito, controlla i dati inseriti"); }
qui anche il codice del blocco login nel template insert_news.tpl:
il problema è che funziona tutto tranne appunto il messaggio di errore! bah!codice:<div> <div>{ERRORE}</div> <FORM METHOD=POST ACTION="insert_news.php"> username: <INPUT TYPE=TEXT SIZE=20 NAME=posted_username> password: <INPUT TYPE=PASSWORD SIZE=20 NAME=posted_password> ricordami: <INPUT TYPE=CHECKBOX NAME=ricorda VALUE=1> <INPUT TYPE=SUBMIT NAME=SUBMIT VALUE="Entra">
Grazie

Rispondi quotando