Flash MX 2004: mail form e script php.

Di: artizone | 26/09/2020 18:24:25
Ciao,
ho un grosso problema con un form mail realizzato in Flash.
Quando riempo tutti i campi txt ed invio il form alla lettura della mail i campi inseriti: nome, email, url e commenti risultano vuoti.
Il problema sembra che lo script php non legga le variabili inviate da Flash.
Il modulo form viene caricato come filmato esterno a quello principale come _level3.
Ho letto su un altro forum che il problema forse è dovuto al fatto che il percorso delle variabili nel php è incompleto inquanto dovrei specificare anche il _level.
Nel prossimo messaggio inserirò il codice Actionscript e il php.
Ciao e spero che qualcuno potrà aiutarmi.

Risposte



Pubblica gli script.

Di: goku | 26/09/2020 18:24:25


Questi sono i file che non funzionano.
Il form è realizzato come clip filmato con nome formail e viene caricato sul filmato principale come _level3;
Questo è il codice AS del Clip:
onClipEvent(data){
// show welcome screen
_root.formail.nextFrame();
}
all’interno della clip formail:
1°livello
fotogramma n°1 : stop();
2°livello
fotogramma n°1 : loadVariablesNum("mailform.php", 0, "post");
nome = "";
email = "";
url = "";
commenti = "";
3°livello
fotogramma n°1 tasto INVIA : on (release) {
if (nome eq "") {
risultati = "inserire il nome";
gotoAndStop(1);
} else if (email eq "") {
risultati = "inserire un indirizzo emai";
gotoAndStop(1);
} else if (url eq "") {
risultati = "inserire un indirizzo web";
gotoAndStop(1);
} else if (commenti eq "") {
risultati = "inserire un messaggio";
gotoAndStop(1);
} else {
risultati = "invio dati riuscito";
nextFrame();
}
}
3°livello
fotogramma n°2 tasto BACK : on (release) {
_root.puntatore.gotoAndStop(1);
prevFrame();
risultati = "";
}
Nei campi di input sono inserite le seguenti variabili:
nome
mail
url
commenti
e l'ultimo campo di TXT dinamico che ha il compito di verificare la corretta spedizione dei campi:
risultati
///////////di seguito la pagina PHP///////////
<HTML>
<HEAD>
<TITLE>contatti</TITLE>
<BODY>
<?php
$TextVariable = '&risultati=';
$response = 'dati inviati..';
echo $TextVariable;
echo $response;
mail ("info@artizone.it", "Commenti dal sito", "
Dati inviati dal Form ARTIZONE:
Nome: $nome
Email: $email
URL: $url
Commenti: $commenti
");
?>
</body>
</html>
P.S. entrambi i file “fla e Php” risiedono nella stessa directory del sito. Il file PHP ha i permessi di lettura e scrittura; il server è Apache con tutte l’estensioni installate.
Ringrazio anticipatamente chiunque potrà aiutarmi!

Di: artizone | 26/09/2020 18:24:25


Intanto vedi se può esserti di aiuto questo:
http://www.001design.it/forum_italiano/thread.php?id=568
credo di si, anche qui inviamo dati ad un file php.

Di: goku | 26/09/2020 18:24:25

vorrei risolvere...

Grazie per il link ma non riesco a capire dove sia l’errore in quello da me inviato.
Continuo ad avere bisogno di assistenza.

Di: artizone | 26/09/2020 18:24:25


Se ho capito bene credo che ci sia un errore nella gestione delle variabili.
1) Il comando loadVariablesNum("mailform.php", 0, "post"); cerca le variabili sul _level0 non capisco se le tue ci arrivano.
2) Pulizia variabili
nome = "";
email = "";
url = "";
commenti = "";
i tempi di reazione della timeline sono diversi da quelli del server ... succede che mentre il php si carica ...le tue variabili vengono pulite ... per questo io sposto la pulizia delle variabili parecchi frames più in là.
3) Php
Io utilizzo questo:
<?
$headers = "From: $emai";
$message = str_replace("\r", "\n", $message);
mail("staff@tuosito"$subject", "$message", "$headers");
?>
naturalmente nel flash gestisco sul _level0 le variabili:
email - indirizzo email;
subject - oggetto della email;
message - i dati del form
Spero di essere stato utile
ciao

Di: coda_di_volpe | 26/09/2020 18:24:25

Problema loadvariablesNum !?!?!

grazie x l'aiuto coda_di_volpe ma sembra che nn funzioni cmq.
ho testato anche altri script php e fla ma nn funzionano lo stesso."i gestori del server dicono che da loro tutto OK".
se hai la possibilita postami a "info@artizone" il tuo exp funzionante cosi' da capire se è un problema di var o no!
p.s qualcuno mi aiuti!!!!!!!!!!!!!!!!!!!!!!!

Di: artizone | 26/09/2020 18:24:25


Ok dammi solo il tempo di togliere i miei fronzoli dal file

Di: coda_di_volpe | 26/09/2020 18:25:25


Hai risolto?

Di: coda_di_volpe | 26/09/2020 18:25:25


Ciao Coda,
ancora grazie per i file! Purtroppo però il problema non l'ho risolto!
Io continuo a credere che sia un problema di lettura delle variabili. Ho corretto il n° del livello ("mailform.php", 0, "post") in ("mailform.php", 3, "post") visto appunto che il mio filmato esterno "contattami" viene richiamato dal movie principale mediante: on (press)
{loadMovieNum ("contattami.swf", "3");}
Purtroppo abbandonare l’idea iniziale di utilizzare filmati esterni a supporto dell’interfaccia principale mi sconvolge, proprio perché bisognerà rivedere l’intero progetto.
Ciao e ancora grazie.
P.S scusa la sfogata!

Di: artizone | 26/09/2020 18:25:25


HI Artizone,
non mollare mai, a volte una virgola è la differenza tra un programmatore felice e un paranoico assetato di sangue. :))
Comunque...
on (press)
{loadMovieNum ("contattami.swf", "3");
}
così come lo hai scritto tu non è corretto, meglio:
on (release)
{loadMovieNum ("contattami.swf", 3);
}
1) Nota che il prefisso “release” controlla l’istante in cui il tasto sinistro del mouse viene rilasciato; ciò evita eventuali doppi click che metterebbero in crisi il comando loadMovieNum.
2) il livello 3 è senza virgolette, non è una costante ma una variabile.
Per quanto riguarda la gestione di moduli esterni, ti garantisco che funziona!
(Vedi www.codadivolpe.com/newsite/ nella sezione visitors ---> COMMUNICATION AREA)
Io lavoro con una 15na di livelli proprio per separare la gestione delle varabili ed avere file piccoli da scaricare.
Nella COMMUNICATION AREA dovevo caricare i dati dell’utente da mandare allo staff su un piano diverso dal fondo del sito.
Quindi il fondo sul livello 10 e il modulo di gestione email sul livello 20.
In questo caso ho gestito così il momento fatale del lancio del php:
set(nomefile,0);
set (percorso,0);
percorso= "qui inserisci la path dove si trova il tuo file php sul server";
nomefile=percorso + "sendmail.php";
loadVariables (nomefile, this, "POST");
Come puoi vedere non mi sono voluto preoccupare di assegnare un livello al loadVariables e mi sono semplificato l'esistenza utilizzando il prefisso 'this' che appunto raccoglie le variabili comuni da mandare al php dallo stesso livello del lancio di loadVariables.
Spero di essere stato chiaro... nel caso ci fossero ulteriori problemi, se mi mandi le specifiche ti posso fare io il fla... cmq una cosa è sicura... si può fare quindi... coraggio!

Di: coda_di_volpe | 26/09/2020 18:25:25


Ari salve!
ancora grazie per l’interessamento. Oggi ho terminato la conversione dei filmati ext caricati sui livelli in filmati ext caricati in clip contenitore situati sullo stage della main_home.
Così facendo ho “risolto” il problema inerente alla scomparsa delle variabili, “forse”.
Spero che appena monterò il nuovo mail form non ci siano problemi.
A breve novità!

Di: artizone | 26/09/2020 18:25:25