Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di Brutal
    Registrato dal
    Nov 2002
    Messaggi
    221

    Questo Codice???

    Ragazzi qualcuno può dare un'occhiata a questo codice...l'ho modificato ma credo di avere fatto danno infatti non funge...

    Questo è il codice modificato da me:

    stop();
    // 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 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);
    };



    // attivo l'invio della mail sul pulsante "invia_form"
    invia_form.onRelease =
    if (nome ne "" and cognome ne "" and telefono ne "" and mail ne"") {
    loadVariablesNum("invia_iscrizione.asp", 0, "POST");
    notifica_inviato.onFadeDone = function() {
    this.onFadeDone = undefined;
    var intv = setInterval(function () {
    notifica_inviato.fadeAlpha(0);
    clearInterval(intv);
    }, 1000);
    };
    notifica_inviato.fadeAlpha(100);
    break;

    } else {
    } errore_invio.onFadeDone = function() {
    this.onFadeDone = undefined;
    var intv = setInterval(function () {
    errore_invio.fadeAlpha(0);
    clearInterval(intv);
    }, 1000);
    };
    errore_invio.fadeAlpha(100);
    break;


    // 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 = "";
    }
    };

    Questo è invece il codice originale :

    // 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", "ruolo", "mail", "tel", "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 = "";
    }
    };

    Il problema sta nel fatto che il codice originale era integrato con php...io devo integrarlo con asp...mi date una mano?


  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    il codice as non conta, funziona comunque allo stesso modo, è il codice ASP che devi produrre, in base al php

    ps1. magari quando posti un codice, utilizza la formattazione corretta
    ps2. magari quando apri una discussione, attieniti al regolamento
    ps3. magari invece di postare l'intero codice del mio form mail, scrivi direttamente il link da cui l'hai scaricato, non perchè voglia pubblicità, -non me ne frega nulla, visto che è gratuito-, quanto per il fatto che almeno ci si scarica il file e il codice rimane nel contesto da cui è stato estratto, perchè se mostri un codice così senza riferimenti, dubito che qualcuno abbia la capacità di aiutarti alla cieca
    ps4. hai detto che hai modificato il codice, avresti potuto dire direttamente che modifiche hai fatto, altrimenti uno deve stare a leggersi i due codici punto per punto per capire dove hai messo mano

  3. #3
    Utente di HTML.it L'avatar di Brutal
    Registrato dal
    Nov 2002
    Messaggi
    221
    Scusa se non ho messo il tuo link...ma vado di fretta e avrei bisogno di questa informazione urgentemente...meglio che mi hai risposto tu che sei l'autore...

    Il problema è che se metto il codice per come l'hai fatto tu cambiando solo i parametri che mi interessano il codice non funziona più...visto che hai messo mano tu puoi darmi una mano? Grazie e ciao!

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    non posso darti una mano perchè non conosco ASP, ma ti posso dire che il codice AS per come lo avevo scritto e il codice PHP, sono strettamente legati e non puoi utilizzare un codice diverso per l'invio dei dati (loadVariablesNum al posto di LoadVars), altrimenti è inutilizzabile e non si può certo aggiustare

    devi trovare qualcuno di buon cuore e largo tempo, che conosca sia ASP che PHP e prenda il codice del mio PHP traducendolo in ASP

    [edit] più che messo mano, l'ho scritto completamente da 0

    [edit2] ah, se hai fretta ti sconsiglio altamente di imbarcarti nella modifica di questo form, con ASP

  5. #5
    Utente di HTML.it L'avatar di Brutal
    Registrato dal
    Nov 2002
    Messaggi
    221
    Allora...facciamo prima così mi sa...tu questo sicuramente lo sai fare...a me non serve tanto il tuo codice...quello che mi serve è : una funziona di convalida per i campi riempiti...una funzione di convalida per il campo email....una funziona di convalida per un campo obbligatorio...ovviamente voglio che se uno di questi campi non è compilato correttamente spunta il messaggio di errore...tutto qui...

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    sono due funzioni, entrambe nel codice postato
    Codice PHP:
    // 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:MovieClipnameField: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>&& temp3[1].length>1) {
                        return (
    true);
                    }
                    return (
    false);
                }
                return (
    false);
            }
            return (
    false);
        }
        return (
    false);
    }; 
    la prima la usi sui campi normali e ti restituisce true/false a seconda che il campo sia riempito o meno

    la seconda sul campo mail e verifica se il formato della mail è valido

  7. #7
    Utente di HTML.it L'avatar di Brutal
    Registrato dal
    Nov 2002
    Messaggi
    221
    Ma queste vanno bene anche se le uso fuori da tuo codice?? Nel senso...se uso solo queste funzioni vanno bene anche se uso asp? Vanno messe sempre sul primo frame?

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    sì sono due funzion separate, che restituiscono solo un valore booleano a seconda che il campo sia valido o meno

    un esempio semplice

    Codice PHP:
    if(!validate("nome_campo")){
    // non inviare, errore
    } else {
    // invia tranquillamente

    ps. la funzione "validate" deve essere inserita nel contesto dei campi di testo, cioè se si trovano sullo stage va bene sullo stage, altrimenti deve essere inserita nel movieclip che contiene i campi di testo

  9. #9
    Utente di HTML.it L'avatar di Brutal
    Registrato dal
    Nov 2002
    Messaggi
    221
    Grazie per la disponibilità...ma purtroppo non riesco a capire bene...mi dici proprio come faccio passo per passo...sono una cosa inutile...

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.