Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,508

    Inviare una variabile da PHP ad AS

    Ho inserito una form per l'invio di una mail, invio i dati ad uno script php che effettivamente effettua l'invio e voglio che php restituisca una stringa che dica se l'invio è riuscito oppure no.
    Per fare tutto ho seguito un videotutorial su developphp, ma non funziona il ritorno della variabile, dopo aver cliccato sul submit della form ottengo il messaggio che si è ricevuta una variabile con valore null.

    Ecco il codice AS3
    Codice PHP:
    //qui sopra ci sono tutti gli include del caso

    var variables:URLVariables = new URLVariables;

    var 
    varSend:URLRequest = new URLRequest("scripts/invioposta.php");
    varSend.method URLRequestMethod.POST;
    varSend.data variables;

    var 
    varLoader:URLLoader = new URLLoader;
    varLoader.dataFormat URLLoaderDataFormat.VARIABLES;
    varLoader.addEventListener(Event.COMPLETEcompleteHandler);

    //azione da svolgere dopo l'invio dell'email
    function completeHandler(event:Event):void {
        
    //scrivo l'esito dell'invio ricevuto da php
        //esito_txt è un campo di testo dinamico
        
    esito_txt.text event.target.data.return_msg;
    }

    invia_btn.addEventListener(MouseEvent.CLICKvalidateAndSend);

    function 
    validateAndSend(e:MouseEvent):void {
    //validazione campi omessa per brevità
        
    variables.nome nome_txt.text;
        
    variables.email email_txt.text;
        
    variables.oggetto oggetto_txt.text;
        
    variables.messaggio messaggio_txt.text;
            
        
    //invia i dati allo script php
        
    varLoader.load(varSend);

    Codice PHP che dovrebbe restituire la variabile
    Codice PHP:
    $msg "Grazie per averci contattati";
    print 
    "return_msg=$msg"
    Dov'è il problema?

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,508
    Ho aggiunto all'interno del codice la riga

    trace(event.currentEvent.data);

    mi stampa questo:
    %3C%3Fphp%0D%0Aecho%20%22return%5Fmsg=ok%22%3B%0D% 0A%3F%3E

    ovvero (file modificato rispetto al primo post)

    <?php echo "return_msg=ok" ?>

    che è il contenuto del file php.
    Come mai viene fuori tutto il contenuto del file php e non solo ciò che questo stampa?

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,508
    Risolto, il problema era che pubblicando il sito con F12 l'indirizzo nel browser risultava
    File///C:/...
    invece che
    http:\\localhost\...
    quindi Apache non interpretava il file php.

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.