Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Problema con il logout

  1. #1

    Problema con il logout

    Salve a tutti sono nuovo di questo forum
    Io ho creato uno script con all'interno una funzione:

    <head>
    <script type="text/javascript">
    function funz() {
    parent.principale.location.reload(true);
    }
    </script>
    </head>

    Poi all'interno del body come codice php richiamo la funzione tramite l'evento onClick:

    echo "<td align='right' width='6%'>
    Logout
    </td>

    però quando premo sul link logout la funzione non si attiva infatti la pagina principale non viene aggiornata.
    Come mai?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Benvenuto sul forum

    Parli di parent.principale ... e' un frame dello stesso frameset allo stesso livello del frame che lancia lo script?

    ciao
    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
    Il logout e la funzione sono messi all'interno della pagina login.php e io vorrei aggiornare la pagina principale.php. Entrambe le pagine sono posizionate così all'interno della pagina index.php:

    <html>
    <head>
    <title>TALCO</title>
    </head>
    <frameset rows="22%,6%,70%" border="0">
    <frame name="imgtalco" src="imgtalco.html" scrolling="auto" FRAMEBORDER="NO"></frame>
    <frame name="login" src="login.php" scrolling="no" FRAMEBORDER="NO"></frame>
    <frameset cols="7%,70%,23%">
    <frame name="menu" src="menu.php" scrolling="auto" FRAMEBORDER="NO"></frame>
    <frame name="principale" src="principale.php" scrolling="auto" FRAMEBORDER="NO"></frame>
    <frame name="guestbook" src="guestbook.php" scrolling="auto" FRAMEBORDER="NO"></frame>
    </frameset>
    </frameset>
    <body>
    </body>
    </html>

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Devi assegnare un name al frameset interno, quindi:

    parent.nomeframesetinterno.principale.location.rel oad(true);

    ciao
    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

  5. #5
    Non cambia nulla
    Non capisco ho scritto lo stesso script:
    parent.bloccocentrale.principale.location.reload(t rue);

    in un' altra parte di codice e qua funziona

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da CyberLele
    Non cambia nulla
    Non capisco ho scritto lo stesso script:
    parent.bloccocentrale.principale.location.reload(t rue);

    in un' altra parte di codice e qua funziona
    Cioe'? in un'altra pagina funziona? o in un'altro frame? spiegati. :master:

    Posta anche l'errore che ti restituisce il browser e, meglio di tutto, un link alla pagina pubblicata.

    ciao
    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

  7. #7
    Questa è una parte della pagina login.php:

    codice:
    $logout=$_GET['logout'];
    	if($logout==1){
    		$_SESSION=array();
    		session_destroy();
    		$logout=0;
    	}
    ?>
    <html>
    	<head>
    		<script type="text/javascript">
    			function funz() {
    				parent.principale.location.reload(true);
    			}
    		</script>
    	</head>
    	<body>
    		<table>
    			<tr>	
    				<?php
    					if($esiste){//se esiste l'utente
    						//Diamo il benvenuto
    						print "<table width='100%'>
    								<tr>
    									<td align='left'>
    										<font size='2' color='red'>Benvenuto ".$_SESSION['name']."</font>
    									</td>";
    									if($admin){
    										echo "<td align='right' width='6%'>
    											Admin
    										</td>";
                                                                                    echo "<script type=\"text/javascript\">funz();</script>";
    									}
    									echo "<td align='right' width='6%'>
    										<A href=\"login.php?logout=1\" onclick=\"funz();\">Logout</A>
    										</td>
    								</tr>
    							</table>";
    					}
    come puoi vedere io la funzione funz() la richiamo sia dentro una condizione(if($admin)) che come evento onClick. Eppure nel primo caso funziona mentre nel secondo no

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    <A href=\"login.php?logout=1\" onclick=\"funz();\">Logout</A>

    Ma tu cosa vuoi che succeda quando l'utente clicca sul link? nel frame corrente deve caricarsi la pagina login.php e nell'altro frame aggiornarsi la pagina presente?

    Ovviamente con questa sintassi la pagina aggiornata non risentira' degli effetti invocati dalla pagina nel frame (logout) e potresti pure non accorgerti che si e' ricaricata...

    ciao
    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

  9. #9
    Quando premo sul link logout vorrei che si ricaricasse la pagina login.php cosi da poter gestire il logout dato che il logout lo gestisco sempre nella pagina di login. Poi tramite l'evento onClik vorrei il refresh della pagina principale.php.

  10. #10
    ok risolto il problema
    Grazie mille

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.