Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: header non funziona!

  1. #1

    header non funziona!

    fino ad oggi andava benissimo, poi non ho + capito che diavolo è successo e non reindirizza + alla home.
    vi posto il codice:

    Codice PHP:
    if(isset($_POST['login'])) {... eccetera
    header
    ('Location: index.php'); exit;} 
    cioè l'utente si logga ma se si trova in un altra pagina nn viene portato all'index.php

    idem per il logout

    Codice PHP:
    if(isset($_POST['logout'])) { session_destroy();  header('Location: index.php'); exit; } 
    non capisco perchè però... oggi andava poi ho lavoricchiato su e nn andava più.

    sapete perchè?

  2. #2
    ti da qualche tipo di errore ?

  3. #3
    Nel 99% dei casi, esperienzapersonale, header ('location:xxx') non funziona per colpa di un qualcosa che hai stampato PRIMA di invocare il cambio di header, molto spesso il problema è difficile da capire perchè anche un a capo vuoto o uno spazio bianco causa l'errore.

  4. #4
    Io generalmente uso tutta la path della pagina destinazione

  5. #5
    si ma il problema nasc PRIMA della funzione header
    se ad esempio fai

    Codice PHP:
    echo "ciao"
     
    header ('location:index.php'); 
    avrai un errore
    stessa cosa se prima stampi degli spazzi vuoti
    Spessissimo mi son ritrovato ad avere errori perchè un file che includevo aveva la chiusura del tag php e dopo un invio per errore
    quindi una riga vuota di troppo che generava l'errore

  6. #6
    header da grossi problemi anche a me, delle volte va altre nn va , alcune volte mi da errori,
    allora lo sostituito cn u javascript che funziona bene e nn mi ha dato nessun problema
    echo '<script>location.href = "index.php"; </script>';
    prova cosi' vedrai che andra' bene!!!1

  7. #7
    se l'header viene chiamato ad esempio a metà script servirà un ob_start()

  8. #8
    bisogna capire bene come funziona la funzione header.

    Come dice la parola stessa modifica le impostazioni dell'header della pagina che viene creata, quindi se la pagina è già stata creata (anche solo con uno spazio bianco) allora ovviamente da un errore, non si può modificare qualcosa che già esiste.

    Utilizzando la funzione

    ob_start();

    forziamo il server ad "aspettare" prima di eseguire il lancio dell'header alla fine di aver caricato tutta la pagina.
    Tecnicamente manda header e corpo assieme, e non in 2 parti come invece è la prassi.

    Cercherei di vedere comunque dov'è l'errore perchè basta poco per risolvere.
    .

  9. #9
    Originariamente inviato da samo hong
    header da grossi problemi anche a me, delle volte va altre nn va , alcune volte mi da errori,
    allora lo sostituito cn u javascript che funziona bene e nn mi ha dato nessun problema
    echo '<script>location.href = "index.php"; </script>';
    prova cosi' vedrai che andra' bene!!!1
    diciamo che funziona, ma non per il logout!

    edito: devo cliccare due volte sul mio pulsante "logout" per far uscire l'utente

  10. #10
    Utente di HTML.it L'avatar di Ranma2
    Registrato dal
    Mar 2003
    Messaggi
    2,648
    Originariamente inviato da viscontino
    diciamo che funziona, ma non per il logout!
    ma non ti torna nessun errore?

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.