Formular de contact in Flash si PHP


V-am explicat ieri cum puteti face un formular de contact javascript. Acum am sa va spun cum puteti face un formular de contact Flash.

Vom face un formular simplu, cu 3 campuri, dintre care doua obligatorii – nume si adresa e-mail. Vom face o validare pentru ambele campuri obligatorii.

Dupa cum probabil intuiti deja, vom trasa in Flash 3 text field-uri setate ca input. Le vom numi dupa cum urmeaza: nume, mail si mesaj. Pentru nume si mail setam single line, iar pentru mesaj multiline.

Dupa aceea desenam 2 butoane, unul de trimitere (numit trimite) si unul de reset (numit reset).

Sa trecem la ActionScript. Selectam frame-ul pe care am desenat toate cele si apasam tasta F9.

Prima si prima data vom defini o functie care va face validarea si va trimite variabilele catre PHP.

function trimite(){
	if (nume.text  "" && mail.text  "" && checkEmail(mail.text) ) {
		var variabileTrimise:LoadVars = new LoadVars();
		var variabilePrimite:LoadVars = new LoadVars();
		variabileTrimise.mail = mail.text;
		variabileTrimise.nume = nume.text;
		variabileTrimise.mesaj = mesaj.text;
		variabileTrimise.sendAndLoad("trimite.php", variabilePrimite, "POST");
	}
}

Daca field-ul nume si mail nu sunt nule, iar mail-ul trece de validare, ne ocupam de trimiterea variabilelor. Cream 2 variabile de tip Loadvars, ii dam atributele corespunzatoare valorilor noastra primei variabile, iar apoi, folosind functia sendAndLoad ii spunem formularului sa incarce variabilele trimise de PHP inapoi in cadrul variabilei variabilePrimite.

Acum sa vedem cum validam adresa de e-mail.

function checkEmail(inputEmail:String):Boolean {
	if (inputEmail.indexOf(" ")>0) {
		return false;
	}
	var emailArray:Array = inputEmail.split("@");
	if (emailArray.length != 2 || emailArray[0].length == 0 || emailArray[1].length == 0) {
		return false;
	}
	var postsArray:Array = emailArray[1].split(".");
	if (postsArray.length<2) {
		return false;
	}
	for (var i:Number = 0; i3) {
		return false;
	}
	return true;
}

Functia checkEmail verifica daca exista spatii in sirul de caractere, daca exista semnul @ o singura data, daca sirul de caractere din fata si de dupa @ este nenul, daca dupa semnul . sunt mai putin de 2 caractere (extensia domeniului .com, .ro etc.)… functia este foarte completa, o adresa de e-mail invalida nu va putea trece nefiltrata.

Acum sa ne ocupam de funtia de resetare.

function reset() {
	mail.text = "";
	nume.text = "";
	mesaj.text = "";
}

Acum sa legam cele 2 butoane de functiile lor…

trimite.onPress = trimite();
reset.onPress = reset();

Ultimul pas in ActionScript pentru formularul de contact este sa afisam un mesaj in cazul in care a fost sau nu trimis mail-ul.

variabilePrimite.onLoad = function() {
	if( this.sts == "true" ){
		trace("Mesaj trimis cu succes.");
	}
	if ( this.sts == "false" ){
		trace("Mesajul nu a fost trimis.");
	}
}

Sa vedem scriptul PHP pentru acest formular de contact Flash.

$nume = Trim(stripslashes($_POST['nume']));
$mail = Trim(stripslashes($_POST['mail']));
$mesaj = Trim(stripslashes($_POST['mesaj']));
$headers = "From: " . $nume;
$headers .= "rn";
$headers .= "Reply-To: " . $mail . "rn";
$headers .= "Return-Path: " . $mail;
$Body = "Nume: " . $nume . "n";
$Body .= "Mesaj: " . $mesaj . "n";
$subject = "Contact";
$sendto = "adresa ta de e-mail";
$success = mail($sendto, $subject, $Body, $headers);
if ($success){
	echo "&sts=true&";
} else {
	echo "&sts=false&";
}

Asta e tot, daca aveti intrebari nu ezitati sa le puneti.

C’ya next time!



Ti-a placut articolul Formular de contact in Flash si PHP?

Ai nevoie de rezolvarea unei probleme la informatica?

Iti recomandam si urmatoarele articole:

2 comentarii pentru Formular de contact in Flash si PHP

  • Alex - 30 noiembrie

    E bun scriptul dar nu verifica campurile, si se poate folosi injection atack punand in $mail un rn urmat de Bcc: si multe adrese de email

    De asemenea, un captcha ar fi folositor, genul www. formulareonline .ro



  • Stefan - 1 decembrie

    Am facut un tutorial si pentru captcha in Flash, il poti gasi cu un search pe site. Modulul se poate perfectiona, nu zic nu, doar timp sa fie :-D



Discuta articolul Formular de contact in Flash si PHP



Contul tau

Categorii

Mozku Network

Ne gasesti si pe Facebook

Articole noi

Fisiere populare

  • Proiect Atestat Informatica Visual FoxPro (439)
  • Twitter Patterns (202)
  • Flash Newsletter (126)
  • hitTest Flash (99)
  • Baza de date auto revizuita (98)

Marcaje articole