Salve a tutti ragazzi,
dato che ho creato un Login con un form action ad una pagina esterna, voglio fare in modo che visualizzi nella index gli eventuali errori tipo password scorrette... per cui ho messo nel file esterno che se non inserire la password o l'username fa un redirect: index.php?message=loginerror1 per esempio.
Pagina dell'errore: http://pegi3d.altervista.org/index.php
Vi voglio far notare
Quindi io ora nella index ho creato un javascript cosi:
codice:
<script type="text/javascript">
function startmenu()
{
document.getElementById('menu1').style.display = "none";
document.getElementById('login1').style.display = "none";
}
function loginmessage(loginId)
{
if(document.getElementById(loginId).style.display =="none")
{
startmenu();
document.getElementById(loginId).style.display = "block";
}
else
{
startmenu();
}
}
appena dopo il body ho messo:
codice:
<?
if($_GET['message'] == "loginerror1")
{
echo "<script type='text/javascript'>loginmessage('login1');</script>";
}
?>
ho provato a scrivere nell'echo per cui sono sicuro che il controllo funziona correttamente.
Il javascript praticamente deve trasformare il display da "none" ovvero invisibile a "block" cioè visibile, per l'appunto ho creato una classe per posizionare questo contenitore errori e ho inserito:
codice:
<div id="login1" class="loginmessage">
errore...
</div>
Dove login1 è l'id del display di javascript che passa da none a block e loginmessage è la classe opportunamente posizionata.
Se cliccate sul tasto "prova" in alto che ho inserito per testare appare il DIV quindi il javascript funziona...
Purtroppo il display rimane sempre su none anche quando la variabile GET viene eseguita e quindi il controllo risulta vero. Quindi il problema è nel richiamare la funzione javascript dal codice PHP...
Grazie per l'aiuto.