ძლიერი ელ.წერილი ოქროს ზარისთვის. სცენარი ქმნის გარდამტეხ სიგნალს. საყელო ფორმა PHP-ში

წარდგენილია 2006 წლის 27 ივნისის ფედერალურ კანონში. No 152-FZ „პერსონალური მონაცემების შესახებ“ მე, პერსონალური მონაცემების სუბიექტი, კორისტუვაჩისთვის მიცემული სახელები, ვაკვირდები ინფორმაციას ფორმების საშუალებით. ზარის ზარი(შემდგომში – ფორმები) ვებგვერდზე (შემდგომში ვებგვერდი), ასევე იურიდიული ფირმა „Dilovyi Fairvater“-ის კორპორატიულ ელფოსტის მისამართებზე, რომელიც დასრულდება ქ. (შემდგომში „კორპორატიული ფოსტა“), ჩემი ნებით და ჩემი ინტერესებიდან გამომდინარე, ვაცნობ იურიდიულ ფირმას „Dilovyi Fairvater“ (OGRN 1167700058679; IPN 9705068808), რომელიც მდებარეობს მისამართზე: 109242, მ. - ოპერატორი), ჩემი პერსონალური მონაცემების (დალი - ზგოდა) დამუშავების მიზნით ასეთ გონებაზე.

1. იმ მომენტში, როდესაც მიიღებთ დიახ, თქვენ მონიშნავთ შესაბამის ველს ფორმაში და აწკაპუნებთ ფორმის გაგზავნის ღილაკზე საიტის ნებისმიერ გვერდზე, ასევე დააჭირეთ გაგზავნის ღილაკს. ელექტრონული ფურცელი, კორისტუვაჩის პირადი მონაცემების განსათავსებლად, მისამართზე კორპორატიული ფოსტაოპერატორი.

2. პერსონალური მონაცემების დამუშავება - მოქმედება (ოპერაცია) ან ქმედებების (ოპერაციების) კოლექცია, რომელიც ხორციელდება ავტომატიზაციის სხვადასხვა მეთოდების გამოყენებით ან პერსონალური მონაცემებიდან ასეთი მეთოდების გამოყენების გარეშე, მათ შორის შეგროვება, ჩაწერა, სისტემატიზაცია, დაგროვილი ნია. , შენახვა, დაზუსტება (განახლება, შეცვლა), ჩამორთმევა, vikoristannya, გადაცემა (გაფართოება, გადაცემა, წვდომა), გაერთიანება, დაბლოკვა, ამოღება, პერსონალური მონაცემების ჩამორთმევა.

3. პერსონალური მონაცემების დამუშავება ხდება როგორც სხვადასხვა ავტომატიზაციის მეთოდების, მათ შორის საინფორმაციო და სატელეკომუნიკაციო ღონისძიებების გამოყენებით, ასევე ასეთი მეთოდების გამოყენების გარეშე.

4. იმედია, დამუშავდება კორისტუვაჩის მიერ მინიჭებული კორისტუვაჩის ამჟამინდელი პერსონალური მონაცემები ფორმებში, ფორმებზე მიმაგრებულ ფაილებში, ისევე როგორც უშუალოდ კორპორატიული ფოსტის მისამართებზე გაგზავნილი ინფორმაცია:

    ჩემი სახელის მეტსახელი მამაჩემის შემდეგ;

    მისამართები ელექტრონული ფოსტით;

    საკონტაქტო ტელეფონის ნომერი;

    ვიკი;

    კორისტუვაჩის მიერ მინიჭებული სხვა პერსონალური მონაცემები ფორმებსა და ფორმებზე მიმაგრებულ ფაილებზე.

5. პერსონალური მონაცემების დამუშავების მიზნები:

    კორისტუვაჩის იდენტიფიკაცია;

    კორისტუვაჩთან ურთიერთქმედება, მათ შორის შეტყობინებების გაგზავნა, ინფორმაციის მოთხოვნა ოპერატორის სერვისებიდან, ასევე კორისტუვაჩისგან მოთხოვნების დამუშავება და კორისტუვაჩსა და ოპერატორს შორის კარიბჭის შექმნა;

    რჩევები კორისტუვაჩივის დალევის შესახებ;

    კორისტუვაჩის მუშაობის უსაფრთხოება ოპერატორის ვებსაიტიდან;

    უშუალოდ Koristuvachs-ს ანალიტიკური მასალებისა და ინფორმაციის კორისტუვაჩს ოპერატორის მიერ ორგანიზებული მოახლოებული ვიზიტების შესახებ, ასევე კორისტუვაჩების რეგისტრაცია ასეთ ზარებში მონაწილეობისთვის;

    კორისტუვაჩთან ხელშეკრულებების დადება, მათ შორის შრომითი და იურიდიული მომსახურების გაწევის ხელშეკრულებები;

    ჩვენ გვსურს ვაცნობოთ კორისტუვაჩს წინასწარი ვიდეო და სხვა მარკეტინგული ინფორმაცია დამატებითი მიმართულებების შესახებ კორისტუვაჩის მიერ მითითებულ ელფოსტის მისამართზე.

    Koristuvachs-ს უტარდება კონსულტაცია კვების, მომსახურებისა და მომსახურების შესახებ ოპერატორის მიერ მარკეტინგის საქმიანობისა და კორისტუვაჩების მხარდაჭერის მიზნით, ასევე სხვა მიზნებისთვის, რათა არ შეესაბამებოდეს ოფიციალურ კანონმდებლობას. რუსეთის ფედერაციაოპერატორსა და კორისტუვაჩებს შორის.

6. პერსონალური მონაცემების დამუშავების დროს ოპერატორს უფლება აქვს შეაგროვოს, ჩაიწეროს, სისტემატიზაცია მოახდინოს, დააგროვოს, შეინახოს, დაზუსტდეს (განახლება, შეცვლა), მოძიება, მოძიება, გადაცემა (გაფართოება, მინიჭება, წვდომა), ცალმხრივი, დაბლოკვა, წაშალეთ, შეამცირეთ პირადი მონაცემების ხარკი Koristuvaca.

7. ოპერატორი ითვალისწინებს დაცვისათვის საჭირო და საკმარის ორგანიზაციულ-ტექნიკურ ნაბიჯებს პირადი ინფორმაციაკორუფცია უკანონო ან დროებითი წვდომით, შემცირებით, ცვლილებებით, ბლოკირებით, კოპირებით, გავრცელებით და სხვა უკანონო ქმედებებით.

8. Koristuvach-ის პერსონალური მონაცემების მესამე პირებზე გადაცემა არ ხდება, გარდა ოპერატორის უფლებებისა მისი რეორგანიზაციისა და ოპერატორის სახელით და მისი სახელით პერსონალური მონაცემების დამუშავების პროცესში. როდესაც წევრი მონაწილეობს ოპერატორის მიერ ორგანიზებულ ვიზიტში, მას მაინც აქვს უფლება გაუმჟღავნოს ვიზიტორის პირადი მონაცემები იმ პირებს, რომლებიც მონაწილეობენ ასეთი ვიზიტის ორგანიზებაში.

9. პერსონალური მონაცემების დამუშავების პერიოდს განსაზღვრავს კორისტუვაჩი ოპერატორის მიერ პერსონალური მონაცემების დამუშავების მიზნების მისაღწევად საჭირო ხაზებზე.

10. შემდეგ შეგიძლიათ გაგზავნოთ წერილი ოპერატორის მისამართზე (109240, მეტრო მოსკოვი, გონჩარნის ქუჩა, ბუდინოკის 24) ან გაგზავნოთ წერილი კორპორატიული ელ. ფოსტის მისამართზე: .

11. ეს ძალაშია პერსონალური მონაცემების დამუშავების მომენტამდე.

12. იმის გაგებით, თუ რა არის გამარჯვებული ამ წელს, ჩვენ უნდა განვმარტოთ მათი ქება, რომელიც მიმართულია ფედერალური კანონი 2006 წლის 27 ივლისით დათარიღებული N 152-FZ „პერსონალური მონაცემების შესახებ“.

ვებ პროექტის განვითარებისთვის ძალიან მნიშვნელოვანია კარიბჭის გამოყოფა კარიბჭისგან. სამწუხაროდ, ბევრ ვებსაიტზე ინფორმაციის გაგზავნის შესაძლებლობა დისტრიბუტორებისთვის ან შეუძლებელია, ან დაკავშირებულია სერიოზულ სირთულეებთან.

დღეს ჩვენ ვაკეთებთ ამ ამოცანის მარტივ შესრულებას. Vikoristuyuchi jQuery, PHP და კლასის PHPMailer ფორმა აიძულებს koristuvach-ის წინადადებას პირდაპირ თქვენს მიმართ. საფოსტო სკრინშოტი.

HTML

Მოდი გავაკეთოთ ეს HTML მარკირება. სტილები შედის დოკუმენტის ზედა ნაწილში, ხოლო JavaScript ფაილები ჩართულია ბოლოში. ამ გზით ხდება გვერდის შეცვლის პროცესის ოპტიმიზირება, ამიტომ სკრიპტები იგივე რჩება, რაც საშუალებას გაძლევთ შეცვალოთ გვერდის ადგილი.

დემო.html

გარდამტეხი წერტილის ფორმა Wikoristannyam PHP და jQuery | საიტის საიტის დემონსტრირება

კარიბჭის ბმული

გთხოვთ, მიუთითოთ თქვენი საკონტაქტო ინფორმაცია, თუ გსურთ თქვენი პასუხის გაუქმება.

გაგზავნა

Შუაში სხეულივიცი დივ #გამოხმაურება. მოთავსებულია მარჯვენა ხელის ქვემოთ ფანჯარაში დამატებითი ფიქსირებული პოზიციონირებისთვის, რომელიც ხილული იქნება გაკვეთილის განყოფილებაში, რომელიც ეძღვნება CSS.

ამის შუაში დივარის ხუთი ფერის ელემენტი სპანი. კანი 20% სიგანისაა და მარცხნივ გადადის. ამგვარად, სუნი მთელ სიგანეზე გავრცელდება დივ #გამოხმაურება.

შემდეგ მოდის კონტეინერი .განყოფილებარომელი სათაური, ტექსტის არე და ღილაკი უნდა განთავსდეს.

CSS

მოდით გადავიდეთ ფორმის სტილის განსაზღვრებაზე. პირველ რიგში, მოდით ვთქვათ რამდენიმე სიტყვა მათ შესახებ, რომლებიც ქმნიან სტილის ფურცლის სტრუქტურას. თუ დააკვირდებით ქვემოთ მოცემულ CSS-ს, შეამჩნევთ, რომ ყველა წესი იწყება #გამოხმაურება. ეს ქმნის მსგავსებას CSS დასახელების სივრცესთან, რაც აადვილებს კოდის დანარჩენ ვებსაიტზე კონფლიქტების გარეშე დამატებას.

styles.css - ნაწილი 1

#feedback(ფონის ფერი:#9db09f; სიგანე:310px; სიმაღლე:330px; პოზიცია:ფიქსირებული; ქვედა:0; მარჯვნივ:120px; ზღვარი-ქვედა:-270px; z-ინდექსი:10000; ) #უკუკავშირი .section(ფონი :url("img/bg.png") repeat-x ზედა მარცხენა; საზღვარი: 1px მყარი #808f81; საზღვარი-ქვედა: არცერთი; padding:10px 25px 25px; ) #feedback .color( float:left; სიმაღლე:4px; სიგანე:20%; overflow:ფარული; ) #feedback .color-1( background-color:#d3b112;) #feedback .color-2( background-color: #12b6d3;) #უკუკავშირი .color-3( background-color:#8fd317;) #feedback .color-4( background-color:#ca57df;) #feedback .color-5( background-color:#8ecbe7;) # გამოხმაურება h6( background:url("img/feedback.png") გამეორების გარეშე; სიმაღლე:38px; ზღვარი:5px 0 12px; text-indent:-99999px; კურსორი:pointer; ) #feedback textarea( background-color:# fff; border:none;color:#666666;font:13px "Lucida Sans",Arial,sans-serif; moz-box-shadow:4px 4px 0 #8a9b8c;-webkit-box-shadow:4px 4px 0 #8a9b8c;

პირველი ელემენტი, რომლისთვისაც სტილი მითითებულია, არის დივ #გამოხმაურება. ეს ნიშნავს, რომ პოზიცია ფიქსირდება და დაკავშირებულია ბრაუზერის ფანჯარასთან. ახალი წლის შემდეგ, დანიშვნა დივ .განყოფილება და ხუთი ფერის ელემენტი სპანი. ეს ელემენტები გამოირჩევიან კანის კლასის შესაბამისი ფონის ფერით.

CSS ფაილის წარმოდგენილი ნაწილის ბოლოში მითითებულია ტექსტის არეალის ჩვენების წესები.

styles.css - ნაწილი 2

#feedback a.submit( background:url("img/submit.png") გამეორების გარეშე; საზღვარი:არცერთი; ჩვენება:ბლოკი; სიმაღლე:34px; ზღვარი:20px ავტო 0; ტექსტის დეკორაცია:არცერთი; ტექსტის შეწევა: -99999px;სიგანე:91px;) #feedback a.submit:hover( background-position:left bottom; ) #feedback a.submit.working( background-position:ზედა მარჯვნივ !მნიშვნელოვანი; კურსორი:default; ) ( font-family :Corbel,Arial,sans-serif; ფერი:#5a665b; text-shadow:1px 1px 0 #b3c2b5; margin-bottom:20px; ) ") არ განმეორდეს; float:მარჯვნივ; სიგანე:23px; სიმაღლე:18px; პოზიცია :relative; top:10px; ) #feedback. background-position:left bottom;) #feedback .arrow.up( background-position:right top;) #feedback h6:hover .up( background-position: მარჯვენა ქვედა;) #feedback .response( font-size:21px; margin-top:70px;text-align:center;text-shadow:2px 2px 0 #889889;ფერი:#FCFCFC; ჩვენება:ბლოკი;

სტილის ფურცლის მეორე ნაწილი განსაზღვრავს ძალის ღილაკის ტიპს. მნიშვნელოვანია, რომ არსებობს სამი ღილაკის ეტაპები, რომლებისთვისაც სურათები განთავსებულია ერთ ფაილში ფონური ბავშვი - submit.png. სუნი მოიხსნება როგორც კი საჭირო იქნება.

jQuery

საყელოს ფორმას აქვს ორი დონე - მინიმალური და მაქსიმალური. როცა გაინტერესებთ რეცხვა, ეკრანზე მარჯვენა ხელის პოზიცია მინიმუმამდეა დაყვანილი. და jQuery თარგმნის ფორმას მაქსიმალურ პოზიციაზე, როდესაც მომხმარებელი დააჭერს მაუსის ღილაკს სათაურზე. ეს ფუნქცია შექმნილია იმისთვის, რომ დაგეხმაროთ სცენების დაკავშირებაში და მარტივი ანიმაციების შესაქმნელად.

script.js - ნაწილი 1

$(document).ready(function())( // submit.php სკრიპტის URL. // რა თქმა უნდა, დაგჭირდებათ მისი დამახსოვრება. var submitURL = "submit.php"; // გამოხმაურების ობიექტის ქეშირება : var feedback = $("#feedback"); შეიყვანეთ მხეცი); var el = $(this).find(".arrow"); მოძრაობს ფორმას ზემოთ ან ქვევით და აადგილებს მეორე // სათაურს, ასე რომ ის მიჰყვება უკუკავშირის მინიმალურ ვერსიას. stop().animate((marginBottom: anim.mb)); feedback.find(".section").stop() .animate((paddingTop:anim.pt),function( ))( el.toggleClass("ქვემოთ ზევით"); )); ));

კოდის მარტივი და ლოგიკური შესანარჩუნებლად, შექმენით ანიმაციური ობიექტი, რომელიც შეიცავს ანიმაციის მნიშვნელობებს და განათავსეთ განცხადება თუ. კლასზეა დამოკიდებული ქვემოთ ისრზე ჩვენ ვწვავთ და ვწვავთ ფორმას.

კიდევ ერთი ნაწილი script.jsყიდულობს რობოტს AJAX-ით წარადგინე.php.

script.js - ნაწილი 2

$("#feedback a.submit").live("click",function())( var ღილაკი = $(this); var textarea = feedback.find("textarea"); // ჩემი ვიკორისტის კლასი არ მუშაობს მხოლოდ სტილების განსაზღვრისთვის მონაცემთა გაგზავნის ღილაკისთვის, // ასევე, როგორც ერთგვარი საკეტი ფორმის მრავალჯერადი წარმოქმნის თავიდან ასაცილებლად.< 5){ return false; } // Запираем форму и изменяем стиль кнопки: button.addClass("working"); $.ajax({ url: submitURL, type: "post", data: { message: textarea.val()}, complete: function(xhr){ var text = xhr.responseText; // Данная операция помогает пользователю определить ошибку: if(xhr.status == 404){ text = "Путь к скрипту submit.php неверный."; } // Прячем кнопку и область текста, после которой // мы показывали полученный ответ из submit.php button.fadeOut(); textarea.fadeOut(function(){ var span = $("",( className: "response", html: text )) .hide() .appendTo(feedback.find(".section")) .show(); )).val(""); ) )); false ;))));

მი ვიკორისტუემო jQuery მეთოდი AJAX-ისთვის $.ajax()ურთიერთობისთვის წარადგინე.php. ეს მეთოდი იძლევა ცოტა მეტ კონტროლს თქვენს კავშირებზე, ნაკლებად $.get()і $.post().

მეთოდის ერთ-ერთი უპირატესობაა ობიექტის ძალების ხილვადობა კარიბჭის ფუნქციაში "ყველა". აქ ჩვენ ვამოწმებთ კავშირის სტატუსს შეწყალება 404 (გვერდი არ მოიძებნა)და ჩვენ აშკარად ვაცნობიერებთ კორისტუვაჩის სურვილს ხელახლა გადაამოწმოს გზა submitURL.

ახლა დროა გადავიდეთ ბოლო ნაწილზე - PHP.

PHP

PHP ამუშავებს AJAX-დან გამოგზავნილ მონაცემებს, ამოწმებს და აიძულებს მას ელფოსტის შეტყობინებამითითებულ მისამართზე.

წარადგინე.php

// აქ თქვენ უნდა შეიყვანოთ თქვენი მისამართი $emailAddress = " [ელფოსტა დაცულია]// შექმენით Vickory სესია დატბორვის თავიდან ასაცილებლად: session_name("quickFeedback"); session_start(); // თუ ბოლო ფორმა გაიგზავნა 10 წამზე ნაკლების წინ, // ან მომხმარებელმა უკვე გაგზავნა 10 შეტყობინება გასულ წელს if($_SESSION[ "lastSubmit"] && (time() - $_SESSION["lastSubmit"]< 10 || $_SESSION["submitsLastHour"] >10))( die("იყავი კეთილი, გადაამოწმე ხალხის თაიგულები, ჯერ ისევ გააგზავნე შეტყობინება."); ) $_SESSION["lastSubmit"] = დრო(); $_SESSION["submitsLastHour"]++; მოითხოვს "phpmailer/class.phpmailer.php"; if(ini_get("magic_quotes_gpc"))($_POST["მესიჯი"] = stripslashes($_POST["მესიჯი"]); ) if(mb_strlen($_POST["მესიჯი"],"utf-8")< 5){ die("Ваше сообщение слишком короткое."); } $msg = nl2br(strip_tags($_POST["message"])); // Используем класс PHPMailer $mail = new PHPMailer(); $mail->IsMail(); //მფლობელის მისამართის დამატება $mail->AddAddress($emailAddress); $mail->Subject = "ახალი ფურცელი დასაკეცი ბმულის ფორმიდან"; $mail->MsgHTML($msg); $mail->AddReplyTo(" [ელფოსტა დაცულია]".$_SERVER["HTTP_HOST"], "სადემო გვერდის საკონტაქტო ფორმა"); $mail->SetFrom(" [ელფოსტა დაცულია]".$_SERVER["HTTP_HOST"], "დემო გვერდის დაბრუნების ბმული"); $mail->Send(); echo "Dyakuyu!";

უპირველეს ყოვლისა, ჩვენ ვიყენებთ vikorystvo keruvannya სესიებს, რათა განვსაზღვროთ, თუ რამდენად ხშირად წარადგენს vikoristvoy koristuvach ფორმას დარჩენილი წლისთვის და ასევე განსაზღვრავს საათს, რომელიც გავიდა ბოლო დეკორაციის შემდეგ. თუ დარჩენილი მიტანის მომენტიდან 10 წამზე ნაკლებია გასული, ან კლერკმა აიძულებს 10 წამზე მეტი დარჩენილი წლის განმავლობაში, გამოჩნდება შეტყობინება გადახდის შესახებ.

ელფოსტა გამოიყენება დამატებითი PHPMailer კლასისთვის. პატივისცემა!მუშაობს მხოლოდ PHP5-ით.

მეთოდების ჩამონათვალი PHPMailer Vykorist გამოიყენება გამომავალი ელფოსტის კონფიგურაციისთვის. მეთოდი IsMail ()ეუბნება კლასს გამოიყენოს შიდა PHP ფუნქცია ფოსტა (). მეთოდი მისამართის დამატება()იძლევა მფლობელის მისამართს (შეგიძლიათ დაამატოთ ერთზე მეტი მფლობელი დამატებითი დაწკაპუნებით ამ მეთოდით). ფურცელზე და ტექსტში თემების დამატების შემდეგ მითითებულია დადასტურების მისამართები და კეთდება შეტყობინებები.

მზადაა!

ვისნოვოკი

შეგიძლიათ ვიკორისტუვატი ქიუს ფორმათქვენს საიტთან გლუვი კომუნიკაციის ორგანიზება. ძალიან დაბალი ზოლი გაგზავნამდე - თქვენ უბრალოდ უნდა შეავსოთ ტექსტის ველი და დააჭიროთ ღილაკს - შექმენით ღია გონება, რათა თქვენი გვერდის ავტორებმა დაიწყონ თავიანთი იდეების გაზიარება. სკრიპტი ასევე კარგად არის სტრუქტურირებული და ადვილად დასაყენებელი, რაც დაგეხმარებათ შექმნათ შინაარსი თქვენს საიტზე მინიმალური ძალისხმევით.

საიდუმლო არ არის, რომ ხშირად გიწევთ საქმე თქვენი ვებსაიტის პროვაიდერებთან. კარგი, შეგიძლიათ უბრალოდ მიუთითოთ თქვენი თარიღი ელ.ფოსტა(როგორც მე გავაკეთე), მაგრამ შეგიძლიათ დანერგოთ სხვა მეთოდი - ეს კალიპერის ფორმა. უკაცრავად, აქ მჭირდება ცოდნა PHP. ალე, არ გჭირდება ყველაფრის ნულიდან დაწერა, ძალიან კარგს მოგცემ სცენარი ოქროს ზარის ფორმირებისთვის.

როგორც კი დაინტერესდებით, გადაიტანეთ არქივები თქვენს საიტზე (სიურპრიზი, არ გამოტოვოთ არაფერი თქვენს საიტზე). ახლა დავიწყოთ. ვისთვისაც ფაილი იხსნება" config.phpდა მომავალი ცვლილებების მნიშვნელობა იცვლება:

  1. "mailto"- ადგილის დაყენება" [ელფოსტა დაცულია] თქვენი ფოსტის ეკრანის მისამართი.
  2. "სიმბოლოების ნაკრები"- ჩადეთ კოდი, თუ გსურთ თქვენი საიტი იყოს რუსული, შეგიძლიათ ჩამოართვათ" windows-1251".
  3. "შინაარსი- ართმევს რაჯას ტექსტი/უბრალო“, ნაკლებად სავარაუდოა, რომ თქვენმა გიდებმა გაიძულებენ შეგატყობინოთ HTML ფორმატები.

ახლა თქვენ შეგიძლიათ გაუშვათ ფაილი index.phpსცენარზე. თქვენს თვალწინ შედეგს უნიკალური ფორმა აქვს. შეგიძლიათ შეავსოთ და გაგზავნოთ ფურცელი.

ახლა საჭმელი მოდის: " როგორ შემიძლია ჩავსვა დაბრუნების ფორმა ჩემს ვებსაიტზე?". ამისათვის იპოვეთ ფაილი, რომელიც ადასტურებს თქვენს კავშირს (არ დაგავიწყდეთ) კავშირი.html"). დაუყოვნებლივ შეცვალეთ გაფართოება php(ტობტო" კავშირი.php"). დააკოპირეთ კოდი index.phpსკრიპტის ფაილი zi კარიბჭის მხარე (კავშირი.php). ახლა თქვენ შეგიძლიათ იმუშაოთ ყველაფერთან, რაც გჭირდებათ ტეგებს შორის і , უბრალოდ არ წაშალოთ ისინი, ვინც ჩადეთ index.php. ტეგებს შორის і ?> არ შეეხოთ მას, თუ ზუსტად არ იცით რას აკეთებთ.

მე გადავწყვიტე, რომ ეს არ არის თქვენთვის შესაფერისი გარეგანი სახეფორმა, შემდეგ შეგიძლიათ შეცვალოთ იგი ფაილიდან " სტილისტიკა.css".

თუ თქვენ დაკარგეთ რაიმე საკვები, ან რაიმე ხარვეზი გაქვთ სკრიპტში (მე არ გამიტესტა), მომწერეთ ელ.ფოსტანება მომეცით გავასწორო.

სხვა ადამიანების სკრიპტებით რომ არ გადაიტვირთოთ, თავად დაიწყეთ მათი შექმნა. რატომ უნდა გასწავლო ჩემი ვიდეო კურსი? PHP და MySQL ნულიდან გურუმდე":


ამ სტატიაში თქვენ შეისწავლით თუ როგორ უნდა შექმნათ კარიბჭის ფორმა PHP-ში თქვენი ვებსაიტისთვის. სკრიპტი ამუშავებს მომხმარებლის მიერ შეყვანილ მონაცემებს და შედეგს აწვდის თქვენთვის საჭირო ელ.წერილს. ჩვენ გადავცემთ PHP ვერსიას, თუ დამუშავებულია ბრუნვის ლინკის ფორმა, ან ღვინის ფურცლის გაგზავნისას. და აქ - ყველა შეყვანილი ინფორმაცია ჩაიწერება ფაილში.

მაშ ასე, დავიწყოთ, გადავხედოთ მხარეს და დავწეროთ მისთვის სტილები. განლაგება მოიცავს კარიბჭის საწყის ფორმას ორი შეყვანით (ტელეფონი, ფოსტა) და ერთი ტექსტური არე, სადაც, ჩვენი გეგმის მიხედვით, კლიენტი შეიყვანს თავის შეტყობინებას. ფორმის შეჯამება განთავსებულია გვერდით გვერდზე.

საყელოს ფორმა

შეიყვანეთ ტელეფონის ნომერი:

Შენი ფოსტა:

თქვენი მოთხოვნა:


მოდით ჩამოვწეროთ სტილები:

Html, ტექსტი ( სიმაღლე: 100%; ზღვარი: 0; ) html (ფონის ფერი: #fff; ფერი: #333; შრიფტი: 12 პიქსელი/14 პიქსელი (ფონის ფერი: #ececec; ზღვარი: 50 პიქსელი ავტო 0; ტექსტის გასწორება : ცენტრი; სიგანე: 430 პიქსელი; შიგთავსი: 15 პიქსელი; ) #feedback-form h2( margin-bottom: 25px; ) #feedback-form input, #feedback -form textarea( background-color: #fff; საზღვარი: 1px მყარი #A9A9A9 ; padding: 1px 5px; სიგანე: 90%; ) #feedback-form input( სიმაღლე: 26px; ) #feedback-form textarea( სიმაღლე: 75px; padding-top: 5px; ) #feedback-form input( margin-top: 15 პიქსელი; ფონის ფერი: #0B7BB5; კონტური: 1 პიქსელი მყარი #CCCCCC; ფერი: #FFFFFF; სიმაღლე: 40 პიქსელი; ტექსტის ტრანსფორმაცია: დიდი; სიგანე: 225 პიქსელი; კურსორი: მაჩვენებელი; )

ყველა ამ მოქმედების შედეგად თქვენ მიიღებთ შემდეგ ფორმას:


ახლა დროა დავიწყოთ სერვერზე მუშაობა. ჩვენი სცენარი მოიცავს რამდენიმე ნაწილს:

  • ნალაშტუვანია;
  • დამატებითი ფუნქციები;
  • ჩამოსული ხარკების დამუშავება;
  • Გთხოვთ გაითვალისწინოთ.

ყველა ეს ნაწილი, რა თქმა უნდა, ჭკვიანია, ამიტომ ჩვენ არ გვაინტერესებს კოდის არეულობა ან ძირითადი ნაწილების სხვა ფაილებში ჩასმა. მაგრამ მე ვფიქრობ, რომ ჯობია იმუშაოთ ერთ ფაილთან, რათა ის ხელით იყოს დაკავშირებული სხვა პროექტებთან.

Დაყენება

ამ ეტაპზე ჩვენ ვაკეთებთ სამ ცვლილებას: $my_email (ფოსტის ეკრანი მონაცემების გადატვირთვის შესახებ), $path_log (გზა ჟურნალის ფაილისკენ) და $time_back (მომხმარებლის საიტზე დაბრუნების საათი).

// მიუთითეთ თქვენი ელფოსტის ეკრანი $my_email = " [ელფოსტა დაცულია]// შესაძლებელია მიუთითოთ სად უნდა იყოს შენახული ჟურნალები $path_log = "log.txt"; // კორისტუვაჩის საიტზე დაბრუნების საათი (წმ) $time_back = 3;

დამატებითი ფუნქციები

აქ ჩვენ აღვწერთ ხუთ ფუნქციას მონაცემთა დამუშავების გასამარტივებლად.

შეტყობინებების შაბლონები:

ფუნქცია error_msg($message)($message = "

".$message."

"; დაბრუნება $message; ) ფუნქცია success_msg($message)($message = "

".$message."

"; დააბრუნეთ $message;)

ფორმიდან მომდინარე ხარკის განწმენდა:

ფუნქცია clear_data($var)( return trim(strip_tags($var)); )

ფურცლის გაგზავნა:

ფუნქცია send_mail($email, $subj, $text, $from)( $headers = "From: ".$from." \r\n"; $headers .= "MIME-ვერსია: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=utf-8 \r\n"; $result = ფოსტა ($email, $subj, $text, $headers); false;) დაბრუნება true;)

ბოლო ფუნქცია არის ტელეფონისა და ფოსტის შემოწმება მათი ჩაწერის ფორმატის სისწორისთვის.

ფუნქცია check_format($data, $type)( switch($type)( case "email": $pattern = "/^*@(+(*+)*\.)++$/i"; if(preg_match( $pattern, $data))( დაბრუნება true; ) break, case "phone": $pattern = "/^(\+?\d+)?\s*(\(\d+\))?[\s-] *([\d-]*)$/"; if(preg_match($pattern, $data))( return true; ) break; ) return false;)

როგორც ხედავთ, ჩვენ მიერ დაწერილი ყველა ფუნქცია მცირე ზომისაა. შეიძლება არ მოგიწიოთ ამის გადახდა მონაცემთა დამუშავებას შორის, თუ არ დაგჭირდებათ მისი შეცვლა ან გაფართოება, მაგალითად check_format(), რაც ბევრად უფრო მარტივი და მოსახერხებელი იქნება.

პატივი მიაგო იმ ხარკებს, რომლებიც ჩამოვიდა

მაშინვე ვიგებთ, რა მხრიდან მოვიდნენ კორისტუვაჩები. შემდეგ ჩვენ ვაკეთებთ ცვლილებებს, რათა შეინახოთ ჩვენი შეტყობინებები და გაგზავნილი ფურცლის სტატუსი.

// აღმოაჩინეთ წინა გვერდი $prev_page = $_SERVER["HTTP_REFERER"]; // ჩვენი შეტყობინებები $msg = ""; // ფურცლის სტატუსი $status_email = "";

ახლა, ისე, რომ კოდირებასთან დაკავშირებით პრობლემები არ შეგექმნათ, ჩვენ მას მივუთითებთ დამატებითი სათაურის უკან.

Header("შინაარსის ტიპი: text/html; charset=utf-8");

If($_SERVER["REQUEST_METHOD"] == "POST")(if(isset($_POST["ნომერი"], $_POST["ელფოსტა"], $_POST["კითხვა"]))($number = clear_data ($_POST["ნომერი"]); $email = clear_data($_POST["email"]); $question = clear_data($_POST["question"]); if(check_format($number, "telefon") && check_format($email, "email") && !empty($question))( // შექმენით ფურცელი $e_title = "ახალი ინფორმაცია"; $e_body = "!} !} $e_body .= " $e_body .= "ტელეფონი: ".$number; $e_body .= "
$e_body .= "ელფოსტა: ".$email; $e_body .= "
$e_body .= "კვება: ".$question; $e_body .= "$e_body .= "// END ჩამოაყალიბეთ ფურცელი if(send_mail($my_email, $e_title, $e_body, $prev_page))($status_email = "წარმატება"; $msg = success_msg("გმადლობთ მხარდაჭერისთვის.
ვიმედოვნებთ, რაც შეიძლება მალე გაცნობებთ."); )else( $status_email = "შეცდომა"; $msg = error_msg("ფურცლის გაგზავნისას მოხდა შეცდომა."); ) // ჩაწერეთ ფაილში $str = "საათი: ".date ("d-m-Y G:i:s")."\n\r"; $str .= "ტელეფონი: ".$number."\n\r"; $str .= "ფოსტა: ".$email." \n\r"; $str .= "საკვები: ".$question."\n\r"; $str .= "ფურცელი: ".$status_email."\n\r"; $str .= "= =====================================\n\r"; file_put_contents($path_log, $ str, FILE_APPEND); )else( $msg = error_msg( "შეავსეთ ფორმა სწორად!"); ) )else( $msg = error_msg("შეავსეთ ფორმა!"); ) )else( გასვლა; )

დაწერილი კოდი მიუთითებს, რომ ფორმა გაგზავნილია, წინააღმდეგ შემთხვევაში, ჩვენ ვხურავთ ფაილს დამატებითი გასასვლელი ფუნქციის უკან. შემდეგი, ჩვენ ვამოწმებთ POST მასივის არსებობას ჩვენი მონაცემების შუაში, როგორც კი ისინი ჩამოვიდნენ, შეძლებისდაგვარად. გაწმენდის შემდეგ ვამოწმებთ ტელეფონზე შეტყობინების ფორმატს, ასევე შეცვლილ საკვებში ტექსტის ხილვადობას. შემდეგ ვაყალიბებთ ფურცელს, ვაგზავნით და ვწერთ ლოგინში, სადაც, გარდა ამისა, ვინახავთ გაგზავნილი ფურცლის სტატუსს. ამ გზით ჩვენ შეგვიძლია გავუშვათ mail() ფუნქცია მონაცემთა დაკარგვის გარეშე.

ვიდეო გაცნობისთვის

ჩვენ მხოლოდ კლიენტს უნდა ვაცნობოთ წარმატებული ან „არა“ წარმატებული ოპერაციის შესახებ და დავაბრუნოთ იგი საიტზე ფორმის გამოყენებით. რისთვისაც ჩვენ ვიყენებთ შემდეგ ფორმატირებას ჩართული PHP სკრიპტით.

მომხმარებლის უკან საიტზე გადამისამართებლად, ჩვენ სწრაფად ვიყენებთ განახლების მეტა ტეგს, რათა ჩავსვათ უკვე შეცვლილი PHP კოდი. ჩვენ ასევე გვჭირდება JavaScript-ის ოდნავ შესწორება, რომ საიტი ოდნავ უფრო დინამიური გავხადოთ. ჩვენ ვწერთ timeBack() ფუნქციას ისე, რომ დაბრუნების შეკვეთას გადამისამართებამდე წამები დასჭირდება.

ოქროს მოწოდების ფორმების წიგნი

გვერდით გადახვალ მეშვეობით

ღერძი და ეგაა, საყელოს ფორმა მზადაა.

ბმულის ფორმა შეიძლება განთავსდეს. უბრალოდ იშოვე ფული. თუ თქვენ მიიღებთ CSS სტილს, ფორმა იქნება "gumova":

ქვემოთ მოცემულია ელ.ფოსტის გაგზავნის სკრიპტის ორი ვარიანტი: Javascript-ით და მის გარეშე

1. ჰალსტუხის ფორმა გადახვევის გარეშე

  1. ფაილს დაემატა PHP
  2. თუ დააჭერთ F5 ღილაკს, ფორმა აღარ გაიგზავნება
  3. ფორმის შევსების შემდეგ გვერდი ხელახლა აღარ ჩაირთვება
  4. არ არის მხარდაჭერილი IE8 და უფრო დაბალი (თქვენ უნდა დაამატოთ კოდი addEventListener() , preventDefault() და XMLHttpRequest ანალოგებით ან გამოიყენოთ ვარიანტი 2)

ფაილი contacts.html

მე ვაპირებ შენს სისასტიკეს: ელ.ფოსტა კონტაქტისთვის: სახელი = "contactFF"საჭირო placeholder="ელფოსტის მისამართები" x-autocompletetype="email"> Ваше сообщение: !} !}

ფაილი contacts.php

свій@yandex.ru$subject = "საკონტაქტო ფორმა დახურულია.".$_SERVER["HTTP_REFERER"]; $subject = "=?utf-8?b?". base64_encode($subject) ."?="; $message = "Im: ".$_POST["nameFF"]."\nIP: ".$_SERVER["REMOTE_ADDR"]."\nმესიჯი: ".$_POST["messageFF"]; $headers = "შინაარსის ტიპი: text/plain ; charset="utf-8""; $headers .= "MIME-ვერსია: 1.0\r\n"; $headers .= "თარიღი:". "\r\n"; ფოსტა ($to, $subject, $message, $headers); echo $_POST["nameFF"]; ) ?>

2. ბმული ფორმა JavaScript-ის გარეშე

  1. უმეტეს შემთხვევაში, ფაილის გაფართოება შეიძლება იყოს buti.
  2. როდესაც დააჭერთ F5 ღილაკს, ფორმა ხელახლა გაიგზავნება
  3. ფორმის შევსების შემდეგ გვერდი ხელახლა ჩაირთვება
  4. ველების შევსების სისწორის შემოწმება არ ხდება სერვერის მხარეს

ფაილი contacts.php

свій@yandex.ru", "კონტაქტის ფორმა შევსებულია ".$_SERVER["HTTP_REFERER"], "Name: ".$_POST["nameFF"] ."\nელფოსტა: ".$_POST["contactFF"]."\nმესიჯი: ".$_POST["messageFF"]); ექო ("

შენი შეტყობინება გაუქმდა, ძმაო!

"); } ?>
მე ვაპირებ შენს სისასტიკეს: ელ.ფოსტა კონტაქტისთვის: სახელი = "contactFF"საჭირო placeholder="ელფოსტის მისამართები" x-autocompletetype="email"> Ваше сообщение: !} !}
  1. უნდა შეიცვალოს свій@yandex.ru
  2. უნდა შეიცვალოს კონტაქტები.phpიმავე მისამართზე, მაგალითად, http://site.ru/folder/folder/contacts.php
  3. ახალი ველის დასამატებლად, თქვენ უნდა შეიტანოთ ცვლილებები HTML, JavaScript და PHP კოდში. სხვა სიტყვებით რომ ვთქვათ, დაამატეთ იგივე ნაკვეთები, როგორც ამისთვის contactFF. მაგალითი აღწერილობით