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

    Tasto invio e form mail

    Buonasera a tutti.
    Spero di non essere ot.
    Ho il clsaaico form mail in php che ha funzionato regolarmente, ricevendo le variabili (Nome, Cognome, Mail e Messaggio) da un MC flash con il comando loadvariables azionato da un button "INVIA" non comandabile dal tasto "INVIO".
    Un utente, utilizzando il mio MC, nel campo input "MESSAGGIO", scrive quanto segue "Buonasera, " e preme il tasto invio scrivendo il resto, usandolo per andare a capo.
    La mail che mi arriva è la seguente "Tizo Caio ha scritto il seguente messaggio : Buonasera," e basta.
    Quindi, tutto quello che ha scritto dopo aver premuto il tasto "INVIO" non è pervenuto.
    Come risolvereste il problema ?
    Devo intervenire sul form.php o sul MC ?
    Invio di seguito il codice del form.php

    <?php

    $sendTo = "xxx@xxx.it";
    $subject = "Messaggio da sito internet";
    $headers = "From: <" . $_POST["mail"] .">\r\n";
    $message = "Il Sig. " . $_POST["nome"] . " " . $_POST["cognome"] . " ha inviato il seguente messaggio " . $_POST["messaggio"];
    mail($sendTo, $subject, $message, $headers);

    ?>

    Grazie a tutti dell'aiuto.

  2. #2

    Risolto

    Ho risolto programmando il form in asp
    Grazie lo stesso.

    Saluti a tutti

  3. #3
    Io avrei lo stesso problema dell' a capo con il tasto invio che poi non viene visualizzato nella mail

    asp non lo conosco (neanche tanto il resto) quindi non saprei come risolvere in php

    di seguito vi metto i codici che ho utilizzato (presi già fatti e modificati solo nei campi)

    // porto a zero la visibilità degli avvisi
    errore_invio._alpha = 0;
    errore_server._alpha = 0;
    errore_mail._alpha = 0;
    notifica_inviato._alpha = 0;
    // creo una funzione per il fadeIn/fadeOut degli avvisi
    MovieClip.prototype.fadeAlpha = function(to:Number) {
    var t:Object = new mx.transitions.Tween(this, "_alpha", mx.transitions.easing.None.easeNone, this._alpha, to, 1, true);
    t.path = this;
    t.onMotionFinished = function() {
    this.path.onFadeDone();
    };
    };
    // creo una funzione che verifica che il campo richiamato sia stato riempito e non contenga spazi vuoti
    var validate = function (mail_field:String):Boolean {
    var temp = this[mail_field].text.split(" ").join("");
    var r:Boolean = (temp.length<=0) ? false : true;
    return r;
    };
    // creo la funzione di verifica per il campo mail
    var checkMail:Function = function (target:MovieClip, nameField:String):Boolean {
    var temp:String = target[nameField].text;
    temp = temp.split(" ").join("");
    if (temp.length>0) {
    if (temp.lastIndexOf("@")>-1) {
    var temp2 = temp.split("@");
    if (temp2[1].length>5) {
    var temp3 = temp2[1].split(".");
    if (temp3[0].length>2 && temp3[1].length>1) {
    return (true);
    }
    return (false);
    }
    return (false);
    }
    return (false);
    }
    return (false);
    };
    // creo una funzione che viene richiamata al tentativo di invio
    var alert_report:Function = function (c:Number) {
    switch (c) {
    //
    // case 0 -> il primo caso viene richiamato se l'invio è avvenuto correttamente
    case 0 :
    notifica_inviato.onFadeDone = function() {
    this.onFadeDone = undefined;
    var intv = setInterval(function () {
    notifica_inviato.fadeAlpha(0);
    clearInterval(intv);
    }, 1000);
    };
    notifica_inviato.fadeAlpha(100);
    break;
    //
    // case 1 -> il secondo caso viene richiamato se i campi obbligatori non sono stati compilati
    case 1 :
    errore_invio.onFadeDone = function() {
    this.onFadeDone = undefined;
    var intv = setInterval(function () {
    errore_invio.fadeAlpha(0);
    clearInterval(intv);
    }, 1000);
    };
    errore_invio.fadeAlpha(100);
    break;
    //
    // case 2 -> il terzo caso viene richiamato se il server non risponde o se la mail non viene inviata correttamente
    case 2 :
    errore_server.onFadeDone = function() {
    this.onFadeDone = undefined;
    var intv = setInterval(function () {
    errore_server.fadeAlpha(0);
    clearInterval(intv);
    }, 1000);
    };
    errore_server.fadeAlpha(100);
    break;
    case 3 :
    errore_mail.onFadeDone = function() {
    this.onFadeDone = undefined;
    var intv = setInterval(function () {
    errore_mail.fadeAlpha(0);
    clearInterval(intv);
    }, 1000);
    };
    errore_mail.fadeAlpha(100);
    break;
    }
    };
    // creo un array che mi contenga tutti i nomi dei campi di testo che intendo inviare via mail
    var campi:Array = new Array("nome", "ditta", "citta","provincia", "indirizzo", "mail", "tel", "fax", "messaggio");
    // e un altro array che contiene i nomi dei campi obbligatori
    var campiObbligatori:Array = new Array("nome", "mail", "messaggio");
    // entrambi gli array appena creati devono essere riproposti in php secondo le istruzioni del file PHP
    //
    // restringo l'immissione di caratteri nel campo mail a quelli necessari
    this["mail"].restrict = "^ ";
    // attivo il TAB per i campi
    for (var i = 0; i<campi.length; i++) {
    var l:Number = i+1;
    this[campi[i]].tabIndex = l;
    }
    // attivo l'invio della mail sul pulsante "invia_form"
    invia_form.onRelease = function() {
    // creo il LoadVars per la comunicazione con il file PHP
    var lv_sendMail:LoadVars = new LoadVars();
    // avvio un ciclo che mi verifica se i campi obbligatori sono riempiti
    // in caso positivo invia i dati al file PHP
    // in caso negativo attiva l'alert_report -> case 1
    for (var m = 0; m<campi.length; m++) {
    if (campiObbligatori.toString().indexOf(campi[m])>=0) {
    if (validate(campi[m])) {
    if (campi[m] != "mail") {
    lv_sendMail[campi[m]] = this._parent[campi[m]].text;
    } else {
    if (checkMail(this._parent, campi[m])) {
    lv_sendMail[campi[m]] = this._parent[campi[m]].text;
    } else {
    alert_report(3);
    break;
    }
    }
    } else {
    alert_report(1);
    break;
    }
    } else {
    lv_sendMail[campi[m]] = this._parent[campi[m]].text;
    }
    // alla fine delle verifiche, se è tutto apposto, invio i dati
    if (m>=campi.length-1) {
    lv_sendMail.sendAndLoad("sendmail.php", lv_sendMail, "POST");
    }
    }
    // compilo l'evento onLoad della classe LoadVars che mi verifica se l'invio è andato a buon fine o meno
    // nel caso sia stata inviata attiva l'alert_report -> case 0
    // altrimenti attiva l'alert_report -> case 2 (errore del server)
    lv_sendMail.onLoad = function(ok) {
    if (ok) {
    if (this.report == "OK") {
    alert_report(0);
    reset_form.onRelease();
    } else {
    alert_report(2);
    }
    } else {
    alert_report(2);
    }
    };
    };
    // il tasto "reset_form" si occupa di svuotare i campi del form
    reset_form.onRelease = function() {
    for (var r = 0; r<campi.length; r++) {
    this._parent[campi[r]].text = "";
    }
    };





    codice php



    <?php
    if(!empty($_POST)){
    // valori da modificare
    $address = "mia mail"; // inserire qui tra le "" la mail a cui va inviato il messaggio
    $site = "http://miosito.it"; // facoltativo, potete inserire qui il nome del sito
    $object = "Invio mail dal sito $site"; // oggetto
    //
    // i valori dei due array che seguono vanno modificati in base a quelli presenti negli array con lo stesso nome, nello script di flash
    $campi = array("nome", "ditta", "citta", "provincia", "indirizzo", "mail", "tel", "fax", "messaggio");
    $campiObbligatori = array("nome", "mail", "messaggio");
    //
    // non modificare lo script al di sotto di questa riga
    //---------------------------------------------------------------//
    $body = "";
    $headers = "";
    $o = (object) $_POST;
    $s = implode(",", $campiObbligatori);
    foreach($campi as $value){
    if(substr_count($s, $value) > 0 && is_null($o->$value)){
    echo "&report=KO&";
    break;
    } else {
    if(!is_null($o->mail) && $o->$value == $o->mail){
    $headers.= "From: <".$o->mail.">";
    }
    $body.= $value.": ".$o->$value."\r\n";
    if($value == $campi[count($campi)-1]) {
    if(!mail($address, $object, $body, $headers)) die("&report=KO&");
    else echo "&report=OK&";
    }
    }
    }
    }
    ?>

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.