Помощ - Търсене - Потребители - Събития
Пълна версия: Форма за изпращане на писма с Flash и PHP
GGbit.info > Hi-Tech > Web разработка > Полезни статии
gangs7a
Бях видял в едно сайтче как да си направиш Send Mail форма с Flash и PHP и става наистина много яко,защото именно с помощта на Flash-а можеш да си направиш какъфто си искаш дизайн и стил за нея много лесно.В статията бяха дадени само Action Script-a за Flash и този за PHP и затова драснах една по-подробна статия,как се равят нещата стъпка по стъпка за начинаещите,които все пак биха искали да си сложат на сайта нещо такова.

В тази статия смятам да ви покажа,как с помощта на Flash и PHP,
можете да изградите една оригинална форма за изпращане на електронни писма,директно
от вашата персонална или бизнес страница.

Когато играждаме един уеб сайт,чрез него ние показваме и представяме на потребителите
определена информация,след което винаги оставяме някакъв адрес за обратна връзка.В повечето
случай освен град,улица и тн. даваме и електронната си поща.След получаването на нашият
е-m@il,потребителят който иска да се свърже с нас,трябва да влезне в собствената си поща,
и чак тогава да ни изпрати писмото си,за което ще чака отговор.Ами ако този бъдещ наш клиент
няма електронна поща?Тук идва и едно много оригинално решение,лесно за осъществяване и
изключително практично и удобно.

За да създадем форма за изпращане на електронни писма,в случая ще са ни необходими програмата
на Macromedia - Flash (за препоръчане е някоя от по-новите версии) и един обикновен текстов редактор.
Ще използваме вграденият в Windows - Notepad.Продуктът на Macromedia можете да си набавите
от официалната страница на IT гиганта www.macromedia.com - предотставя се 30 дневна пробна версия,като
в нея работят и са достъпни всички функции на програмата.

След като инсталираме Flash я стартираме.Виждаме този диалогов прозорец:

IPB Image

Отидете на графата Create New и натиснете върху Flash Document.Така ще създадете нов работен документ.
От ляво на вашият екран е разположено менюто Tools.От него изберете Text Tool (иконката е с буквата А) и
начертайте следното поле и въведете съответния текст:

IPB Image

Сега трябва направим полета срещу всяко заглавие,за въвеждане на определени данни.Например срещу
заглавие To: трябва да направим поле в което потребителят ще въвежда e-mail адреса,до който ще израти
писмото,From: - е-mail за обратна връзка,Suject: - кратко заглавие на писмото и Body: в случая текста
който ще изпратим.За да създадем такива полета,отново ще използваме Text Tool само че с малко
по-различни настройки.Начертайте по едно такова поле срещу всяко заглавие,но ги оставете празни.
Трябва да получите нещо такова:

IPB Image

Сега идва и един много важен момент.За всяко едно поле трябва по отделно да направите следните
настройки от панела Properties:

IPB Image

На всички полета трябва да се зададе опцията Input Text и текст за Var.

Важно:
За полето To: задаваме стойност на var to
За полето From: задаваме стойност на var from
За полето Subject: задаваме стойност за var subject
За полето Body: задаваме стойност на var body

Сега трябва да добавите към формата и един бутон Send.Селектираме бутона и отваряме панела Actions.
Панела изглежда така:

IPB Image

Тук идва момента да добавим малко код:

CODE
on (release) {
    if (to eq "" || from eq"" || subject eq "" || body eq "") {
        getURL("java script:alert(\"Vsichki poleta sa zaduljitelni\");");
    } else {
        send = "done";
        loadVariablesNum("mail.php", 0, "POST");
        getURL("java script:alert(\"Vasheto pismo beshe izprateno uspeshno\");");
        to="";
        from="";
        subject="";
        body="";
    }
}


Този код проверява дали са попълнени всички полета от формата.Ако не са,ще покаже на потребителя надпис,
че всички полета са задължителни.Ако полетата са попълнени правилно и писмото е изпратено,ще покаже надпис,че
писмото е изпратено успешно.

Сега селектирайте цялата форма,като натиснете някаде на празно място върху нея,отворете отново панела
Action и добавете този код:

CODE
stop();
to="";
from="";
subject="";
body="";


Нашата форма за изпращане на елетронни писма е почти завършена.След като сте изпълнили по-горе описаните стъпки,
запазете Flash документа в работната папка (например C:\mail) ,след което отидете на падащото меню Fail,изберете
Publish Preview и натиснете HTML.Сега в папката в която записахте работния документ,ще имате още два фаила -
html и swf.

Преминаваме и към последната стъпка - добавяне на PHP код.
Отворете Notepad и в него добавете следните редове код:

CODE
<?php

      if ($send=="done") {

      $to = escapeshellcmd($to);

      $subject = escapeshellcmd($subject);

      $body = escapeshellcmd($body);

      $from = escapeshellcmd($from);

      $tfrom = "From: <$from>";

      mail($to,$subject,$body,$tfrom);

      }

?>


Запишете файла в папката при другите файлове с името mail.php (html и swf файловете трябва също да са с името mail)
Ами това е всичко,остава само да качите трите файла mail.html,mail.swf и mail.php на някой сърър в интернет,който
има PHP потдръжка (такъв безплатен е www.addyour.net) и вече ще можете да използвате e-mail формата си wink.gif
Relevant Advertise!
vIkToRsHeFa
Наистина много обширна статия! Лично аз не се занимавам до такава степен със флаша и не съм от големите му почитатели, но единственото което мога да кажа е браво за труда! Лично аз правя проверките със php за да спестя флаша на сайта но той пък носи доста колорит. 4.gif
gangs7a
Радвам се че ти харесва wink.gif Ако има нещо неясно по самата статия или някой не е разбрал нещо или иска да допълни да свирка smile.gif
vIkToRsHeFa
За малко да забравя ето и официалната документация за пращане на емайли през php: http://bg.php.net/manual/en/function.mail.php
kkiiss2003
А искам да попитам къде по точно в кода пише на кой имейл ще се изпраща съобщението, защото не съм много наясно smile.gif
vIkToRsHeFa
(kkiiss2003 @ Nov 5 2006, 19:52) *

А искам да попитам къде по точно в кода пише на кой имейл ще се изпраща съобщението, защото не съм много наясно smile.gif


Там където се въвежда и самото съобщение ще има и поле до кого да бъде пратено. 4.gif
Това е "lo-fi" версия на нашия форум. За да видите пълната версия, моля натиснете тук.
Invision Power Board © 2001-2018 Invision Power Services, Inc.