PHP postası nedir?
PHP postası, PHP betiklerinden e-posta göndermek için kullanılan yerleşik PHP işlevidir.
Posta işlevi aşağıdaki parametreleri kabul eder;
- E
- Konu
- İleti
- CC veya BC e-posta adresleri
- Kullanıcıları önemli olaylar hakkında bilgilendirmenin uygun maliyetli bir yoludur.
- Sağlanan içeriği e-posta ile gönderen web sitesinde bize bir iletişim formu sağlayarak kullanıcıların sizinle e-posta yoluyla iletişim kurmasına izin verin.
- Geliştiriciler, sistem hatalarını e-posta ile almak için kullanabilir
- Bülten abonelerinize e-posta göndermek için kullanabilirsiniz.
- Parolalarını unutan kullanıcılara parola sıfırlama bağlantıları göndermek için kullanabilirsiniz.
- Aktivasyon / onay bağlantılarını e-posta ile göndermek için kullanabilirsiniz. Bu, kullanıcıları kaydederken ve e-posta adreslerini doğrularken kullanışlıdır.
Bu eğitimde öğreneceksiniz-
- PHP postası neden / ne zaman kullanılmalı
- Basit Posta İletim Protokolü
- E-posta kullanıcı girişlerini temizleme
- Güvenli Posta
PHP postası neden / ne zaman kullanılmalı?
PHP kullanarak posta gönderme
PHP posta işlevi aşağıdaki temel sözdizimine sahiptir
İŞTE,
- "$ To_email_address", posta alıcısının e-posta adresidir
- "$ Konu" e-posta konusudur
- "$ Mesaj" gönderilecek mesajdır.
- "[$ Üstbilgiler]" isteğe bağlıdır, CC, BCC gibi bilgileri dahil etmek için kullanılabilir
- CC, karbon kopyasının kısaltmasıdır. İlgili kişiye bir kopya göndermek istediğinizde kullanılır, yani bir şirkete gönderilen bir şikayet e-postası da şikayet kuruluna CC olarak gönderilebilir.
- BCC, kör karbon kopyasının kısaltmasıdır. CC'ye benzer. BCC bölümünde yer alan e-posta adresleri diğer alıcılara gösterilmeyecektir.
Basit Posta İletim Protokolü (SMTP)
PHP postası, posta göndermek için Basit Posta İletim Protokolü'nü (SMTP) kullanır.
Barındırılan bir sunucuda, SMTP ayarları önceden ayarlanmış olmalıdır.
SMTP posta ayarları, PHP kurulum klasöründeki "php.ini" dosyasından yapılandırılabilir.
Localhost'unuzda SMTP ayarlarını yapılandırma Windows'ta xampp kullandığınızı varsayarak, “C: \ xampp \ php” dizinindeki “php.ini” yi bulun.
- Not defteri veya herhangi bir metin düzenleyici kullanarak açın. Bu örnekte not defteri kullanacağız. Düzenle menüsüne tıklayın
- Bul… menüsünü tıklayın
- Bul iletişim menüsü görünecektir
- Sonrakini Bul düğmesine tıklayın
- Girişleri bulun
- [posta işlevi]
- ; XAMPP: Mercury gibi bir SMTP Sunucusuyla çalışmak istiyorsanız yarı sütunu kaldırmayın
- ; SMTP = localhost
- ; smtp_port = 25
- SMTP ve smtp_port'tan önceki noktalı virgülleri kaldırın ve SMTP'yi smtp sunucunuza ve bağlantı noktasını smtp bağlantı noktanıza ayarlayın. Ayarlarınız aşağıdaki gibi görünmelidir
- SMTP = smtp.example.com
- smtp_port = 25
- SMTP ayarlarının web barındırma sağlayıcılarınızdan edinilebileceğini unutmayın.
- Sunucu kimlik doğrulama gerektiriyorsa, aşağıdaki satırları ekleyin.
- auth_username = Bu e-posta adresi istenmeyen postalardan korunuyor. Görüntülemek için JavaScript'in etkin olması gerekir.
- auth_password = örnek_parola
- Yeni değişiklikleri kaydedin.
- Apache sunucusunu yeniden başlatın.
Php Mail Örneği
Şimdi basit bir posta gönderen bir örneğe bakalım.
Çıktı:
Not: Yukarıdaki örnek yalnızca 4 zorunlu parametreyi almaktadır.
Yukarıdaki hayali e-posta adresini gerçek bir e-posta adresiyle değiştirmelisiniz.
E-posta kullanıcı girişlerini temizleme
Yukarıdaki örnek, e-posta adresi için kaynak kodunda sabit kodlanmış değerleri ve basitlik için diğer ayrıntıları kullanır.
Kullanıcılar için bir iletişim formu oluşturmanız gerektiğini varsayalım, ayrıntıları doldurup gönderin.
- Kullanıcılar yanlışlıkla veya kasıtlı olarak başlıklara kod ekleyebilir ve bu da istenmeyen posta gönderilmesine neden olabilir.
- Sisteminizi bu tür saldırılardan korumak için, posta gönderilmeden önce değerleri temizleyen ve doğrulayan özel bir işlev oluşturabilirsiniz.
Yerleşik filter_var işlevini kullanarak e-posta adresini doğrulayan ve temizleyen özel bir işlev oluşturalım.
Filter_var işlevi filter_var işlevi kullanıcı giriş verilerini temizlemek ve doğrulamak için kullanılır.
Aşağıdaki temel sözdizimine sahiptir.
İŞTE,
- "Filter_var (…)" doğrulama ve temizleme işlevidir
- "$ Alan", filtrelenecek alanın değeridir.
- “SANİTİZASYON TİPİ” sahada yapılacak sanitasyon türüdür;
- FILTER_VALIDATE_EMAIL - geçerli e-posta adresleri için doğru ve geçersiz e-posta adresleri için yanlış döndürür.
- FILTER_SANITIZE_EMAIL - e-posta adreslerinden geçersiz karakterleri kaldırır. info \ @domain. (com) döndürür Bu e-posta adresi istenmeyen postalardan korunuyor. Görüntülemek için JavaScript'in etkin olması gerekir…
- FILTER_SANITIZE_URL - geçersiz karakterleri URL'lerden kaldırır. http: //[email protected]é şunu döndürür> http: //[email protected]
- FILTER_SANITIZE_STRING - dize değerlerinden etiketleri kaldırır. kalınım kalın olur.
Aşağıdaki kod, güvenli posta göndermek için özel bir işlev kullanır.
Çıktı:
Güvenli Posta
E-postalar, istenmeyen alıcılar tarafından iletim sırasında yakalanabilir.
Bu, e-postanın içeriğini istenmeyen alıcılara maruz bırakabilir.
Güvenli posta, e-postaları Güvenli Köprü Metni Aktarım Protokolü (HTTPS) aracılığıyla ileterek bu sorunu çözer.
HTTPS, mesajları göndermeden önce şifreler.
Özet
- PHP'nin yerleşik işlevi olan mail (), PHP betiklerinden posta göndermek için kullanılır
- Veriler üzerinde doğrulama ve temizleme kontrolleri, güvenli posta göndermek için çok önemlidir
- PHP'nin yerleşik fonksiyonu filter_var (), veri temizleme ve doğrulama gerçekleştirmek için kullanımı kolay ve verimli bir yol sağlar.