php mail göndermek ?

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Kullanıcı avatarı
sherlockholmes
Kıdemli Üye
Mesajlar: 930
Kayıt: 19 Tem 2004 09:13

php mail göndermek ?

Mesaj gönderen sherlockholmes »

merhaba arkadaşlar ,

sitemin kurulu oldu sunucuda php nuke kuurulu ve , nuke herhangi bir ayar yapmadan kullanıcılara mail gönderebiliyor , aktivasyon kodunu gönderebiliyor.

nukten bağımsız olarak php kod ile mail göndermek istiyorum , kullandığım kodlar şunlar :

Kod: Tümünü seç

<html>
<head>
<title>Formmail</title>
</head>
<body bgcolor="black">

<?
//----------------------------------
// OPTIONAL PARAMETERS
//----------------------------------

// Message header such as "confirm" or "error"
$headersize="4";
$headercolor="Lime";
// Message body
$textsize="3";
$textcolor="0000ff";
$linkcolor="ffcc99";


/*****************************************************/
/* YOU DO NOT NEED TO MODIFY ANYTHING BELOW */
/***************************************************/




if( !empty($HTTP_POST_VARS))
{
// if any form submission start the process
function prompt_user($messageheader,$promptmessage)
{
global $l,$goback,$fm_error,$plsfill,$invalidaddress,$fm_confirm,$sent,$unsent,$author;
global $headersize,$headercolor,$textsize,$textcolor,$linkcolor;
include("inc/Header.php");
echo "

<center>
<B><font size=\"$headersize\" color=\"$headercolor\">
----------------------------<br>
:: ::<br>
----------------------------<br>
</font>
<br>
<font size=\"$textsize\" color=\"$textcolor\">


Mesajınız Gönderildi!..</font>
<br><br>
<a href='javascript:history.go(-2)'>
<font size='2' color='$linkcolor'>Back Main</font></a>
<B></center>";
exit;
}

// function to check the empty fields
function check_fields($fieldname,$fieldtype)
{
global $fm_error,$plsfill;
if (empty($fieldname))
{
prompt_user("$fm_error","$plsfill <br> * $fieldtype");
}
}

// function to check the email validity
function check_email($mailtocheck)
{
global $fm_error,$plsfill,$invalidaddress;
$mail_test= trim($mailtocheck);
if (!eregi("^[_\\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\\.)+[a-z]{2,3}$", $mail_test))
{
prompt_user("$fm_error","$invalidaddress :<br> $mail_test");
}
}

// check if there are required fields
if ($req)
{
$requiredfields=explode(",",$req);
for ($temp=0;$temp<count($requiredfields);$temp++)
{
$requiredfields[$temp]=trim ($requiredfields[$temp]);
if ($requiredfields[$temp]=="email")
{
check_email("${$requiredfields[$temp]}");
}
else
{
check_fields ("${$requiredfields[$temp]}","$requiredfields[$temp]");
}
}
}

/* default values for script will take place in the hidden form fields */
$def[]="subject";
$def[]="req";
$def[]="recipient";

// get the IP and the date
$ip=getenv("REMOTE_ADDR");
$date=date("d-m-Y H:i:s");

// message body
$message=$defaultmessage."\n\n";
$message.="From :".$email."\n";
$message.="Date :".$date."\n";
$message.="IP :".$ip."\n";
$message.="------------------------------------\n";
foreach($HTTP_POST_VARS as $formfield => $value)
{
$found=0;
for($i=0;$i<count($def);$i++)
{
if($formfield==$def[$i])
{
$found=1;
}
}
if(!$found==1)
{
$message.=$formfield." : ".$value."\n";
}
}
$message.="------------------------------------\n\n\n";
$message.="";
$headers ="From: $email\n";

// check the subject
if(!$subject)
{
$subject=$defaultsubject;
}

// mail the form
if(@mail($recipient,$subject,$message,$headers))
{
prompt_user("$fm_confirm","$sent");
echo"<center></center>";
}
else
{
prompt_user("$fm_error","$unsent");
echo"<center></center>";
}
}
else
{
echo"<center><font face=System color=lime> <br>
 Mesaj gonderilmedi!..<br>Fatal ERROR: 000FFFFx000DEEE</font></center>";
}

?>
</body>
</html>
---------------------------------------------------
bu sayfaya veri gönderen sayfanın yapısı :

Kod: Tümünü seç

<html>
<title>mail sayfası</title>
<body>
 <form method="post" action="formmail.php">
<table border=0>
<tr>
<td>ad: </td><td><input type="text" name=ad></td></tr>

<tr><td>soyad </td> <td><input type="text" name=soyad></td></tr>

<tr><td>Mail adresi:</td><td><input type="text" name=mail_adres></td></tr>

<input type="hidden" name="recipient" value="alicinin mail adresi">

<tr><td>konu:</td><td><input type="hidden" name="subject" value="konumuz"></td></tr>


<input type="hidden" name="req" value="gondericinin_mail_adresi">

<tr><td><input type=submit value="gonder"></td></tr>

</form>
</table>
</body>
</html>
bu kodlarla gönderdiğim mailler ulaşmıyor , işin garibi herhangi bir hata vermiyor. başarıyla gönderildi diyor.

ne önerirsiniz?
y = e^x fonksiyonu hangimizi etkilememiştir ki? Küllerinden hayat bulan Zümrüd-ü Anka kuşu gibi, türevi yine kendisidir.
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Kod: Tümünü seç

$to = "ben@ben.com";
	$subject = "deneme mail";
	$message = "deneme";
	$headers = "From: biri@biri.com\n";
	$headers .= "MIME-Version: 1.0\n";
	$headers .= "Content-type: text/html; charset=iso-8859-9\n";
	$headers .= "Reply-To: biri@biri.com\n";
	$headers .= "X-Priority: 1\n";
	$headers .= "X-MSmail-Priority: High\n";
	$headers .= "X-mailer: My mailer";
	mail ($to, $subject, $message, $headers);
ben bu şekilde hot mail haricindeki server lara gönderebiliyorum.
bi arkadaşın araştırmasına göre haotmail e gönderebilmek için
$headers = "From: biri@biri.com\n"; kısmını
$headers = "From: -fbiri@biri.com\n"; şeklinde yazmak gerekiyormuş. Yani mail adresinin başına -f koyuyoruz. Fakat henüz denemedim
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
sherlockholmes
Kıdemli Üye
Mesajlar: 930
Kayıt: 19 Tem 2004 09:13

Mesaj gönderen sherlockholmes »

@lazio , gösterdiğin ilgi için teşekkür ederim. önerdiğin kodlarla sorunsuz bir şekilde mail gönderebildim.

kolay gelsin.
y = e^x fonksiyonu hangimizi etkilememiştir ki? Küllerinden hayat bulan Zümrüd-ü Anka kuşu gibi, türevi yine kendisidir.
Cevapla