Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    php redirect header location pagina bianca

    Ciao a tutti ho un problema con redirect header location mi dà una pagina bianca senza farmi vedere il codice inserito e il browser non mi segnala nessun errore lavoro in locale con exampp

    Codice PHP:
    <?php
    class UserController
    {
        public 
    $username '';
        private 
    $logged   false;
        private 
    $usermodel '';

        public function 
    __construct()
        {   
    $this->usermodel = new UserModel();
            
    session_start();
            

            if (
    $_SERVER['REQUEST_METHOD']=='POST' && isset($_GET['action'])&& $_GET['action']== 'login' ){
                
    $username = (isset($_POST['username']))? $_POST['username'] :false ;
                
    $password = (isset($_POST['password']))? $_POST['password'] :false ;
                
    var_dump($username,$password);
                if (
    $username !=false && $password !=false  && $this->usermodel->checkLogin($username$password)){

                    
    $this->username =$username ;
                    
    $this->logged true ;

                    
    $_SESSION['username']= $username ;
                    
    $_SESSION['logged']= true ;
                    
    $_SESSION'message' ]  = 'Login effettuato correttamente';
                }else{
                    
    $_SESSION'message' ]  = 'Errore con il login; riprovare!';
                }
            }
            elseif (isset(
    $_GET['action'])&& $_GET['action']== 'logout'){
                unset(
    $_SESSION['username']);
                unset(
    $_SESSION['logged']);
                
    $_SESSION'message' ] = 'Logout effettuato correttamente';
            }
            elseif (isset(
    $_SESSION['username'])&& isset($_SESSION['logged'])){

                
    $this->username $_SESSION['username'] ;
                
    $this->logged true ;
            }
            elseif((
    $_SERVER['REQUEST_METHOD']=='POST' && isset($_GET['action'])&& $_GET['action']== 'registra' )){
                
                
    $username = (isset($_POST['username']))? $_POST['username'] :false ;
                
    $password = (isset($_POST['password']))? $_POST['password'] :false ;
                
    $repassword = (isset($_POST['repassword']))? $_POST['repassword'] :false ;
                
    $nome_reale = (isset($_POST['nome_reale']))? $_POST['nome_reale'] :false ;
                
    $email = (isset($_POST['email']))? $_POST['email'] :false ;
                
                

                if (
    $username !=false && $password !=false  && $repassword !=false && $nome_reale && $email  !=false
                   
    && $this->usermodel->Registration($username,$password,$repassword,$nom  e_reale,$email) )
                {
                    
    $this->username =$username ;
                    
    $this->logged true ;

                        
                    
    $_SESSION['username']= $username ;
                    
    $_SESSION['logged']= true ;
                    
    $_SESSION'message' ]  = "registrazione effettuato correttamente benvenuto $username";
                }
            }
            
    $this->redirectToProperArea();
        }
        
        public function 
    logged(){
            return 
    $this->logged ;
        }
        public function 
    redirectToProperArea(){
            
            
    $script_file basename$_SERVER'SCRIPT_NAME' ] );

            if ( 
    $this->logged() && $script_file == 'login.php' ) {
                
                
    header'location: ../index.php' );
                die();
            } 
            elseif ( !
    $this->Logged() && ( $script_file ==  'index.php' && isset( $_GET'action' ] ) && $_GET[  'action' ] != 'index' && $_GET'action' ] != 'detail'  && $_GET'action' ] != 'logout' ) ) {
               
                
    header'location:../login.php');
                die();
            }
            elseif ( 
    $this->logged() && $script_file == 'registra.php' ) {
                
                
    header'location:views/benvenuto.php' );
                die();
            }
        }
    }
    grazie per l aiuto

  2. #2
    sarà mica quel var_dump($username,$password); che genera un output e fa fuori l' header?

  3. #3
    ho risolto usando la funzione
    Codice PHP:
     if (!headers_sent()) {

                  
    header('Location:views/benvenuto.php');
                  exit;
                } 
    ora ho un altro problema nella pagina benvenuto.php ho un include('messagge.php'); che si trova sempre nella cartella views che é la stessa di benvenuto.php mi ritrovo sempre con una pagina bianca non mi carica l include

  4. #4
    posta il contenuto di benvenuto.php e messagge.php sennò bisogna fare la magia di sapere il codice

  5. #5
    benvenuto.php
    Codice PHP:

    <!doctype html>
    <html lang="it">
    <head>
        <meta charset="UTF-8">
        <title>registrato</title>
    </head>
    <body>
    <?php

    include ("messagge.php");

    ?>


    </body>
    </html>
    messagge.php
    Codice PHP:
    <?php if (isset($_SESSION['message'])) : ?>

        <div class="mesaggio">
        <?php
            
    echo  $_SESSION['message'] ;
                unset(
    $_SESSION['message']);
        
    ?>
        </div>
    <?php endif; ?>
    Ultima modifica di giulianoco; 19-04-2016 a 20:38

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 © 2024 vBulletin Solutions, Inc. All rights reserved.