SWISH i database

[quote=“Uber_Gosu”]U biti nisi, samo sam primjetio da se općenito odnosiš negativno prema flashu :D[/quote]Hm, ne sjećam se da sam iznosio općenito mišljenje o Flashu, pošto u njemu uopće ne radim, niti sam ikada radio. Zapravo, vrlo bi mi neobično bilo da sam se izrazio “pozitivno” ili “negativno” o bilo kojoj tehnologiji općenito, dakle izvan konteksta neke konkretne primjene i relativno u odnosu na druge tehnologije u toj istoj primjeni. Možeš me uputiti gdje sam pogriješio tako generalizirajući Flash, da se ispravim?

S tim se slažem, čak bi rekao da je dobra stvar zapakirat flash u JS/JQ kontenjer kao neku nenametljivu pozadinu/div ili nešto…

Možda sam ja stekao krivi dojam, ali zašto ideš objašnjavat vinku komunikaciju flasha sa vanjskim svijetom i preporučavat mu server-client odnose kad i sam veliš da ti flash nije poznat, ja recimo nebi nikad odgovarao nekom na upit o ASPu jer ga ne poznajem (osim generalnog znanja o njemu) :slight_smile:

Uglavnom dobro je dok ima nekog za objasnit, samo ja sam ovdje novi (wm forum) i nekako sam stekao dojam čitajući dosta threadova da većina ne razumije previše a ovih 20% što znaju uglavnom šute, u razlog ne ulazim ali pretpostavljam da ne žele djeliti znanje sa potencijalnom konkurencijom, tu mislim pogotovo na SEO i sl. teme.

Ima toga još dosta ali ovo nije thread o tim stvarima pa neću trolat :stuck_out_tongue:

Pozz

OK. Bit ću slobodan zaključiti da ne možeš ukazati niti na jedan post u kojem iznosim bilo (a) da Flash “ne može raditi s bazama, PHP-om i ostalim stvarima” ili sam se (b) “općenito negativno odnosio prema Flashu”? Naime, nigdje u tvojim prethodnim postovima nije bilo sadržano pitanje ili poziv na pojašnjenje, pa se nisam smatrao pozvanim iznositi svoj stav o temama koje si natuknuo. Iznio si stanovite tvrdnje, ja ih prihvaćam, ali molim i argument. Čini se da ga nema.

Što se tiče tvojeg pitanja zašto idem Vinku objašnjavati komunikaciju Flasha s vanjskim svijetom i “preporučivati mu server-clijent odnose”. Pa to je srž njegovog pitanja. Evo pojašnjenja:

Flash je u općenitijoj taksonomiji primjer komponente za razvoj softvera (preciznije tzv. COTS - component of the shelf). Baze podataka su također taksonomski komponente u razvoju softvera, čak štoviše, smatraju se jednim od najboljih primjera COTS-a. I Flash i danas na webu uobičajene baze podataka (MySQL, SQLServer i sl.) su komponente projektirane za korištenje u softveru temeljenom na klijent-server arhitekturi. U tom smislu bi bilo suvišno “preporučivati server-client” odnose, kada je to temeljna arhitektura bilo koje web-aplikacije, a sasvim sigurno web-aplikacije u kojoj se koriste ove dvije komponente: Flash i baza podataka.

S druge strane, Accessova baza podataka nije temeljena na klijent-server arhitekturi, već “file sharing” arhitekturi. Stoga paradigmatski nije moguće iz Flasha (klijenta) “pristupati” Accessovoj bazi ukoliko jednom i drugom nije dostupan isti datotečni sustav. Što nikako nije slučaj i bit stvari je upravo u tome da to nije slučaj.

Dakle, razumjevajući ove temeljne arhitekture je moguće o softverskoj arhitekturi konkretnog projekta (a pitanje je bilo upravo o njoj) zaključivati - i to točno zaključivati - bez da se mora bilo koja konkretna komponentna u detalje poznavati. To je razlika između, usuđujem se slikovito reći, “inžinjerskog” i “vodoinstalaterskog” razumjevanja posla programiranja.

Moj odgovor Vinku je išao za time da ga podsjetim na tu razliku u podrazumijevanim i “nekompatibilnim” arhitekturama Accessove baze i Flasha. Iz čega se lako može zaključiti da je za pristup Accessovoj bazi sasvim sigurno potrebna nekakva, kako se je on izrazio, “ASP stranica”. U tom slučaju ta ASP stranica služi kao “pretvarač” između dvije paradigme, dvije infrastrukture za integriranje komponenti.

Kako ja nisam ovdje novi, dodatni razlog takvog mogu pristupa jest u opažanju da vrlo veliki broj pitanja vezanih uz interakciju klijentskog s poslužiteljskim dijelom web-aplikacije upravo počiva u nedostatnom razumjevanju klijent-server arhitekture, koje je teorijsko predznanje koje omogućuje programeru da “stvari posloži u prave ladice”. Naprosto, izvjesniji je ishod kada se odredište traži s mapom nego samo po sjećanju.

Opet ponavljam, moguće da sam stekao krivi dojam, jer, ko bi reko, dobar dio WM zajednice mrzi flash…a vinko valjda zna di se izvodi flash…lol…ak ne zna nema kaj radit sa bazama, kratko i jasno.

Da ti odgovorim po tvojoj logici, Uber. :slight_smile: Primijetio sam da puno piješ, a i korumpiran si. Opet, ponavljam, moguće je da sam stekao krivi dojam, jer dobar dio građana su alkoholičari, a i korupcija je uzela maha.

Drugim riječima, komentiraš na glas i pod mojim naslovom nešto što je rekao netko u tvojoj glavi. I tebi bi bila neobična situacija da netko na glas komentira stvari koje si rekao samo u nečijoj mašti. Umjesto, dakle, toga da iz općeg zaključuješ pojedinačno (npr. da sam ja visok 180 cm, jer je dosta Hrvata visoko 180), radije ti iznesi svoj odgovor, a komentiraj - konstruktivno - nešto što je netko stvarno i ustvrdio.

Gle da skratim priču, krivo sam shvatio tvoj prvi post, ok. A ti si zapeo kao pop na milodar :0ci:

Ti si sigurno filozofiju završio ili pravo kad skačeš u usta na svako slovo, ops, opet pretpostavljam s tim da ću sad stavit i disclamer* :ehm:

Jel to sad to ili?

[font=Arial][size=4][color="#808080"]*razvojem nepotrebne diskusije u dubinu zaključujem da je kolega tsereg filozof, ovo dakakao može biti i krivi zaključak te se ograđujem od svake odgovornosti.[/color][/size][/font]

A što je bilo tako teško to odmah reći? Treba čupati iz tebe kao čavao iz daske… :wink:

Uostalom, bolje da si sad dam truda, nego da moram kasnije rješavati polemike koje ćeš imati s članovima koji nisu filozofi poput mene.

Tako da ima jednostavan način da se poštediš moje filozofije (kada već odbijaš nešto naučiti iz nje): čitaj pažljivo, pokušaj koristiti formu pitanja prije izvlačenja zaključaka i drži težište na onome tko je pitao nešto. :wink:

[quote=“Uber_Gosu”]Gle da skratim priču, krivo sam shvatio tvoj prvi post, ok. A ti si zapeo kao pop na milodar :0ci:

Ti si sigurno filozofiju završio ili pravo kad skačeš u usta na svako slovo, ops, opet pretpostavljam s tim da ću sad stavit i disclamer* :ehm:

Jel to sad to ili?

[/quote]

A mislim da te je samo upozorio na nelogičnosti. Inače kod nas je uobičajna komunikacija da (pa čak i na onim najvišim razinama) je važno ono što se misli (ili možda tko misli) a što se ustvari kaže je u drugom planu.
Eto još malo filozofije.
No i u ovom poslu morati ćeš se naučiti držati se logike jer ima dosta logke u webu a i dosta se komunicira na stranom jeziku (engleskom) ili sa strancima, pa kad bi svi govorili zavičajno…:wink:

Da u pravu ste obojca, sad kad sam bolje pročitao čitav thread vidim.

Ne znam dali je od pomoći vinku ali za ubuduće ako nekom bude trebalo, primjer obične kontakt forme u flashu (AS3), koja se veže na vanjski PHP fajl preko klasičnog _POST-a:

package com 
{
	import com.greensock.TweenLite;
	import flash.display.MovieClip;
	import flash.events.Event;
	import flash.events.FocusEvent;
	import flash.events.MouseEvent;
	import com.greensock.easing.*;
	import com.greensock.plugins.*;
	import flash.display.*;
	import flash.events.TimerEvent;
	import flash.net.URLLoader;
	import flash.net.URLRequest;
	import flash.net.URLRequestMethod;
	import flash.net.URLVariables;
	import flash.utils.Timer;

	public class Contact extends MovieClip
	{
		var txtStanje1:String = "prvoOtvaranje";
		var txtStanje2:String = "prvoOtvaranje";
		var txtStanje3:String = "prvoOtvaranje";
		var txtStanje4:String = "prvoOtvaranje";
		var txtStanje5:String = "prvoOtvaranje";
		
		//Mail based varijable:
		var tmr:Timer;
		var tmr2:Timer;	
		const SENDING:String 	  = "Sending";
		const SENT_SUCCESS:String = "Successful";
		const SENT_FAILED:String  = "Unsuccessful";
		
		public function Contact() 
		{
			//com.Slide ostatci:
			this.visible = false;
			this.alpha = 0;
			this.x = 0;
			this.y = 0;
			
			//Pocetni text u textFieldsima:
			this.name_txt.text = "...";
			this.email_txt.text = "...";
			this.subject_txt.text = "...";
			this.location_txt.text = "...";
			this.messsage_txt.text = "...";
			
			//Send Button starting properties:
			this.sendButton_mc.contactSendMail_mc.off_mc.alpha = 1;
			this.sendButton_mc.contactSendMail_mc.on_mc.alpha = 0;			
			this.sendButton_mc.buttonMode = true;
			this.sendButton_mc.mouseChildren = false;
			
			//Event Listeners:
			this.sendButton_mc.addEventListener(MouseEvent.MOUSE_OVER, sendOver);
			this.sendButton_mc.addEventListener(MouseEvent.CLICK, sendMessage);
			
			//Clear textfields on Focus:
			this.name_txt.addEventListener(FocusEvent.FOCUS_IN, focus1);
			this.email_txt.addEventListener(FocusEvent.FOCUS_IN, focus2);
			this.subject_txt.addEventListener(FocusEvent.FOCUS_IN, focus3);
			this.location_txt.addEventListener(FocusEvent.FOCUS_IN, focus4);
			this.messsage_txt.addEventListener(FocusEvent.FOCUS_IN, focus5);
			
			//Warning message & info messages:
			TweenLite.to(warning_mc, 0, { blurFilter: { blurY:100 }} );
			TweenLite.to(sendingMessage_mc, 0, { blurFilter: { blurY:100 }} );
			TweenLite.to(messageSent_mc, 0, { blurFilter: { blurY:100 }} );
			TweenLite.to(messageFail_mc, 0, {blurFilter:{blurY:100}});
			this.warning_mc.visible = false;
			this.warning_mc.x = 0;
			this.warning_mc.y = -350;
			this.sendingMessage_mc.visible = false;
			this.sendingMessage_mc.x = 0;
			this.sendingMessage_mc.y = -350;
			this.messageSent_mc.visible = false;
			this.messageSent_mc.x = 0;
			this.messageSent_mc.y = -350;
			this.messageFail_mc.visible = false;
			this.messageFail_mc.x = 0;
			this.messageFail_mc.y = -350;
			
			//Error circles:
			this.nameError1_mc.visible = false;
			this.nameError2_mc.visible = false;
			this.nameError3_mc.visible = false;
			this.nameError4_mc.visible = false;
			this.nameError5_mc.visible = false;
		}
		
		private function checkFSWarning():void 
		{
			if (stage.displayState == StageDisplayState.FULL_SCREEN)
			{
				TweenLite.to(this.warning_mc, 0.5, { autoAlpha:1, x:0, y:0, blurFilter:{blurY:0}, ease:Quad.easeOut } );
			}
			else
			{
			}
		}
		
		private function sendOver(e:MouseEvent):void 
		{
			sendButton_mc.removeEventListener(MouseEvent.MOUSE_OVER, sendOver);
			sendButton_mc.addEventListener(MouseEvent.MOUSE_OUT, sendOut);
			TweenLite.to(this.sendButton_mc.contactSendMail_mc.off_mc, 0.3, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.sendButton_mc.contactSendMail_mc.on_mc, 0.3, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.sendButton_mc.text_txt, 0.5, { alpha:0.5, tint:0x00FF00, ease:Quad.easeOut } );
			TweenLite.to(this.sendButton_mc.strelica_mc, 0.5, { alpha:0.5, tint:0x00FF00, ease:Quad.easeOut } );
		}
		
		private function sendOut(e:MouseEvent):void 
		{
			sendButton_mc.removeEventListener(MouseEvent.MOUSE_OUT, sendOut);
			sendButton_mc.addEventListener(MouseEvent.MOUSE_OVER, sendOver);
			TweenLite.to(this.sendButton_mc.contactSendMail_mc.off_mc, 0.3, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.sendButton_mc.contactSendMail_mc.on_mc, 0.3, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.sendButton_mc.text_txt, 0.5, { alpha:1, tint:0x0096FF, ease:Quad.easeOut } );
			TweenLite.to(this.sendButton_mc.strelica_mc, 0.5, { alpha:1, tint:0x0096FF, ease:Quad.easeOut } );
			
		}
		
		//Slanje poruke na klik (Powered by PHP):
		public function sendMessage(e:Event):void 
		{
			//Error circles:
			this.nameError1_mc.visible = false;
			this.nameError2_mc.visible = false;
			this.nameError3_mc.visible = false;
			this.nameError4_mc.visible = false;
			this.nameError5_mc.visible = false;
			this.sendingMessage_mc.visible = false;
			this.messageSent_mc.visible = false;
			this.messageFail_mc.visible = false;
			
			function provjeriEmail(str:String):Boolean 
			{
				var pattern:RegExp = /(\w|[_.\-])+@((\w|-)+\.)+\w{2,4}+/;
				var result:Object = pattern.exec(str);
				if(result == null) {
					return false;
				}
				return true;
			}
			
			var provjeraPodataka:Boolean = true;	
			
			if (this.name_txt.text.length < 1) {
				this.nameError1_mc.visible = true;
				provjeraPodataka = false;
			}
			if (!provjeriEmail(this.email_txt.text)) {
				this.nameError2_mc.visible = true;
				provjeraPodataka = false;
			}
			if (this.subject_txt.text.length < 1) {
				this.nameError3_mc.visible = true;
				provjeraPodataka = false;
			}
			if (this.location_txt.text.length < 1) {
				this.nameError4_mc.visible = true;
				provjeraPodataka = false;
			}
			if (this.messsage_txt.text.length < 1) {
				this.nameError5_mc.visible = true;
				provjeraPodataka = false;
			}
			
			if (provjeraPodataka) 
			{
				this.sendButton_mc.removeEventListener(MouseEvent.CLICK, sendMessage);
				TweenLite.to(this.sendingMessage_mc, 0.5, { x:0, y:0, autoAlpha:1, blurFilter:{blurY:0}, ease:Quad.easeOut } );
				
				var urlVars:URLVariables = new URLVariables();
				var urlReq:URLRequest = new URLRequest("send_email.php");
				var loader:URLLoader = new URLLoader();
				
				urlVars.name 	= this.name_txt.text;
				urlVars.email 	= this.email_txt.text;
				urlVars.subject	= this.subject_txt.text;
				urlVars.location = this.location_txt.text;
				urlVars.message = this.messsage_txt.text;
				urlReq.data 	= urlVars;
				urlReq.method 	= URLRequestMethod.POST;
				loader.addEventListener(Event.COMPLETE, serverFeedback);
				loader.load(urlReq);
			}
			else 
			{
			}
		}
		
		public function serverFeedback(evt:Event):void 
		{
			var loader:URLLoader = evt.target as URLLoader;
			var urlVars:URLVariables = new URLVariables(loader.data);
			
			if (urlVars.result == SENT_SUCCESS) 
			{
				tmr = new Timer(3000, 1);
				tmr.addEventListener(TimerEvent.TIMER, timerSucces);
				tmr.start();
			} 
			else if (urlVars.result == SENT_FAILED) 
			{
				tmr = new Timer(3000, 1);
				tmr.addEventListener(TimerEvent.TIMER, timerFail);
				tmr.start();
			}
			else
			{
				//Brake code after 6 sec!
				tmr = new Timer(6000, 1);
				tmr.addEventListener(TimerEvent.TIMER, timerFail);
				tmr.start();
			}
		}
		
		public function timerSucces(evt:TimerEvent):void 
		{
			tmr.stop();
			tmr.removeEventListener(TimerEvent.TIMER, timerSucces);
			TweenLite.to(this.sendingMessage_mc, 0.5, { x:0, y: -350, autoAlpha:0, blurFilter:{blurY:100}, ease:Quad.easeOut } );
			TweenLite.to(this.messageSent_mc, 0.5, { x:0, y:0, autoAlpha:1, blurFilter:{blurY:0}, ease:Quad.easeOut } );
			tmr2 = new Timer(3000, 1);
			tmr2.addEventListener(TimerEvent.TIMER, killMessageSent);
			tmr2.start();
		}
		
		public function timerFail(evt:TimerEvent):void 
		{
			tmr.stop();
			tmr.removeEventListener(TimerEvent.TIMER, timerFail);
			TweenLite.to(this.sendingMessage_mc, 0.5, { x:0, y: -350, autoAlpha:0, blurFilter:{blurY:100}, ease:Quad.easeOut } );
			TweenLite.to(this.messageFail_mc, 0.5, { x:0, y:0, autoAlpha:1, blurFilter:{blurY:0}, ease:Quad.easeOut } );
			tmr2 = new Timer(3000, 1);
			tmr2.addEventListener(TimerEvent.TIMER, killMassageFail);
			tmr2.start();
		}
		
		public function killMessageSent(evt:TimerEvent):void 
		{
			tmr2.stop();
			tmr2.removeEventListener(TimerEvent.TIMER, killMessageSent);
			TweenLite.to(this.messageSent_mc, 0.5, { x:0, y:-350, autoAlpha:0, blurFilter:{blurY:100}, ease:Quad.easeOut, onComplete:restoreSendButtonSucces } );
		}
		
		public function killMassageFail(evt:TimerEvent):void 
		{
			tmr2.stop();
			tmr2.removeEventListener(TimerEvent.TIMER, killMassageFail);
			TweenLite.to(this.messageFail_mc, 0.5, { x:0, y:-350, autoAlpha:0, blurFilter:{blurY:100}, ease:Quad.easeOut, onComplete:restoreSendButtonFail } );
			
			txtStanje1 = "prvoOtvaranje";
			txtStanje2 = "prvoOtvaranje";
			txtStanje3 = "prvoOtvaranje";
			txtStanje4 = "prvoOtvaranje";
			txtStanje5 = "prvoOtvaranje";
			
			//Pocetni text u textFieldsima:
			this.name_txt.text = "...";
			this.email_txt.text = "...";
			this.subject_txt.text = "...";
			this.location_txt.text = "...";
			this.messsage_txt.text = "...";
		}
		
		public function restoreSendButtonSucces():void 
		{
			this.sendButton_mc.addEventListener(MouseEvent.CLICK, sendMessage);
			Object(this.parent.parent).zatvoriTrenutniSlide();
		}
		
		public function restoreSendButtonFail():void 
		{
			this.sendButton_mc.addEventListener(MouseEvent.CLICK, sendMessage);
		}
		
		//Brisanje textfield-ova: ------------------------------------A
		private function focus1(e:FocusEvent)
		{
			if (txtStanje1 == "prvoOtvaranje")
			{
				txtStanje1 = "otvoreno";
				name_txt.text = "";
			}
			else 
			{
			}
			this.name_txt.removeEventListener(FocusEvent.FOCUS_IN, focus1);
			TweenLite.to(this.txtAreaBg1_mc.off_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg1_mc.on_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			this.name_txt.addEventListener(FocusEvent.FOCUS_OUT, txtAreaOut1);
			checkFSWarning();
		}
		
		private function txtAreaOut1(e:FocusEvent):void 
		{
			this.name_txt.addEventListener(FocusEvent.FOCUS_IN, focus1);
			this.name_txt.removeEventListener(FocusEvent.FOCUS_OUT, txtAreaOut1);
			TweenLite.to(this.txtAreaBg1_mc.off_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg1_mc.on_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
		}
		
		private function focus2(e:FocusEvent):void 
		{
			if (txtStanje2 == "prvoOtvaranje")
			{
				txtStanje2 = "otvoreno";
				email_txt.text = "";
			}
			else 
			{
			}
			this.email_txt.removeEventListener(FocusEvent.FOCUS_IN, focus2);
			TweenLite.to(this.txtAreaBg2_mc.off_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg2_mc.on_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			this.email_txt.addEventListener(FocusEvent.FOCUS_OUT, txtAreaOut2);
			checkFSWarning();
		}
		
		private function txtAreaOut2(e:FocusEvent):void 
		{
			this.email_txt.addEventListener(FocusEvent.FOCUS_IN, focus2);
			this.email_txt.removeEventListener(FocusEvent.FOCUS_OUT, txtAreaOut2);
			TweenLite.to(this.txtAreaBg2_mc.off_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg2_mc.on_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
		}
		
		private function focus3(e:FocusEvent):void 
		{
			if (txtStanje3 == "prvoOtvaranje")
			{
				txtStanje3 = "otvoreno";
				subject_txt.text = "";
			}
			else 
			{
			}
			this.subject_txt.removeEventListener(FocusEvent.FOCUS_IN, focus3);
			TweenLite.to(this.txtAreaBg3_mc.off_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg3_mc.on_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			this.subject_txt.addEventListener(FocusEvent.FOCUS_OUT, txtAreaOut3);
			checkFSWarning();
		}
		
		private function txtAreaOut3(e:FocusEvent):void 
		{
			this.subject_txt.addEventListener(FocusEvent.FOCUS_IN, focus3);
			this.subject_txt.removeEventListener(FocusEvent.FOCUS_OUT, txtAreaOut3);
			TweenLite.to(this.txtAreaBg3_mc.off_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg3_mc.on_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
		}
		
		private function focus4(e:FocusEvent):void 
		{
			if (txtStanje4 == "prvoOtvaranje")
			{
				txtStanje4 = "otvoreno";
				location_txt.text = "";
			}
			else 
			{
			}
			this.location_txt.removeEventListener(FocusEvent.FOCUS_IN, focus4);
			TweenLite.to(this.txtAreaBg4_mc.off_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg4_mc.on_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			this.location_txt.addEventListener(FocusEvent.FOCUS_OUT, txtAreaOut4);
			checkFSWarning();
		}
		
		private function txtAreaOut4(e:FocusEvent):void 
		{
			this.location_txt.addEventListener(FocusEvent.FOCUS_IN, focus4);
			this.location_txt.removeEventListener(FocusEvent.FOCUS_OUT, txtAreaOut4);
			TweenLite.to(this.txtAreaBg4_mc.off_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg4_mc.on_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
		}
		
		private function focus5(e:FocusEvent):void 
		{
			if (txtStanje5 == "prvoOtvaranje")
			{
				txtStanje5 = "otvoreno";
				messsage_txt.text = "";
			}
			else 
			{
			}
			this.messsage_txt.removeEventListener(FocusEvent.FOCUS_IN, focus5);
			TweenLite.to(this.txtAreaBg5_mc.off_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg5_mc.on_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			this.messsage_txt.addEventListener(FocusEvent.FOCUS_OUT, txtAreaOut5);
			checkFSWarning();
		}
		
		private function txtAreaOut5(e:FocusEvent):void 
		{
			this.messsage_txt.addEventListener(FocusEvent.FOCUS_IN, focus5);
			this.messsage_txt.removeEventListener(FocusEvent.FOCUS_OUT, txtAreaOut5);
			TweenLite.to(this.txtAreaBg5_mc.off_mc, 0.5, { alpha:1, ease:Quad.easeOut } );
			TweenLite.to(this.txtAreaBg5_mc.on_mc, 0.5, { alpha:0, ease:Quad.easeOut } );
		}
		//------------------------------------------------------------A
		//Reset kod Zatvaranja Slidea:
		public function restartContact():void
		{
			txtStanje1 = "prvoOtvaranje";
			txtStanje2 = "prvoOtvaranje";
			txtStanje3 = "prvoOtvaranje";
			txtStanje4 = "prvoOtvaranje";
			txtStanje5 = "prvoOtvaranje";
			
			//Pocetni text u textFieldsima:
			this.name_txt.text = "...";
			this.email_txt.text = "...";
			this.subject_txt.text = "...";
			this.location_txt.text = "...";
			this.messsage_txt.text = "...";
		}
	}
}

Onda PHP vrati rezultat ovisno jel uspio poslat poruku dalje:

if( mail( $emailTo, $subject, $body, $header ) ) {
		echo( "result=Successful" );
		
	} else {
		echo( "result=Unsuccessful" );
	}

Dio AS3 koji prima rezultat nazad od PHPa i raadi dalje prema njemu (ima ga i u gornjem kodu klase):

public function serverFeedback(evt:Event):void 
		{
			var loader:URLLoader = evt.target as URLLoader;
			var urlVars:URLVariables = new URLVariables(loader.data);
			
			if (urlVars.result == SENT_SUCCESS) 
			{
				tmr = new Timer(3000, 1);
				tmr.addEventListener(TimerEvent.TIMER, timerSucces);
				tmr.start();
			} 
			else if (urlVars.result == SENT_FAILED) 
			{
				tmr = new Timer(3000, 1);
				tmr.addEventListener(TimerEvent.TIMER, timerFail);
				tmr.start();
			}
			else
			{
				//Brake code after 6 sec!
				tmr = new Timer(6000, 1);
				tmr.addEventListener(TimerEvent.TIMER, timerFail);
				tmr.start();
			}
		}

Po istoj logici se PHPom može dalje utjecat na mySQL ili šta već treba, davat, primat i tako u nedogled :malerukes