Php – Mesajlaşma (email) scripti

Bu programımızda kayıtlı olan epostara bir e posta adresinden en fazla 5 kez posta yollanmasını ve  giden adreslere en fazla 5 kez e posta gitmesini sağlayan programı yazıyoruz.

İlk olarak veri tabanımızda eposta diye bir dba oluşturuyoruz ve içerisinde ip,kisi,eposta tablolarını oluşturuyoruz. İp tablosunda id,ip,gidis, eposta tablosunda id,email ve gidis, kisi tablosunda id,username,eposta,gidis alanlarını oluşturuyoruz.

Proje dosyalarını indir:Proje Dosyaları

user_insert.php ile kullanıcı ekliyoruz

insert_webmail.php ile veri tabanına e posta adresi kaydediyoruz

mysql.php ile veri tabanı bağlantılarını sağlıyoruz

send_email.php ile e posta yolluyoruz.


send_email.php kod açıklamaları: İlk olarak Ip veri tabanımızda varmı yokmu bakıyoruz. Yoksa ekliyoruz ve yeniden sayfaya yönlendirme yapıyoruz. Yeniden yönlendiginde ıp veri tabanımızda olduğundan, Veri tabanımıza insert_webmail ile eklemiş oldugumuz ve gidis i 5 den ufak ve eşit olanları listeliyoruz. Ardından e posta yollama ekranı geliyor. İçerik bölümünü doldurduktan sonra veri tabanımızda bulunan ve gidis i 5 den küçük ve 5 e eşit olan kişilere eposta gidiyor. E posta gittikten hemen sonra gidisi bir arttırıp update yapıyoruz while dngüsünden çıktıktan sonra seçilen eposta adresinin gidis ini bir arttırıyoruz ve ardında n yeniden sen_email.php sayfamıza yönlendiriyoruz.

send_email.php::

</p>
<p class="MsoNormal">< ?php
require_once("mysql.php");
function SayfaYonlendir($url="send_email.php",$sure=0){
echo "<meta content='$sure; URL=$url' http-equiv='refresh'>";
}

$ip=$_SERVER['REMOTE_ADDR'];
$qq="select * from ip where ip='".$ip."' and gidis< =5 ";
$res=$dba->query($qq);
while($row5=$dba->fetch_assoc($res)){
$ipsend=$row5['gidis'];
$_SESSION['ipsend']=$ipsend;
}

if (empty($_POST['gonder'])){
$ip=$_SERVER['REMOTE_ADDR'];

$q1="select * from ip where ip='".$ip."' ";
$result1=$dba->query($q1);
//$num_result=$result->num_rows;
$num_res=$dba->num_rows($result1);
if (0< $num_res){

$ip=$_SERVER&#91;'REMOTE_ADDR'&#93;;

$queryip="select * from ip where ip='$ip' LIMIT 1 ";
$resultip=$dba->query($queryip);

while($rowip=$dba->fetch_assoc($resultip)){
$ipgidis=$rowip['gidis'];

if ($ipgidis>5){
echo "IP ADRESINDEN 5 DEN FAZLA E-POSTA YOLLADINIZ";
exit;
}

}

// ÝP VERÝ TABANINDA KAYITLI
?>
<form action="send_email.php" method="post">
<table align="center">
<tr>
<td>Eposta</td>
<td>:</td>
<td><select name="gposta" id="select">
< ?php
$q="select * from eposta where gidis<=5 ";
$result=$dba->query($q);

while($row=$dba->fetch_assoc($result)){
$eposta=$row['email'];
$id=$row['id'];
$epostadangidis=$row['gidis'];

echo $eposta;
echo "<option value='$id'>$eposta</option>";
}

?>
</select>
</td>
</tr>
<tr>
<td>Ýçerik</td>
<td>:</td>
<td><textarea name="icerik"></textarea></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="gonder" value="Gönder" /></td>
</tr>

</table>
</form>
< ?php
}else{

$q2="insert into ip (ip,gidis) values ('".$ip."',0) ";
$result2=$dba->query($q2);
SayfaYonlendir();

}

}else if (isset($_POST['gonder'])){
if (!empty($_POST['icerik'])){
$eposta=$_POST['gposta'];

$q3="select * from     kisi where gidis< =5 ";
$result3=$dba->query($q3);
while($row=$dba->fetch_assoc($result3)){
$icerik=$_POST['icerik'];
$eposta; // seçmiþ oldugumuz eposta adresi
$kadresi=$row['eposta'];
$baslik_bilgileri =" From:$eposta;"; // başlıkla yollanan bölüm
$kid=$row['id'];
$gidis=$row['gidis'];
$gidis=$gidis+1;

mail ("$kadresi","Bilgilendirme Servisi",'$icerik',"$baslik_bilgileri");
$q4="UPDATE kisi set gidis='$gidis' where id='".$kid."' "; // kişilerin gidis degerini 1 arttırıyoruz.
$result4=$dba->query($q4);
}

$eposta; // seçilen epostanIn ID si
$q6="select * from eposta where id='$eposta' ";
$result7=$dba->query($q6);

while($row3=$dba->fetch_assoc($result7)){
$epostagidis=$row3['gidis'];
}

$epostagidis=$epostagidis+1;  // seçilen eposta adresinin  gidis degerini 1 arttırdık.
$q5="UPDATE eposta set gidis='$epostagidis' where id='".$eposta."' ";
$result5=$dba->query($q5);

$ip=$_SERVER['REMOTE_ADDR'];

</p><p class="MsoNormal">
$ipgidis=$_SESSION['ipsend'];
$ipgidis=$ipgidis+1;
$q5="UPDATE ip set gidis='$ipgidis' where ip='".$ip."' ";
$result5=$dba->query($q5);

SayfaYonlendir();

}else if(empty($_POST['icerik'])){
echo "Giden bir veri yok. Kontrol ediniz...";
}else {

}

}
?>

2 thoughts on “Php – Mesajlaşma (email) scripti

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir