Buonasera,
vi chiedo gentilmente di controllare questo codice:
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");
}
questa è la prima parte del mio file insert_news.php.
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
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");
}
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è???
qui anche il codice del blocco login nel template insert_news.tpl:
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">
il problema è che funziona tutto tranne appunto il messaggio di errore! bah!
Grazie