Visualizzazione dei risultati da 1 a 4 su 4

Discussione: mail flash-php

  1. #1
    Utente di HTML.it L'avatar di arn
    Registrato dal
    Jun 2002
    Messaggi
    420

    mail flash-php

    Ciao a tutti,
    sto modificando un form per invio mail tramite supporto con PHP.

    Il problema: vorrei che cliccando il bottone SEND in flash (sul fr_n°1), oltre ad eseguire questo codice:

    on (release) {
    sendMail();
    }

    eseguisse la verifica su una variabile di testo dinamico (s_res = questa verifica se il server ha inviato la mail e nel box di testo compare la scritta MAIL INVIATA); la verifica se positiva deve far proseguire l'animazione al fr_n°2 dopo un tempo prestabilito di 3sec,
    altrimenti passati 5 sec di tentativi deve mandare al fr_n°3 dove porrò il messaggio PROBLEMI DI CONNESSIONE AL SERVER !!!.



    Vi posto i codici Flash e PHP

    ----------------------------------------
    Codice PHP
    ----------------------------------------
    <?
    // # DESCRIZIONE VARIABILI PASSATE IN POST (O GET) ALLO SCRIPT PHP:
    // $email -> indirizzo email del mittente, l'utente che compila la form
    // $message -> messaggio del mittente
    // $sender -> nome e cognome del mittente (se specificati)
    // $addr -> indirizzo (quello fisico. ricordate che la gente non esiste solo su internet :-D ) del mittente (se specificato)
    // # FINE DESCRIZIONE
    //
    //
    $dest="mio_indirizzo_mail@isp.it"; // questo sarà l'indirizzo a cui recapitare (elettronicamente, stavolta) la mail
    $subject="La tua posta webmail"; // questo è il subject della mail. decidete voi cosa scriverci
    //
    //
    // la variabile headers ($hearders, per php) conterrà gli headers per la formattazione della mail
    // gli headers sono delle vere e proprie testate (non colpi dati con la fronte)
    // in essi sono contenuti i dati che formatteranno il testo e lo renderanno "masticabile" ad un mail server.
    //
    // costruiamo il body della mail
    // nel nostro esempio abbiamo bisogno di avere i dati del mittente (indirizzo ecc)
    // costruiamo...
    //
    $mbody="<html><body>";
    $mbody.=$message."

    ";// nota: .= è come in flash dire variabile+=qualcosa
    // nel nostro caso:
    // variabileStringa.=altraStringa
    $mbody.=$addr;
    $mbody.="</body></html>";
    //

    // si, avete ragione...
    // è una pagina formattata in html
    //
    //echo $mbody;
    //
    $headers = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $headers .= "From: ".$email."\r\n";// la variabile $email farà parte di quelle passate in post allo script
    $headers .= "Reply-To: ".$email."\r\n";// come sopra
    //
    // una volta terminata la stesura degli headers, avremo la mail bella e pronta.
    // rimane solo l'ultima operazione: l'invio
    //
    mail($dest, $subject, $mbody, $headers);// invia la mail
    //
    //
    // l'output che andremo a dare ora, cioè success=1, sarà restituito all'oggetto LoadVariables di flash
    // in questo modo flash saprà che la mail è stata inviata, e potremo notificare all'utente il successo dell'operazione
    // (non è bello premere un tasto e non sapere cosa sta accadendo, vero?)
    //
    echo "success=1"; // QUI, QUI, QUI è l'output da PHP che mi interessa!!!
    //
    // con ciò la parte php è finita

    // technical ps:
    // se il server su cui gira php non ha il settaggio dell' SMTP server, allora la mail non potrà essere invitata
    ?>

    ----------------------------------------
    Codice FLASH (è posto tutto sul fr_n°1)
    ----------------------------------------

    function sendMail() {
    scrptUrl = "script.php";
    // creiamo un'oggetto LoadVars
    mail = new LoadVars();
    // diamo all'oggetto una serie di variabili, che saranno quelle da passare allo script
    mail.email = email;
    mail.sender = nome;
    mail.addr = indir+"
    "+citta;
    // in questo caso abbiamo costruito una variabile sommandone 2
    // ovviamente, essendo le variabili passate in post delle stringhe, possiamo concatenarle come stringhe
    mail.message = message;
    // ora definiamo l'onLoad dell'oggetto
    // questo viene eseguito quando l'url viene caricata completamente
    // cioè alla fine delle operazioni col server
    mail.onLoad = function() {
    trace("server operation complete");
    if (this.success) {
    // questo si riferisce alla variabile "success" in output dallo script
    // una volta inviata la mail
    // se l'output non è ricevuto vuol dire che la mail non è stata mandata
    // a voi fare un timeOut per robe del genere
    // o manipolare il php per fare dei controlli intermedi
    // (stimolo per voi o mancanza di voglia da parte mia? ai posteri l'ardua sententia)
    s_res = "MAIL INVIATA"; ---> QUI la risposta della mia var
    }
    };
    // e finalmente inviamo questa chiamata al server
    // utilizziamo sendAndLoad in modo da mandare anche i dati
    // altrimenti con soltanto load riceviamo senza inviare nulla
    // che comodo Mx!!
    // la sintassi di sendAndLoad è:
    // lvobject.sendAndLoad(url, destinazione del response [, metodo "post" oppure "get])
    // ho messo il metodo tra parentesi quadre perché è opzionale
    mail.sendAndLoad(scrptUrl, mail, "post");
    }
    La rapidità che è una virtù, genera un vizio che è la fretta !
    -------------------------
    Browser: Opera & Firefox

  2. #2
    Utente di HTML.it L'avatar di arn
    Registrato dal
    Jun 2002
    Messaggi
    420
    Come sempre molte risposte !!! ehhhhehhh !
    Beh, io vi chiedo ancora una cosuccia !

    Che comando metto per verificare se uno ha inserito l'idirizzo mail, sempre sotto il bottone SEND MAIL ? se non lo ha fatto dovrà comparire un messaggio...COMPILA BLA BLA ...
    La rapidità che è una virtù, genera un vizio che è la fretta !
    -------------------------
    Browser: Opera & Firefox

  3. #3
    Originariamente inviato da arn
    Come sempre molte risposte !!! ehhhhehhh !
    finchè posti 300 righe di codice... non penso che molti abiano il tempo di mettersi a guardarle tutte...

    fai prima a cercare altre discussioni nel forum...

  4. #4
    Ciao.
    Io generalmente risolvo la cosa in ActionScript.

    Poniamo che tu hai un campo testo imput "nome".
    Se vuoi verificare che ci abbiano scritto qualcosa prima dell'invio utilizzo una condizione if sul pulsante di invio del form:

    on(release) {
    if (nome!="") {
    //lanci la funzione o il getURL
    } else {
    gotoAndPlay("compila");
    }
    }

    dove "compila" è un'etichetta che si trova sulla stessa timeline e dalla quale parte la tua animazione con la frase "compila tutti i campi del form."

    È un esempio banale, e magari non è quello che cerchi, però io utilizzo questo metodo...
    Brain

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.