Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Richiamare una funzione javascript da un controllo PHP?

    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.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Stai cercando di eseguire delle operazioni su un oggetto che ancora non esiste... "login1" non l'hai ancora scritto nella pagina.

    Sposta lo script appena sotto il </div> del login1 oppure a fondo pagina
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133

    Richiamare una funzione javascript da un controllo PHP?

    Oppure fai tutto lato server
    codice:
    <?
    if($_GET['message'] == "loginerror1")
    {
    $display = 'display:block;';
    }else{
    $display = 'display:none;';
    ?>
    codice:
    <div id="login1" class="loginmessage" style="<? echo $display; ?>">
    errore...
    </div>
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4

    Re: Richiamare una funzione javascript da un controllo PHP?

    Originariamente inviato da cavicchiandrea
    Oppure fai tutto lato server
    codice:
    <?
    if($_GET['message'] == "loginerror1")
    {
    $display = 'display:block;';
    }else{
    $display = 'display:none;';
    ?>
    codice:
    <div id="login1" class="loginmessage" style="<? echo $display; ?>">
    errore...
    </div>
    ti ringrazio infinitamente, adesso funziona e potete testarlo inserendo un login e password errati.. sinceramente era una cavolata ma non ci avevo proprio pensato sbattendo la testa sul chiamare il javascript dal php e dimenticando che il php può incamerare variabili di qualsiasi tipo

    Grazie anche all'altro utente ma purtroppo il javascript non va neanche se sposto esso al di sotto del div e neanche se sposto il controllo al di sotto del div.. ma di certo cosi è una soluzione molto migliore

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.