Bu yazıda PHP 4 ve 5'te mail gönderme ile ilgili bilgi verilecektir.
Öncelikle mail gönderme işleminde yer alan komutları ve değişkenleri kısaca açıklamaya çalışalım.
PHP kodlar <?php ile başlar ?> ile biter.
if
Türkçede "eğer" anlamına gelen bir ifadedir.
If, birçok dilde olduğu gibi PHP'de de en önemli özelliklerden birisidir. Kod kümelerinin şartlı olarak çalışmasını sağlar.
Örnek;
<?php
if ($a > $b)echo "a büyüktür b den";
?>
Eğer ($a > $b) ise göster "a büyüktür b den"
else
Türkçede "ya da" anlamına gelen bir ifadedir. İngilizcede "otherwise" kelimesine karşılık olarak PHP'de kullanılmaktadır. Belirli bir koşul karşılanmazsa, diğer komutun devreye konulmasını sağlayan ifadedir.
<?php
if ($a > $b) { echo "a büyüktür b den"; else { echo "a büyük değildir b den"; }
?>
Eğer ($a > $b) ise { göster "a büyüktür b den"; ya da { göster "a büyük DEĞİLDİR b den"; }
echo
Türkçede "yankı" anlamına gelir. Belirli bir koşul sağlandığında istenilen ifade echo ile gösterilir. Bir bakıma "ise göster" anlamını katar.
isset
Bir parametrenin ya da değişkenin hazır olup olmadığını denetler. "If" ile birlikte kullanılır.
Örnek;
if (isset($_REQUEST['email']))
"email" değeri çağırıldığında
Örnek;
$a değişkeni çalıştırılırsa
Şimdi gelelim mail gönderme işlemine…
PHP ile mail gönderme işlemini aşağıda tanımlanan değerlerin dizilimi sağlar:
mail ( $to, $subject, $message, $headers )
Şimdi bu dizilimde yer alan değişkenleri kısaca açıklayalım. Aşağıda verilen açıklamalar php kodları anlamanızda kısmen yardımcı olacaktır.
mail
Email gönderme işlemini sağlayan komuttur.
$to
Mail alacak kişidir. Yani form ile gönderilen iletinin ulaştırılacağı email adresi bu alana girilir. Bu alana birden fazla alıcı mail adresi girilebilir. Ancak şekil olarak aşağıdaki şartlara uymak zorundadır. Birden fazla adres girilebilir.
- kullanici@ornekadres.com
- kullanici@ornekadres.com, digerkullanici@ornekadres.com
Örnek;
mail( "admin@ingilizceforum.net, admin2@ingilizceforum.net", "Konu: $subject",
$message, "From: $email" );
Yukarıda $to değişkenine karşılık olarak iki farklı email adresi belirtilmiştir.
$subject
Email konusunu belirten değerdir.
$message
Gönderilecek iletiyi belirten değerdir.
$headers
İlave edilmesi düşünülen değişkenler buraya girilebilir. Örneğin "From: $email" dizisi girilerek email gönderen kişinin adresi mailde gösterilir.
echo
Biraz önce echo için Türkçede "göster", "yankıla", "ise göster", "ise uygula" anlamını karşılar demiştik. Mail komutu işleme konulduğunda ziyaretçinin karşısına çıkacak ifade buraya girilir.
Örnek;
echo "Email gönderme işlemi tamamlanmıştır!";
Doğrudan PHP dosyası kullanılarak email formu oluşturmak için aşağıdaki kodları kullanabiliriz. Şuana kadar yapılan açıklamalar sayesinde aşağıdaki kodları kısmen kavrayacağınızı umuyorum.
<?php
if (isset($_REQUEST['email']))
{
//email gönder:
$email = $_REQUEST['email'] ;
$subject = $_REQUEST['konu'] ;
$message = $_REQUEST['ileti'] ;
mail( "admin@ingilizceforum.net, firefox@ingilizceforum.net",
"Konu: $subject", $message, "From: $email" );
echo "Email gönderme işlemi tamamlanmıştır!";
}
else
//email formu işleme konulmadan önce
{
echo "<form method='post' action='mail.php'><p></p>
Email: <input name='email' type='text' /><p></p>
Konu: <input name='konu' type='text' /><p></p>
Mesaj:<p></p><textarea name='ileti' rows='10' cols='50'></textarea><p></p>
<input type='submit' /><p></p>
</form>";
}
?>
Bu dosyayı sunucuya mail.php olarak kaydederseniz sayfayı ilk açtığınızda karşınıza mail formu çıkacaktır. İlgili alanları doldurup "gönder" butonuna tıkladığınızda belirtilen adreslere ileti gönderilecektir. Mail gönderildiğinde karşınıza;
echo "Email gönderme işlemi tamamlanmıştır!";
"Email gönderme işlemi tamamlanmıştır!" yazısı çıkar...
İlgili mail.php ile bağlantılı çalışacak bir html dosyasının içerisine şu kodu eklemeniz yeterli olacaktır. Yalnız html sayfa, php sayfa ile aynı dizinde bulunmalıdır. Farklı bir dizinde bulunuyorsa form method kısmında yer alan action='mail.php' satırındaki adres güncellenmelidir.
<form method='post' action='mail.php'><p></p>
Email: <input name='email' type='text' /><p></p>
Konu: <input name='konu' type='text' /><p></p>
Mesaj:<p></p><textarea name='ileti' rows='10' cols='50'></textarea><p></p>
<input type='submit' /><p></p>
</form>
Kaynak: ilyascanbay.com
Bu yazıyı kaynak göstermek şartıyla yayınlayabilirsiniz.