Visualizzazione dei risultati da 1 a 8 su 8

Discussione: redirect o altro?

  1. #1

    redirect o altro?

    ciao.. ho un problemino con il reindirizzamento:
    in index.php ho la classica form di login che manda a login.php
    in login.php devo fare un reindirizzamento a
    - index.php se il login non è andato a buon fine
    - index2.php se il login è corretto

    ho fatto una cosa di questo tipo:
    Codice PHP:
        if($login_check > 0)
           ?> <META HTTP-EQUIV="REFRESH" CONTENT="0; URL=index2.php"> <?
        
    else
           
    ?> <META HTTP-EQUIV="REFRESH" CONTENT="0; URL=index.php"> <?
    diciamo che funziona ma non so quanto sia "guardabile"? o c'è un metodo più semplice/efficace?

    un'altra cosa: vorrei che il redirect venisse fatto su una pagina passata come variabile dichiarata ad esempio come $pagina = $_POST['pagina']; si può fare? :master:

    grazie a chi mi darà una mano!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    i meta tags vanno tra i tags head: in qualsiasi altro punto è sbagliato. Puoi sempre pensare ad un js oppure, meglio, ad un header location php....

  3. #3
    mmm.. non è che sono molto pratica...
    come dovrei fare quindi?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    Codice PHP:
    if($login_check 0) {
           
    header("Location: index2.php"); 
        }else{
           
    header("Location: index.php"); 
        } 

  5. #5
    grazie 1000!!!!
    ma funziona anche se il nome della pagina lo passo come variabile (come ho detto nel primo post)?
    funzionerebbe fare una cosa del genere: header("Location: $pagina");
    o non si può fare una cosa simile?

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    6,034
    certo,devi solo controllare per bene la variabile $pagina se ti giunge via get o post, per annullare eventuali pericoli.

  7. #7

    ho fatto così ma non funziona!
    la variabile pagina la prendo così: $pagina = $_POST['pagina'];
    e dovrebbe funzionare xke se faccio un echo "nome pagina: ".$pagina; è giusta...
    il problema è che non mi fa il redirect...
    e mi da pure questo: Warning: Cannot modify header information - headers already sent by
    :master:

  8. #8
    wuell'errore ti vinee restituoito perchè, evidetnemente, tu invii qualcosa in output prima della funzione header() quindi sono due le cose o sposti la funzione header() prima di tutti li output, oppure metti (sempre prima degli output) la funzione ob_start() e alla fine del file ob_end_flush()

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.