Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    84

    problema con header(Location....)

    Sono 5 giorni che son dietro ad uno script che ha un problema con "header (Location...)" senza aver risolto molto :
    in pratica ho uno script di un modulo per spedire e-mail che funziona bene ma che non funziona nell'esecuzione dell'header ,
    ossia non appare la pagina di reindirizzamento di conferma "comunicazione avvenuta", ma appare solo la pagina dello script bianca.
    Ho controllato che non vi siano output prima di usare header (anche se non sono espertissimo di php) ma non funziona comunque.
    Lo script è questo:


    Codice PHP:
    <?php
    if(substr(basename($_SERVER['PHP_SELF']), 011) == "imEmailForm") {
        include 
    '../res/script_invio_mail_net_office.php';
        
    $form = new ImForm();
        
    $form->setField('destinatario'$_POST['imObjectForm_43_1'], ''false);
        
    $form->setField('oggetto'$_POST['imObjectForm_43_2'], ''false);
        
    $form->setField('messaggio'$_POST['imObjectForm_43_3'], ''false);
        
    $form->setField('Allega'$_POST['imObjectForm_43_4'], ''true);
        
    $form->setFile('File 1'$_FILES['imObjectForm_43_5'], $imSettings['general']['public_folder'], '''');
        
    $form->setFile('File 2'$_FILES['imObjectForm_43_6'], $imSettings['general']['public_folder'], '''');
        
    $form->setFile('File 3'$_FILES['imObjectForm_43_7'], $imSettings['general']['public_folder'], '''');
        
    $form->setField(''$_POST['imObjectForm_43_8'], ''true);
        if(@
    $_POST['action'] != 'check_answer') {
            if(!isset(
    $_POST['imJsCheck']) || $_POST['imJsCheck'] != 'jsactive' || (isset($_POST['imSpProt']) && $_POST['imSpProt'] != ""))
                die(
    imPrintJsError());
            
    $form->mailToOwner('info@macroweb.it',$_POST['imObjectForm_43_1'],$_POST['imObjectForm_43_2'],$_POST['imObjectForm_43_3'],false);
            
    $form->mailToCustomer('noreply@macroweb.it','info@macroweb.it','Conferma invio e-mail','Conferma invio della mail che hai compilato con i seguenti dati: ',true);
            
    header("Location: ../comunicazione_inviata.html");
            exit();
        } else {
            echo 
    $form->checkAnswer(@$_POST['id'], @$_POST['answer']) ? 0;
        }
    }

    // End of file

    Mi date una mano a scoprire cosa non va, please????

  2. #2
    Utente di HTML.it L'avatar di Webmaster76
    Registrato dal
    Mar 2001
    residenza
    Torino
    Messaggi
    298
    Quote Originariamente inviata da pollat Visualizza il messaggio
    Sono 5 giorni che son dietro ad uno script che ha un problema con "header (Location...)" senza aver risolto molto :
    in pratica ho uno script di un modulo per spedire e-mail che funziona bene ma che non funziona nell'esecuzione dell'header ,
    ossia non appare la pagina di reindirizzamento di conferma "comunicazione avvenuta", ma appare solo la pagina dello script bianca.
    Ho controllato che non vi siano output prima di usare header (anche se non sono espertissimo di php) ma non funziona comunque.
    Lo script è questo:


    Codice PHP:
    <?php
    if(substr(basename($_SERVER['PHP_SELF']), 011) == "imEmailForm") {
        include 
    '../res/script_invio_mail_net_office.php';
        
    $form = new ImForm();
        
    $form->setField('destinatario'$_POST['imObjectForm_43_1'], ''false);
        
    $form->setField('oggetto'$_POST['imObjectForm_43_2'], ''false);
        
    $form->setField('messaggio'$_POST['imObjectForm_43_3'], ''false);
        
    $form->setField('Allega'$_POST['imObjectForm_43_4'], ''true);
        
    $form->setFile('File 1'$_FILES['imObjectForm_43_5'], $imSettings['general']['public_folder'], '''');
        
    $form->setFile('File 2'$_FILES['imObjectForm_43_6'], $imSettings['general']['public_folder'], '''');
        
    $form->setFile('File 3'$_FILES['imObjectForm_43_7'], $imSettings['general']['public_folder'], '''');
        
    $form->setField(''$_POST['imObjectForm_43_8'], ''true);
        if(@
    $_POST['action'] != 'check_answer') {
            if(!isset(
    $_POST['imJsCheck']) || $_POST['imJsCheck'] != 'jsactive' || (isset($_POST['imSpProt']) && $_POST['imSpProt'] != ""))
                die(
    imPrintJsError());
            
    $form->mailToOwner('info@macroweb.it',$_POST['imObjectForm_43_1'],$_POST['imObjectForm_43_2'],$_POST['imObjectForm_43_3'],false);
            
    $form->mailToCustomer('noreply@macroweb.it','info@macroweb.it','Conferma invio e-mail','Conferma invio della mail che hai compilato con i seguenti dati: ',true);
            
    header("Location: ../comunicazione_inviata.html");
            exit();
        } else {
            echo 
    $form->checkAnswer(@$_POST['id'], @$_POST['answer']) ? 0;
        }
    }

    // End of file

    Mi date una mano a scoprire cosa non va, please????
    Se la pagina è completamente bianca potrebbe anche essere un errore nel file che includi, molti server infatti visualizzano altro se non specifichi di visualizzarli...
    Un nuovo cms/framework... vuoi collaborare al progetto?

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    84
    Quote Originariamente inviata da Webmaster76 Visualizza il messaggio
    molti server infatti visualizzano altro se non specifichi di visualizzarli...
    In che senso ???

  4. #4
    Utente di HTML.it L'avatar di Webmaster76
    Registrato dal
    Mar 2001
    residenza
    Torino
    Messaggi
    298
    Quote Originariamente inviata da pollat Visualizza il messaggio
    In che senso ???
    Nel senso che se non fa il redirect potrebbe essere perchè lo script va in errore prima (forse c'è un errore nel file script_invio_mail_net_office.php), quindi ti appare la pagina bianca e non fa il redirect...

    Sicuro dia un problema di header location?
    Un nuovo cms/framework... vuoi collaborare al progetto?

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    84
    Quote Originariamente inviata da Webmaster76 Visualizza il messaggio
    Nel senso che se non fa il redirect potrebbe essere perchè lo script va in errore prima (forse c'è un errore nel file script_invio_mail_net_office.php), quindi ti appare la pagina bianca e non fa il redirect...

    Sicuro dia un problema di header location?
    ok, controllerò il file script_invio_mail_net_office.php ma come faccio a vedere se questo file contiene errori (visto che a parte il non apparire della pagina di header tutto il resto funziona)???

Tag per questa discussione

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.