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

    Non mi carica la pagina php

    Salve a tutti. Ho cercato tramite il motore di ricerca delle info sul forum ,ma non ho trovato nulla che possa fare al caso mio.

    Ho il seguente problema : devo gestire l'invio di email direttamnte dal flash senza aprire il client di posta.
    Ho realizzato quindi un form con tre campi che ho chiamato rispettivamente mittente, oggetto e testo inizializzandole alla stringa nulla, cioè
    codice:
    mittente=""; 
    testo=""; 
    oggetto=""
    e fin qui tutto funziona.
    Ho poi creato un pulsante per l'invio dei dati e gli ho inserito il seguente script :
    codice:
    on(release)
    {
    	if ((oggetto!="") && (mittente!="") && (testo!=""))
    	{
    		var variabile:LoadVars=new LoadVars();
    		variabile.oggetto=oggetto;
    		varibile.mittente=mittente;
    		variabile.testo=testo;
    		variabile.sendAndLoad("mail.php",variabile,"POST");
    	}
    }
    dove mail.php è lo script che invia le mail. Ho provato lo script in locale e pur non inviando la mail in quanto non ho un server di posta, esegue comunque l'istruzione mail e mi restituisce correttamente l'errore, quindi sicuro il mio problema non è nello script php.
    Il problema è che nello script associato al pulsante invia non vengono eseguite le istruzioni relative all'oggetto LoadVars, mentre se inserisco una qualunque altra istruzione di flash (come ad esempio caricareu n movieclip) essa viene correttamente eseguita.
    Di conseguenza nn viene eseguito lo script php e la mail non viene inviata.
    Qualcuno saprebbe consigliarmi per capire cosa sbaglio?
    grazie, ciao ciao

  2. #2
    qui c'è un errore di scrittura:
    varibile.mittente=mittente;

    dove fai l'onLoad del LoadVars?

    hai fatto dei trace() x controllare i campi di testo?

    P.S: ti conviene istanziarli e quindi fare: nome.text

  3. #3
    Ci provo e ti faccio sapere.
    Per l'onLoad non l'ho ancora scritto, forse era fondamentale per far partire lo script?

  4. #4
    ciao... ho modificato il codice in questo modo
    codice:
    on(release)
    {
    	if ((oggetto.text!="") && (mittente.text!="") && (messaggio.text!=""))
    	{
    		var variabile:LoadVars=new LoadVars();
    		variabile.oggetto=oggetto.text;
    		variabile.mittente=mittente.text;
    		variabile.testo=messaggio.text;
    		variabile.sendAndLoad("mail.php",variabile,"POST");
    		variabile.onLoad=function(success)
    		{
    			if (success)
    			{
    				oggetto.text="";
    				mittente.text="";
    				messaggio.text="";
    				risultato.text=variabile.risultato;
    			}
    			else
    				risultato.text="Errore!!! Non è stato possibile inviare il messaggio";
    		}
    		
    	}
    	else
    		risultato.text="Devi riempire tutti i campi obbligatori";
    }
    dove risultato.text è il campo di testo dove dovrei stampare la variabile di ritorno dallo script php.
    Lo script php è :
    Codice PHP:
    <?php
        $oggetto
    =$_POST['oggetto'];
        
    $testo=$_POST['testo'];
        
    $mittente=$_POST['mittente'];
        print(
    $oggetto);
        print(
    $testo);
        print(
    $mittente);
        
        
    $ok="Invio avvenuto con successo";
        
    $errore="Invio fallito";
        if (
    mail("utente@dominio.it",$oggetto,$testo))
        {
            
    $risultato="ok";
            print(
    $ok);
            }
        else
        {
            print(
    $errore);
            
    $risultato="ko";
        }
        print(
    "&risultato=$risultato")
    ?>
    ora da quello che ho capito questo script dovrebbe essere chiamato automaticamente quando parte il metodo sendAndLoad giusto?
    Eppure questo script nn viene eseguito. Le variabili vengono però inviate, visto che se richiamo lo script con getURL le variabili di php sono settate.
    Come faccio per far chiamare direttamente lo script da sendAndLoad?

  5. #5
    che distratto che sono ho messo l'assegnazione alla variabile risultato in php dentro un print...
    l'ho tolto e ora funziona

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.