Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    39

    Redirect se test passato:

    Ciao a tutti.
    Ho una form a che punta ad una pagina di validazione a_validation, la quale ridireziona alla pagina corretta (pagina b) se viene passato un test.
    a--> a_validation-->b

    in a_validation per il redirect uso
    codice:
    header('Location:' . "../b.php");
    Problema: dopo il redirect mi si presentano doppie intestazioni(doppio logo e menè), sia della pagina a che quelle di b.

    Esiste un altro modo pulito per spostarmi alla pagina b dopo la validazione?

    Grazie mille anticipatamente,
    M.

  2. #2
    puoi postare tutto il codice completo?
    Tra cinquecento anni non importerà più a nessuno!

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    39
    pagina a

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <LINK href="css/stili.css" rel="stylesheet" type="text/css"> <script src="js/ajaxsbmt.js" type="text/javascript"></script> </head> <body><form name="MyForm" action="a_Validation.php" method="post" onsubmit="xmlhttpPost('a_Validation.php', 'MyForm', 'MyResult', '<img src=\'//imgages//pleasewait.gif\'>'); return false;""> <input name="password" type="password" /> <input name="password2" type="password" /> <input type="submit" value="invia" /> </form> </body> </html>
    a_validation

    codice:
    if($_POST['password']) { //se è tutto ok vai alla pagina principale header('Location:' . "../b.php"); }
    pagina b
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <LINK href="css/stili.css" rel="stylesheet" type="text/css"> <script src="js/ajaxsbmt.js" type="text/javascript"></script> </head> <body><h1>pagina B</h1> </body> </html>

  4. #4
    ma quindo il controllo lo fai in ajax?...
    perchè se è così il problema è dovuto a quello, ti restituisce il risultato del controllo di a_validation nella pagina a... nel div che ha come id MyResult.
    Tra cinquecento anni non importerà più a nessuno!

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2006
    Messaggi
    39
    hai ragione, come posso effettuare il redirect in questa condizione?

    Grazie,
    M

  6. #6
    mi sono trovato anche io con questo problema, l'unica soluzione che ho trovato è far caricare alla pagina ajax un elemento ed associare ad esso il comando di cambiare pagina.
    codice:
    [img][/img]
    Tra cinquecento anni non importerà più a nessuno!

  7. #7
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    La soluzione sta nel modificare il codice che gestisce il controllo del form con ajax inserendo
    window.location.replace('nuovapagina.php')
    al successo dell'invio.

    E' una questione di Javascript elementare.
    Quello di zanino è un trucchetto per non modificare il codice che gestisce l'invio del form con ajax, ma non vedo perchè dobbiamo cercare escamotages per non programmare bene.

  8. #8
    La soluzione sta nel modificare il codice che gestisce il controllo del form con ajax inserendo window.location.replace('nuovapagina.php') al successo dell'invio. E' una questione di Javascript elementare.
    i dati su cui viene fatto il controllo sono quelli passati per post... immagino che il controllo venga fatto da DB... quindi devo controllare con una query se sono presenti a DB i dati...

    quindi per decidere se reindirizzare la pagina o no dovrei interrogare il DB da javascript...

    perchè mettendo semplicemente window.location.replace('nuovapagina.php') al posto del return che va sull'ID avrei sempre come risultato il reindirizzamento sulla pagina nuovapagina.php anche se i dati non sono corretti!
    Tra cinquecento anni non importerà più a nessuno!

  9. #9
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    In un submit gestito con ajax mi aspetto di avere una risposta dal server (xml, json o almeno un booleano).
    Sulla base della risposta il mio js decide se visualizzare degli errori o reindirizzare ad una pagina.

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.