Kalite Kontrol Departmanı. PHP Geri Bildirim formunda bir geri bildirim formu oluşturun

27 Temmuz 2006 tarihli ve 152-FZ sayılı “Kişisel Verilere İlişkin” Federal Kanun uyarınca, kişisel verilerin konusu olan ve bundan sonra Kullanıcı olarak anılacak olan ben, geri bildirim formları (bundan sonra Formlar olarak anılacaktır) aracılığıyla bilgileri gönderiyorum. Web sitesi (bundan sonra Site olarak anılacaktır) ve ayrıca Hukuk Bürosu'nun "Business Fairway" ile biten kurumsal e-posta adreslerine (bundan sonra Kurumsal Posta olarak anılacaktır), serbestçe, kendi özgür irademle ve çıkarlarım doğrultusunda 109240, Moskova, Goncharnaya caddesi, bina 24 adresinde bulunan "Business Fairway" Hukuk Bürosuna (OGRN 1167700058679; INN 9705068808) ileterek (bundan sonra Operatör olarak anılacaktır), kişisel verilerimin işlenmesine izin veriyorum (bundan sonra Rıza olarak anılacaktır) aşağıdaki şartlara tabidir.

1. Onayın kabul edildiği an, Formda ilgili alanın işaretlenmesi ve Sitenin herhangi bir sayfasında Formu göndermek için düğmeye basılmasının yanı sıra, Kullanıcının kişisel verilerini içeren bir e-postanın Siteye gönderilmesi için düğmeye basılmasıdır. Operatörün Kurumsal posta adresi.

2. Kişisel verilerin işlenmesi - toplama, kaydetme, sistemleştirme, biriktirme, saklama, açıklama (güncelleme, değiştirme) dahil olmak üzere kişisel verilerle otomasyon araçları kullanılarak veya bu tür araçlar kullanılmadan gerçekleştirilen herhangi bir eylem (işlem) veya eylem kümesi (işlemler). ), kişisel verilerin çıkarılması, kullanılması, aktarılması (dağıtım, provizyon, erişim), duyarsızlaştırma, engelleme, silme, yok etme.

3. Kişisel verilerin işlenmesi, bilgi ve telekomünikasyon ağları da dahil olmak üzere otomasyon araçları kullanılarak ve bu tür araçlar kullanılmadan gerçekleştirilir.

4. Kullanıcı tarafından Formlarda belirtilen Kullanıcıya ait aşağıda belirtilen kişisel verilerin, Formlara ekli dosyalarda ve Kurumsal posta adreslerine gönderilen bilgilerin işlenmesine onay verilmektedir:

    Ad Soyad;

    E-posta adresi;

    İletişim numarası;

    Yaş;

    Kullanıcı tarafından Formlarda veya Formlara eklenen dosyalarda belirtilen diğer kişisel veriler.

5. Kişisel verilerin işlenme amaçları:

    Kullanıcı kimliği;

    Operatörün hizmetlerine ilişkin bildirimlerin, taleplerin ve bilgilerin gönderilmesinin yanı sıra Kullanıcıdan gelen talep ve başvuruların işlenmesi ve Kullanıcıdan Operatöre geri bildirim oluşturulması da dahil olmak üzere Kullanıcı ile etkileşim;

    Kullanıcı isteklerine verilen yanıtlar;

    Kullanıcının Operatörün Web Sitesi ile çalışmasının sağlanması;

    Kullanıcılara analitik materyaller göndermek ve Operatör tarafından düzenlenecek yaklaşan etkinlikler hakkında Kullanıcıları bilgilendirmek ve ayrıca Kullanıcıları bu tür etkinliklere katılmak üzere kaydetmek;

    İş sözleşmeleri ve hukuki hizmetlerin sağlanmasına yönelik sözleşmeler de dahil olmak üzere Kullanıcı ile sözleşmelerin imzalanması;

    Kullanıcı tarafından belirlenen e-posta adresine mesaj gönderilerek Kullanıcılara referans ve diğer pazarlama bilgilerinin gönderilmesi.

    Kullanıcılara pazarlama faaliyetleri ve destek amacıyla ve ayrıca Rusya Federasyonu'nun yürürlükteki mevzuatına ve Rusya Federasyonu arasındaki anlaşma şartlarına aykırı olmayan diğer amaçlarla, Operatör tarafından sağlanan hizmetlerle ilgili konularda Kullanıcılara tavsiyelerde bulunmak. Operatör ve Kullanıcılar.

6. Operatör, kişisel verilerin işlenmesi sırasında toplama, kaydetme, sistemleştirme, biriktirme, saklama, açıklama (güncelleme, değiştirme), çıkarma, kullanma, aktarma (dağıtım, provizyon, erişim), kişiselleştirme, engelleme, silme hakkına sahiptir. , Kullanıcının kişisel verilerini yok etmek.

7. Operatör, Kullanıcıların kişisel bilgilerini yetkisiz veya kazara erişime, imhaya, değiştirmeye, engellemeye, kopyalamaya, dağıtmaya ve ayrıca üçüncü tarafların diğer yasa dışı eylemlerinden korumak için gerekli ve yeterli organizasyonel ve teknik önlemleri alır.

8. Kullanıcının kişisel verilerinin, Operatörün yeniden düzenlenmesi sırasındaki halefleri ve Operatör adına ve onun adına kişisel verileri işleyen kişiler haricinde üçüncü şahıslara aktarımı yapılmaz. Kullanıcılar Operatör tarafından düzenlenen etkinliklere katılırsa, Operatör, Kullanıcıların ilgili kişisel verilerini böyle bir etkinliğin organizasyonuna katılan kişilere açıklama hakkına sahiptir.

9. Kişisel verilerin işlenmesine ilişkin onay, Operatörün kişisel verileri işleme amaçlarına ulaşması için gerekli süre boyunca Kullanıcı tarafından verilir.

10. Onay, Kullanıcı tarafından Operatöre (109240, Moskova, Goncharnaya Caddesi, 24) yazılı bir beyan gönderilerek veya aşağıdaki Kurumsal e-posta adresine yazılı bir beyan gönderilerek iptal edilebilir: .

11. Bu Rıza, kişisel verilerin işlenmesinin sona ermesine kadar her zaman geçerlidir.

12. Bu Onayda kullanılan kavramlar, 27 Temmuz 2006 tarihli N 152-FZ “Kişisel Verilere İlişkin” Federal Kanunda verilen tanımlarına uygun olarak yorumlanmalıdır.

Web sitenize gelen ziyaretçilerle sıklıkla bir şekilde iletişim kurmanız gerektiği bir sır değil. Tabii ki, (benim yaptığım gibi) e-postanızı verebilirsiniz veya başka bir yöntem önerebilirsiniz - bu bir geri bildirim formudur. Tabii bunun için PHP bilgisi gerekiyor. Ancak her şeyi sıfırdan yazmak zorunda kalmamanız için size çok iyi bir geri bildirim formu senaryosu sunuyorum.

İndirdikten sonra arşivi web sitenize çıkarın (hiçbir şeyi silmemeye dikkat edin). Şimdi ayarlayalım. Bunu yapmak için "config.php" dosyasını açın. Ve aşağıdaki değişkenlerin değerlerini değiştirin:

  • "mailto" - " yerine koy [e-posta korumalı]"posta kutusu adresiniz.
  • "karakter seti" - kodlamayı ayarlayın, ancak siteniz Rusça ise "windows-1251" den ayrılabilirsiniz.
  • "içerik" - Ziyaretçilerinizin size HTML formatında mesaj göndermesi pek mümkün olmadığından "metin/düz" bırakmanızı tavsiye ederim.
  • Artık betiğin index.php dosyasını çalıştırabilirsiniz. Sonuç olarak karşınıza bir form çıkacak. Mektubu doldurup gönderebilirsiniz.

    Şimdi şu soru ortaya çıkıyor: "Bu geri bildirim formunu web sitenize nasıl eklerim?" Bunu yapmak için geri bildirim sayfanızdan sorumlu dosyayı bulun ("feedback.html" olsun). Uzantıyı hemen php (yani "feedback.php") olarak değiştirin. Kodu index.php betiğinden geri bildirim sayfasının (feedback.php) bulunduğu dosyaya kopyalayın. Artık ve etiketleri arasında istediğinizi yapabilirsiniz, sadece index.php'ye yapıştırdıklarınızı silmeyin. Ne yaptığınızı tam olarak bilmiyorsanız, etiketlerin arasına da dokunmayın.

    Son olarak formun görünümünü beğenmediyseniz “styling.css” dosyasında düzeltebilirsiniz.

    Hala sorularınız varsa veya komut dosyasında bazı hatalar varsa (test etmedim), düzeltebilmem için bana e-posta ile yazın.

    Başkalarının senaryolarının çalışmalarına bağlı kalmamak için bunları kendiniz nasıl oluşturacağınızı öğrenin. "Sıfırdan Guruya PHP ve MySQL" Video Kursu size şunu öğretecek:

    İletişim formu üzerine yerleştirilebilir. Bunu yapmak kolaydır. Önerilen CSS stilini kabul ederseniz form "lastik" olacaktır:

    Aşağıda posta gönderme komut dosyası için iki seçenek verilmiştir: Javascriptli ve Javascriptsiz

    1. Yeniden başlatmadan iletişim formu
  • PHP ayrı bir dosyaya taşındı
  • F5'e basıldığında form tekrar gönderilmez
  • Formu gönderdikten sonra sayfa yeniden yüklenmeyecek
  • IE8 ve altında desteklenmez (kodu addEventListener(), PreventDefault() ve XMLHttpRequest analoglarıyla tamamlamanız veya seçenek 2'yi kullanmanız gerekir)
  • Contacts.html dosyasını dosyalayın Sizinle nasıl iletişime geçilir: İletişim için e-posta: Mesajınız: document.getElementById("feedback-form").addEventListener("submit", function(evt)( var http = new XMLHttpRequest(), f = this; evt.preventDefault( ); http.open("POST", "contacts.php ", true); http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); http.send("nameFF=" + f.nameFF.value + "&contactFF=" + f.contactFF.value + "&messageFF=" + f.messageFF.value); http.onreadystatechange = function() ( if (http.readyState == 4 && http.status) == 200) ( warning(http.responseText + ", Mesajınız alınmıştır.\nUzmanlarımız 2 gün içerisinde size cevap verecektir.\nFirmamıza gösterdiğiniz ilgi için teşekkür ederiz!"); f.messageFF.removeAttribute("value "); // (iki çizgi) f.messageFF.value = ""; )) ) http.onerror = function() ( warning("Üzgünüz, veriler aktarılmadı"); ) ), false); Contacts.php dosyasını indirin 2. JavaScript içermeyen iletişim formu
  • çoğu durumda dosya uzantısı .php olmalıdır
  • F5'e bastığınızda form tekrar gönderilecektir
  • Formu gönderdikten sonra sayfa yeniden yüklenecektir
  • Alanların doğru doldurulup doldurulmadığının kontrolü sunucu tarafında yapılmaz
  • Contacts.php dosyası #feedback-form ( maksimum genişlik: 400 piksel; dolgu: %2; kenarlık yarıçapı: 3 piksel; arka plan: #f1f1f1; ) #feedback-form ( genişlik: %100; kutu boyutu: kenarlık kutusu; kenar boşluğu: 2px 0 2% 0; dolgu: %2; kenarlık: 1px katı rgba(0,0,0,.1); kenarlık yarıçapı: 3px; kutu gölgesi: 0 1px 2px -1px rgba(0,0, 0,.2) iç metin, 0 0 şeffaf; ) #feedback-form :hover ( border-color: #7eb4ea; box-shadow: 0 1px 2px -1px rgba(0,0,0,.2) ek, 0 0 şeffaf; ) #feedback-form :focus ( anahat: yok; kenarlık rengi: #7eb4ea; kutu gölgesi: 0 1px 2px -1px rgba(0,0,0,.2) iç metin, 0 0 4px rgba(35,146,243, .5); geçiş: .2s doğrusal; ) #feedback-form ( dolgu: %2; kenarlık: yok; kenarlık yarıçapı: 3 piksel; kutu gölgesi: 0 0 0 1 piksel rgba(0,0,0,.2) iç metin; arka plan: #669acc; renk: #fff; ) #feedback-form :hover ( arka plan: #5c90c2; ) #feedback-form :focus ( box-shadow: 0 1px 1px #fff, ek 0 1px 2px rgba(0 ,0,0,.8), inset 0 -1px 0 rgba(0,0,0,.05); ) Sizinle nasıl iletişime geçilir: İletişim e-postası: Mesajınız:
  • @yandex.ru adresini değiştirmeniz gerekiyor
  • Contacts.php'yi tam adresle değiştirmeniz gerekir, örneğin http://site.ru/folder/folder/contacts.php
  • Yeni bir alan eklemek için HTML, JavaScript ve PHP kodunda değişiklik yapmanız gerekir. Başka bir deyişle, contactFF ile aynı bölümleri ekleyin. Örnekte açıklandığı gibi
  • Bu derste, PHP'de bir geri bildirim formu oluşturma ve ardından alınan verileri e-postayla gönderme örneğini kullanarak mail() işlevini tanıyacağız.

    Bunu yapmak için iki dosya oluşturacağız - forma.php ve mail.php. İlk dosya yalnızca kullanıcının veri girebileceği alanları içeren bir form içerecektir. Form etiketinin içinde bir düğme var "Göndermek" ve eylem özniteliği, düğme tıklandığında formdaki verilere erişilen mail.php işleyicisini ifade eder. "Göndermek". Örneğimizde form verileri "/mail.php" adlı bir web sayfasına gönderilmektedir. Bu sayfa form verilerini işleyen bir PHP betiği içerir:


    Form verileri POST yöntemi kullanılarak gönderilir ($_POST olarak işlenir). $_POST, geçerli betiğe POST yöntemi aracılığıyla aktarılan bir değişkenler dizisidir.

    Aşağıda, bazı web sitelerinde alanları kullanıcının kendisi tarafından doldurulan forma.php dosyasının içeriğini görüyorsunuz. Veri girişi yapılacak tüm alanların name niteliği olması gerekir, mantığa dayalı olarak değerleri kendimiz yazıyoruz.




    PHP'de e-postayla gönderilen geri bildirim formu


    PHP'de geri bildirim formu





    Mesaj bırakın:
    Adınız:



    E-posta:

    Telefon numarası:

    İleti:

    Metin alanı sınırsız sayıda karakter içerebilir-->







    Form tarayıcıda görsel olarak bu şekilde görünür.

    Daha sonra mail.php dosyasının kodunu yazıyoruz. Değişkenler için kendi isimlerimizi buluyoruz. PHP'de bir değişken $ işaretiyle ve ardından değişken adıyla başlar. Değişkenin metin değeri tırnak işaretleri içine alınır. Değişkenler kullanılarak, form öğesinin adı köşeli parantez içine (ad değeri) yerleştirilerek formun içeriği yöneticinin e-postasına gönderilir.

    Böylece $_POST dizisindeki veriler ilgili değişkenlere aktarılacak ve mail fonksiyonu kullanılarak mail'e gönderilecektir. Formumuzu doldurup gönder butonuna basalım. E-postanızı eklemeyi unutmayın. Mektup anında geldi.

    Bir web projesinin geliştirilmesi için ziyaretçilerden geri bildirim almak çok önemlidir. Ne yazık ki birçok web sitesinde geliştiricilere mesaj gönderme yeteneği ya hiç sağlanmıyor ya da oldukça ciddi zorluklarla ilişkilendiriliyor.

    Bugün bu soruna basit bir çözüm yapacağız. JQuery, PHP ve PHPMailer sınıfını kullanan form, kullanıcının teklifini doğrudan gelen kutunuza gönderir.

    HTML

    HTML işaretlemesiyle başlayalım. Stiller belgenin üst kısmında, JavaScript dosyaları ise alt kısmında bulunur. Bu, sayfa yükleme sürecini optimize eder, böylece komut dosyaları en son yüklenir ve kullanıcının sayfa içeriğini görmesine olanak tanır.

    demo.html

    PHP ve jQuery kullanarak geri bildirim formu | Web sitesi web sitesi için demo

    Yanıt almak istiyorsanız lütfen iletişim bilgilerinizi ekleyin.

    Göndermek

    İçeri vücut bulunan div#geri bildirim. Eğitimin CSS bölümünde görüleceği gibi, sabit bir konumlandırma kullanılarak pencerenin sağ alt kısmına yerleştirilir.

    Bunun içinde div beş renkli öğe yerleştirildi açıklık. Her biri %20 genişliğe sahiptir ve sola kaydırılmıştır. Bu şekilde tam olarak tüm genişliğe yerleştirilirler. div#geri bildirim.

    Daha sonra başlığı, metin alanını ve düğmeyi içeren .section kapsayıcısı gelir.

    CSS

    Formun stillerini ayarlamaya geçelim. Öncelikle stil sayfasının yapısının nelerden oluştuğuna dair birkaç söz söyleyelim. Aşağıdaki CSS tanımlarına bakarsanız her kuralın #feedback ile başladığını fark edeceksiniz. Bu, CSS'de benzer bir ad alanı oluşturarak mevcut bir web sitesine çakışma olmadan kod eklemeyi kolaylaştırır.

    stiller.css - Bölüm 1

    #feedback( arka plan rengi:#9db09f; genişlik:310px; yükseklik:330px; konum:sabit; alt:0; sağ:120px; kenar boşluğu-alt:-270px; z-index:10000; ) #feedback .section( arka plan :url("img/bg.png") tekrar-x üst sol; border:1px katı #808f81; border-bottom:none; dolgu:10px 25px 25px; ) #feedback .color( float:left; height:4px; genişlik:20%; taşma:gizli; ) #feedback .color-1( arka plan rengi:#d3b112;) #feedback .color-2( arka plan rengi:#12b6d3;) #feedback .color-3( arka plan rengi :#8fd317;) #feedback .color-4( arka plan rengi:#ca57df;) #feedback .color-5( arka plan rengi:#8ecbe7;) #feedback h6( arka plan:url("img/feedback.png" ) tekrar yok; yükseklik:38px; kenar boşluğu:5px 0 12px; metin girintisi:-99999px; imleç:işaretçi; ) #feedback textarea( arka plan rengi:#fff; kenarlık:yok; renk:#666666; yazı tipi:13px "Lucida Sans", Arial, sans-serif; yükseklik:100px; dolgu:10px; genişlik:236px; yeniden boyutlandırma:yok; taslak:yok; taşma:otomatik; -moz-box-shadow:4px 4px 0 #8a9b8c; -webkit -kutu-gölge:4px 4px 0 #8a9b8c; kutu gölgesi:4px 4px 0 #8a9b8c; )

    Stillendirilecek ilk öğe div#geri bildirim. Sabit bir konum atanır ve tarayıcı penceresine sabitlenir. Bundan sonra tanımı gelir div .bölüm ve beş renkli element açıklık. Bu öğeler yalnızca her sınıf için ayrı ayrı atanan arka plan renginde farklılık gösterir.

    CSS dosyasının sunulan kısmının en altında metin alanının görüntülenmesine ilişkin kurallar tanımlanmıştır.

    stiller.css - Bölüm 2

    #feedback a.submit( arka plan:url("img/submit.png") tekrarlama yok; kenarlık: yok; ekran: blok; yükseklik: 34 piksel; kenar boşluğu: 20 piksel otomatik 0; metin dekorasyonu: yok; metin girintisi: -99999px; genişlik:91px; ) #feedback a.submit:hover( arka plan konumu:sol alt; ) #feedback a.submit.working( arka plan konumu:sağ üst !important; imleç:varsayılan; ) #feedback .message ( font-family:Corbel,Arial,sans-serif; color:#5a665b; text-shadow:1px 1px 0 #b3c2b5; marj-bottom:20px; ) #feedback .arrow( arka plan:url("img/arrows.png) ") tekrarlama yok; kayan nokta:sağ; genişlik:23 piksel; yükseklik:18 piksel; konum:göreli; üst:10 piksel; ) #feedback .arrow.down( arka plan konumu:sol üst;) #feedback h6:hover .down( arka plan konumu:sol alt;) #feedback .arrow.up( arka plan konumu:sağ üst;) #feedback h6:hover .up( arka plan konumu:sağ alt;) #feedback .response( font-size:21px; kenar boşluğu:70 piksel; metin hizalama: merkez; metin gölgesi:2px 2px 0 #889889; renk:#FCFCFC; görüntüleme:blok; )

    Stil sayfasının ikinci kısmı gönder düğmesinin görünümünü tanımlar. Arka plan görüntüsü için görüntülerin tek bir dosyada yer aldığı üç düğme durumu bulunduğunu unutmayın - gönder.png. Yalnızca gerektiğinde görüntülenirler.

    jQuery

    Geri bildirim formunun iki durumu vardır: simge durumuna küçültülmüş ve maksimum. Önyükleme sırasında varsayılan durum, ekranın sağ alt kısmında simge durumuna küçültülmüş duruma ayarlanır. Ve jQuery, kullanıcı başlığa tıkladığında formu maksimum durumuna getirir. Bu işlevsellik, bir olayı bağlayarak ve basit animasyonlar gerçekleştirerek gerçekleştirilir.

    script.js - Bölüm 1

    $(document).ready(function())( // submit.php betiğinin ilgili URL'si. // Muhtemelen değiştirmeniz gerekecektir. var submitURL = "submit.php"; // Geri bildirim nesnesini önbelleğe alın: var geribildirim = $( "#feedback"); $("#feedback h6").click(function())( // Animasyon özelliği değerleri // ayrı bir nesnede saklanır: var anim = ( mb: 0, // Alt kenar boşluğu pt: 25 // Üst dolgu); var el = $(this).find(".arrow"); if(el.hasClass("down"))( anim = ( mb: -270, pt) : 10); ) // İlk animasyon formu yukarı veya aşağı hareket ettirir ve ikincisi, // başlığını küçültülmüş versiyona hizalanacak şekilde hareket ettirir Feedback.stop().animate((marginBottom: anim.mb)); geribildirim.find(".section").stop() .animate((paddingTop:anim.pt),function())( el.toggleClass("aşağı yukarı"); )); ));

    Kodu basit ve anlaşılır tutmak için en üstte animasyona ilişkin değerleri içeren bir anim nesnesi oluşturulur ve operatör yerleştirilir. eğer. Sınıfın varlığına bağlı olarak aşağı' Ok üzerinde şekli genişletir veya daraltırız.

    İkinci kısım script.js AJAX'ın çalışmasını yönetir gönder.php.

    script.js - Bölüm 2

    $("#feedback a.submit").live("tıklayın",function())( var butonu = $(bu); var textarea = geribildirim.find("textarea"); // İşçi sınıfını kullanmıyoruz yalnızca veri gönderme düğmesi için stilleri ayarlamak için, // aynı zamanda formun birden fazla oluşturulmasını önlemek için bir tür kilit olarak da kullanılır. if(button.hasClass("working") || textarea.val().length< 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(""); } }); return false; }); });

    Etkileşim için jQuery'nin AJAX $.ajax() yöntemini kullanıyoruz. gönder.php. Bu yöntem, bağlantı üzerinde $.get() ve $.post() yöntemlerinden biraz daha fazla kontrol sağlar.

    Yöntemin avantajlarından biri, nesnenin özelliklerinin "tüm" geri çağırma işlevi boyunca görünür olmasıdır. Burada uyumluluk için yanıtın durumunu kontrol ediyoruz Hata 404 - Sayfa Bulunamadı) ve kullanıcıya yolu kontrol etmesini isteyen bir mesaj görüntüleyin URL'yi gönder.

    Şimdi son kısma – PHP'ye geçme zamanı.

    PHP

    PHP, AJAX'tan gönderilen verileri işler, doğrular ve belirtilen adrese bir e-posta mesajı gönderir.

    gönder.php

    // Buraya adresinizi girmeniz gerekiyor $emailAddress = " [e-posta korumalı]"; // Taşmayı önlemek için oturumu kullanın: session_name("quickFeedback"); session_start(); // Son form 10 saniyeden daha kısa bir süre önce gönderildiyse, // veya kullanıcı zaten son saat içinde 10 mesaj gönderdiyse if($_SESSION[ "lastSubmit"] && (time() - $_SESSION["lastSubmit"]< 10 || $_SESSION["submitsLastHour"] >10))( die("Mesajı tekrar göndermeden önce lütfen birkaç dakika bekleyin."); ) $_SESSION["lastSubmit"] = time(); $_SESSION["sonsaati gönderir"]++; "phpmailer/class.phpmailer.php" gerektirir; if(ini_get("magic_quotes_gpc"))( $_POST["mesaj"] = stripslashes($_POST["mesaj"]); ) if(mb_strlen($_POST["mesaj"],"utf-8")< 5){ die("Ваше сообщение слишком короткое."); } $msg = nl2br(strip_tags($_POST["message"])); // Используем класс PHPMailer $mail = new PHPMailer(); $mail->IsMail(); // Alıcının adresini ekleyin $mail->AddAddress($emailAddress); $mail->Subject = "Geri bildirim formundan yeni e-posta"; $mail->MsgHTML($msg); $mail->AddReplyTo("noreply@".$_SERVER["HTTP_HOST"], "Demo sayfasında geri bildirim formu"); $mail->SetFrom("noreply@".$_SERVER["HTTP_HOST"], "Demo sayfasında geri bildirim formu"); $mail->Gönder(); echo "Teşekkür ederim!";

    Oturum yönetimini öncelikle bir kullanıcının son bir saat içinde bir form gönderimini ne sıklıkta kullandığını belirlemek ve ayrıca son gönderimden bu yana geçen süreyi belirlemek için kullanırız. Son göndermenin üzerinden 10 saniyeden az bir süre geçmişse veya kullanıcı zaten son saat içinde 10'dan fazla mesaj göndermişse bir hata mesajı görüntülenir.

    E-posta PHPMailer sınıfı kullanılarak gönderilir. Dikkat! Yalnızca PHP5 ile çalışır.

    Çoklu Yöntemler PHPMailer Giden e-postayı yapılandırmak için kullanılır. IsMail() yöntemi sınıfa dahili bir PHP işlevi kullanmasını söyler posta(). AddAddress() yöntemi, alıcının adresini ekler (bu yönteme ek çağrılarla birden fazla alıcı ekleyebilirsiniz). Mektubun konusu ve metni eklendikten sonra cevapların adresi belirtilir ve mesaj gönderilir.

    Hazır!

    Çözüm

    Site ziyaretçinizden hızlı geri bildirim almak için bu formu kullanabilirsiniz. Gönderimin önündeki çok düşük bir engel (sadece bir metin alanını doldurmanız ve bir düğmeye tıklamanız yeterlidir), sayfalarınızı ziyaret eden ziyaretçilerin fikirlerini paylaşmaya başlamaları için harika bir ortam yaratacaktır. Komut dosyası aynı zamanda iyi yapılandırılmıştır ve özelleştirilmesi kolaydır; bu, onu web sitenizde minimum çabayla kullanmanıza yardımcı olacaktır.