PHP, dinamik web sayfaları oluşturmak için en popüler sunucu tarafı dillerinden biridir. Özellikle form işleme konusunda güçlü ve kullanışlı özelliklere sahiptir. Bu makalede, 'PHP iletişim formu', 'PHP form işleme', 'web form kodları' ve 'basit PHP formu' anahtar kelimeleri etrafında, PHP kullanarak basit bir iletişim formu oluşturmayı ve form verilerini işlemeyi adım adım öğreneceksiniz.
İletişim formları, kullanıcıların web sitesi üzerinden sizinle iletişime geçmesini sağlamak için kritik öneme sahiptir. PHP ile bir iletişim formu oluşturmak, web geliştirme sürecinde temel bir beceridir. Bu makalede, HTML ile form oluşturacak, PHP ile form verilerini işleyecek ve güvenlik önlemleri alarak form doğrulama işlemlerini gerçekleştireceğiz.
Öncelikle, HTML kullanarak basit bir iletişim formu oluşturalım. Bu form, kullanıcıdan isim, e-posta adresi ve mesaj gibi bilgileri toplayacak.
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>İletişim Formu</title>
</head>
<body>
<h2>İletişim Formu</h2>
<form action="process_form.php" method="post">
<label for="name">İsim:</label>
<input type="text" id="name" name="name" required>
<br><br>
<label for="email">E-posta:</label>
<input type="email" id="email" name="email" required>
<br><br>
<label for="message">Mesaj:</label>
<textarea id="message" name="message" required></textarea>
<br><br>
<input type="submit" value="Gönder">
</form>
</body>
</html>
Bu HTML formu, kullanıcıdan gerekli bilgileri toplamak için çeşitli giriş alanları içerir. Form, process_form.php dosyasına veri gönderir.
Form gönderildikten sonra, PHP kullanarak bu verileri işleyebiliriz. process_form.php dosyasını oluşturalım ve form verilerini alıp işlemeye başlayalım.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = htmlspecialchars(trim($_POST['name']));
$email = htmlspecialchars(trim($_POST['email']));
$message = htmlspecialchars(trim($_POST['message']));
if (!empty($name) && !empty($email) && !empty($message)) {
$to = "your-email@example.com";
$subject = "Yeni İletişim Formu Mesajı";
$body = "İsim: $name\nE-posta: $email\nMesaj: $message";
$headers = "From: $email";
if (mail($to, $subject, $body, $headers)) {
echo "Mesajınız başarıyla gönderildi!";
} else {
echo "Mesaj gönderilirken bir hata oluştu.";
}
} else {
echo "Lütfen tüm alanları doldurun.";
}
}
?>
Bu PHP kodu, form verilerini alır ve e-posta ile gönderir. htmlspecialchars ve trim fonksiyonları, güvenlik önlemleri alarak verileri işler.
Form verilerini işlerken güvenlik en önemli önceliktir. Kullanıcıdan gelen verileri doğrulamak ve temizlemek, güvenliği sağlamak için gereklidir.
Form verilerini doğrulamak için çeşitli kontroller ekleyebiliriz:
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Geçersiz e-posta formatı.";
exit;
}
Bu kontrol, geçerli bir e-posta adresi olup olmadığını denetler.
Kullanıcı verilerini işlemek, güvenlik açıklarına karşı korunmayı gerektirir. İşte bazı önemli güvenlik önlemleri:
Şimdi, yukarıdaki adımları bir araya getirerek tam bir örnek uygulama oluşturacağız.
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>İletişim Formu</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 20px;
}
form {
max-width: 400px;
margin: auto;
}
label {
display: block;
margin-bottom: 5px;
}
input, textarea {
width: 100%;
padding: 10px;
margin-bottom: 10px;
border: 1px solid #ccc;
border-radius: 5px;
}
input[type="submit"] {
background-color: #4CAF50;
color: white;
border: none;
cursor: pointer;
}
input[type="submit"]:hover {
background-color: #45a049;
}
</style>
</head>
<body>
<h2>İletişim Formu</h2>
<form action="process_form.php" method="post">
<label for="name">İsim:</label>
<input type="text" id="name" name="name" required>
<br><br>
<label for="email">E-posta:</label>
<input type="email" id="email" name="email" required>
<br><br>
<label for="message">Mesaj:</label>
<textarea id="message" name="message" required></textarea>
<br><br>
<input type="submit" value="Gönder">
</form>
</body>
</html>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = htmlspecialchars(trim($_POST['name']));
$email = htmlspecialchars(trim($_POST['email']));
$message = htmlspecialchars(trim($_POST['message']));
if (!empty($name) && !empty($email) && !empty($message)) {
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Geçersiz e-posta formatı.";
exit;
}
$to = "your-email@example.com";
$subject = "Yeni İletişim Formu Mesajı";
$body = "İsim: $name\nE-posta: $email\nMesaj: $message";
$headers = "From: $email";
if (mail($to, $subject, $body, $headers)) {
echo "Mesajınız başarıyla gönderildi!";
} else {
echo "Mesaj gönderilirken bir hata oluştu.";
}
} else {
echo "Lütfen tüm alanları doldurun.";
}
}
?>
Bu makalede, 'PHP iletişim formu', 'PHP form işleme', 'web form kodları' ve 'basit PHP formu' anahtar kelimeleri çerçevesinde PHP kullanarak basit bir iletişim formu oluşturmayı öğrendik. HTML ile form yapısını kurduk, PHP ile form verilerini işledik ve form doğrulama ile güvenlik önlemlerini inceledik. Bu bilgilerle, kendi projelerinizi geliştirebilir ve web sitenize etkili iletişim formları ekleyebilirsiniz.
Profesyonel ve her yönü ile kontrol edilebilir gelişmiş çok özellikli ajans yazılımıdır. İşte öne çıkan özellikler.