PHP form doğrulama işlemleri, kullanıcıların girdikleri verilerin istenen formatta olup olmadığını kontrol etmek için kullanılır. Bu doğrulama işlemleri genellikle sunucu tarafında yapılır, çünkü kullanıcı tarafındaki doğrulamalara güvenmek güvenlik açısından riskli olabilir. İşte PHP ile form doğrulama örnekleri:
Örnek 1: Basit Bir Form Doğrulama
<?php // Formdan gelen veriyi al $name = $_POST['name']; $email = $_POST['email']; // Veri doğrulama if(empty($name) || empty($email)) { echo "Lütfen tüm alanları doldurun"; } else { // Verileri kullan echo "Hoş geldiniz, $name! E-posta adresiniz: $email"; } ?>
Örnek 2: E-posta Adresi Doğrulama
<?php // Formdan gelen e-posta adresini al $email = $_POST['email']; // E-posta adresi doğrulama if(!filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "Geçersiz e-posta adresi"; } else { // E-posta adresini kullan echo "E-posta adresiniz: $email"; } ?>
Örnek 3: Şifre Uyum Doğrulama
<?php // Formdan gelen şifreleri al $password1 = $_POST['password1']; $password2 = $_POST['password2']; // Şifre uyum doğrulama if($password1 != $password2) { echo "Şifreler uyuşmuyor"; } else { // Şifreyi kullan echo "Şifreniz: $password1"; } ?>
Örnek 4: Kullanıcı Kayıt Formu Doğrulama
<?php // Formdan gelen verileri al $name = $_POST['name']; $email = $_POST['email']; $password1 = $_POST['password1']; $password2 = $_POST['password2']; // Boş alan kontrolü if(empty($name) || empty($email) || empty($password1) || empty($password2)) { echo "Lütfen tüm alanları doldurun"; } else { // E-posta adresi doğrulama if(!filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "Geçersiz e-posta adresi"; } else { // Şifre uyum doğrulama if($password1 != $password2) { echo "Şifreler uyuşmuyor"; } else { // Şifreyi hashleme $hashedPassword = password_hash($password1, PASSWORD_DEFAULT); // Veritabanına kaydetme (örnek olarak burada bir veritabanı // işlemi simüle ediliyor) // Bu adımda gerçek bir veritabanı kullanılmalıdır. // Örneğin: $query = "INSERT INTO users (name, email, password) // VALUES ('$name', '$email', '$hashedPassword')"; // Kayıt başarılı mesajı echo "Kayıt başarılı! Hoş geldiniz, $name!"; } } } ?>
Bu örnekte, kullanıcıdan alınan veriler önce boş olup olmadığı kontrol ediliyor. Ardından e-posta adresi geçerliliği kontrol ediliyor ve şifrelerin uyumlu olup olmadığı kontrol ediliyor. Şifre, password_hash
fonksiyonu kullanılarak hashlenir ve daha sonra veritabanına kaydedilir (bu adım gerçek bir veritabanı kullanılmadan önce güvenlik önlemleri eklenmelidir). Tüm doğrulamalar geçildiyse, kullanıcıya başarı mesajı gösterilir.
Bu örnekte, gerçek bir veritabanı bağlantısı ve uygun güvenlik önlemleri eklenmemiştir. Gerçek bir uygulama geliştirirken, kullanıcıdan gelen verilere güvenlik odaklı önlemler eklenmeli ve veritabanı işlemleri güvenli bir şekilde yapılmalıdır.
Bunlar sadece basit örneklerdir. Gerçek projelerde daha kapsamlı doğrulama ve güvenlik önlemleri almak önemlidir. Örneğin, SQL enjeksiyonlarına karşı koruma, form verilerini temizleme, gerektiğinde veritabanı üzerinden doğrulama gibi ek önlemler alınmalıdır.