Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di Tallid
    Registrato dal
    Jan 2009
    Messaggi
    76

    problema funzione hedaer(....)

    Ho scritto questo codice , è una pagina di log in, se inserico i dati corretti header funzione bene e mi rimanda ad index , se li inserisco errati (1 ramo dell if) mi rimane in login.php senza lasciare alcun mesaggio d'errore , pagina bianca.

    Codice PHP:
    <?php
    include("include/connection.php");           
    $statement=$CONNESSIONE->prepare("select * from utente where username=? AND password=?");          if(!$statement->execute(array($_POST['username'],$_POST['password'])))
    {
                      
    header("Location: index.php");
    }    
     else{
             
    $resultSet=$statement->fetchAll(PDO::FETCH_BOTH);
             foreach(
    $resultSet as $row){
               
    $_SESSION['NomeUtente']=$row['Nome'].$row["Cognome"];
                
    $_SESSION['Username']=$row['Username'];
                
    $_SESSION['isLogged']=true;
                
    header("Location: index.php");
    }    
    }         
    ?>
    qualcuno può aiutarmi ? grazie

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    forse c'è qualcosa che non va in $statement->execute

    sei sicuro di avere la visualizzazione degli errori abilitata?

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    controlla che nel php.ini sia impostato
    error_reporting = E_ALL
    oppure
    error_reporting = E_STRICT

    Probabilmente un messaggio d'errore/warning viene generato, ma non mostrato sulla pagina, questo potrebbe causare un problema di "header already sent" alla funzione header().

  4. #4
    Utente di HTML.it L'avatar di Tallid
    Registrato dal
    Jan 2009
    Messaggi
    76
    Si ho controllato è scritto
    error_reporting = E_ALL
    e anche error_display=ON

  5. #5
    Prova ad aggiungere exit() dopo l'header:

    Codice PHP:
    ...
    header("Location: index.php");
    exit();
    ... 
    P.S.
    Assicurati anche che entri nell'if piuttosto che nell'else magari aggiungendo un echo.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Utente di HTML.it L'avatar di Tallid
    Registrato dal
    Jan 2009
    Messaggi
    76
    si ho già provato ad aggiungerlo ma niente

  7. #7
    Allora non entra nell'if.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Utente bannato
    Registrato dal
    Apr 2012
    Messaggi
    5
    ma la popolazione in aumento. edit - no spam!

  9. #9
    Utente di HTML.it L'avatar di Tallid
    Registrato dal
    Jan 2009
    Messaggi
    76
    Avete ragione !$statement->execute ritorna true o false in base al risultato della query (Errata,Corretta) Grazie!

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.