Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: smtpmail() blad serwera :(
Forum PHP.pl > Forum > PHP
swamp
siemka sad.gif
Moz ektos mi powiedziec czymu skrypt wysylania maila oparty na smtpmail() wywoluje mi blond na serwerze smtp(w tym przypadku wp):
Ran into problems sending Mail. Response: 421 DNS temporary failure at return MX check, try again later (#4.3.0)
a oto skrypt:

[php:1:c9ebaab7e6]<?php
$smtp_host="smtp.wp.pl";
$smtp_username="";
$smtp_password="";
$email="";
function smtpmail($mail_to, $subject, $message)
{
global $smtp_host, $smtp_username, $smtp_password, $email;
$message = preg_replace("/(?<!r)n/si", "rn", $message);
if($mail_to == "")
{
echo "<B>Blad: </B> Nie podales adresu odbiorcy!<BR>n";
return 0;
}
if(trim($subject) == "")
{
echo "<B>Blad: </B> Nie podales tematu wiadomosci!<BR>n";
return 0;
}
if(trim($message) == "")
{
echo "<B>Blad: </B> Wiadomosc jest pusta!<BR>n";
return 0;
}
$mail_to_array = explode("%", $mail_to);
if( !$socket = fsockopen($smtp_host, 25, $errno, $errstr, 20) )
{
echo "Nie moge sie polaczyc z serwerem SMTP! : $errno : $errstr<BR>n";
}
server_parse($socket, "220");
if( !empty($smtp_username) && !empty($smtp_password) )
{
fputs($socket, "EHLO " . $smtp_host . "rn");
server_parse($socket, "250");
fputs($socket, "AUTH LOGINrn");
server_parse($socket, "334");
fputs($socket, base64_encode($smtp_username) . "rn");
server_parse($socket, "334");
fputs($socket, base64_encode($smtp_password) . "rn");
server_parse($socket, "235");
}
else
{
fputs($socket, "HELO " . $smtp_host . "rn");
server_parse($socket, "250");
}
fputs($socket, "MAIL FROM: <" . $email . ">rn");
server_parse($socket, "250");
$to_header = "To: ";
@reset( $mail_to_array );
while( list( , $mail_to_address ) = each( $mail_to_array ))
{
$mail_to_address = trim($mail_to_address);
if ( preg_match('/[^ ]+@[^ ]+/', $mail_to_address) )
{
fputs( $socket, "RCPT TO: <$mail_to_address>rn" );
server_parse( $socket, "250" );
}
$to_header .= ( ( $mail_to_address != '' ) ? ', ' : '' ) . "<$mail_to_address>";
}
fputs($socket, "DATArn");
server_parse($socket, "354");
fputs($socket, "Subject: $subjectrn");
fputs($socket, "$to_headerrn");
fputs($socket, "$headersrnrn");
fputs($socket, "$messagern");
fputs($socket, ".rn");
server_parse($socket, "250");
fputs($socket, "QUITrn");
fclose($socket);
return TRUE;
}
function server_parse($socket, $response)
{
while ( substr($server_response,3,1) != ' ' )
{
if( !( $server_response = fgets($socket, 256) ) )
{
die("Couldn't get mail server response codes");
}
}
if( !( substr($server_response, 0, 3) == $response ) )
{
die("Ran into problems sending Mail. Response: $server_response");
}
}
$adresmail = "swamp@pf.pl";
$cel = "test";
$tematkontakt = "test";
$email = "ee@r.pl";
$temat = "test";
$_POST['temat']=stripslashes($temat);
$_POST['tresc']=stripslashes("n Data : " . date("m-d H:i") . "n Cel : " . $cel . "n Temat : " . $tematkontakt . "n Email : " . $email);
smtpmail($adresmail, $_POST['temat'], $_POST['tresc']);
?>

[/php:1:c9ebaab7e6]
kszychu
spróbuj zamiast smtp.wp.pl użyć adresu ip.
swamp
yh to nie to..
mam prawie identyczny skrypt z tym ze nie wysyla on ``sam`` maila tylko trzeba wprowadzic recznie temat i tresc i kliknac submit - i on dzila ten skrypt na górze ejst przeróbka jego by mail na dnaych adres sie same wysylaly(potrzbne to do skypta rejetracji urzytkowników-a dokladnie do wysylania aktywacji konta na email) to jest ten dzilajacy skrypt:

[php:1:6529a9b6a2]<?php
$smtp_host="smtp.wp.pl";
$smtp_username="";
$smtp_password="";
$email="";
function smtpmail($mail_to, $subject, $message)
{
global $smtp_host, $smtp_username, $smtp_password, $email;

$message = preg_replace("/(?<!r)n/si", "rn", $message);
if($mail_to == "")
{
echo "<B>Blad: </B> Nie podales adresu odbiorcy!<BR>n";
return 0;
}
if(trim($subject) == "")
{
echo "<B>Blad: </B> Nie podales tematu wiadomosci!<BR>n";
return 0;
}
if(trim($message) == "")
{
echo "<B>Blad: </B> Wiadomosc jest pusta!<BR>n";
return 0;
}
$mail_to_array = explode("%", $mail_to);

if( !$socket = fsockopen($smtp_host, 25, $errno, $errstr, 20) )
{
echo "Nie moge sie polaczyc z serwerem SMTP! : $errno : $errstr<BR>n";
}
server_parse($socket, "220");

if( !empty($smtp_username) && !empty($smtp_password) )
{
fputs($socket, "EHLO " . $smtp_host . "rn");
server_parse($socket, "250");
fputs($socket, "AUTH LOGINrn");
server_parse($socket, "334");
fputs($socket, base64_encode($smtp_username) . "rn");
server_parse($socket, "334");
fputs($socket, base64_encode($smtp_password) . "rn");
server_parse($socket, "235");
}
else
{
fputs($socket, "HELO " . $smtp_host . "rn");
server_parse($socket, "250");
}

fputs($socket, "MAIL FROM: <" . $email . ">rn");
server_parse($socket, "250");

$to_header = "To: ";
@reset( $mail_to_array );
while( list( , $mail_to_address ) = each( $mail_to_array ))
{
$mail_to_address = trim($mail_to_address);
if ( preg_match('/[^ ]+@[^ ]+/', $mail_to_address) )
{
fputs( $socket, "RCPT TO: <$mail_to_address>rn" );
server_parse( $socket, "250" );
}
$to_header .= ( ( $mail_to_address != '' ) ? ', ' : '' ) . "<$mail_to_address>";
}
fputs($socket, "DATArn");
server_parse($socket, "354");
fputs($socket, "Subject: $subjectrn");
fputs($socket, "$to_headerrn");
fputs($socket, "$headersrnrn");
fputs($socket, "$messagern");
fputs($socket, ".rn");
server_parse($socket, "250");
fputs($socket, "QUITrn");
fclose($socket);

return TRUE;
}
function server_parse($socket, $response)
{
while ( substr($server_response,3,1) != ' ' )
{
if( !( $server_response = fgets($socket, 256) ) )
{
die("Couldn't get mail server response codes");
}
}

if( !( substr($server_response, 0, 3) == $response ) )
{
die("Ran into problems sending Mail. Response: $server_response");
}
}
?>
<?php
if(empty($_POST)){
?>

<FORM METHOD="post">

<select name="cel" id="cel">
<option value="Wsp&oacute;lpraca w tworzeniu stronki" selected> Wsp&oacute lpraca w tworzeniu serwisu</option>
<option value="Sponsoring"><font color="#CCCCCC">Sponsoring </option>
<option value="Uwagi"><font color="#CCCCCC">Uwagi </font></option>
<option value="Inny cel"><font color="#CCCCCC">Inny cel </font></option>
</select>
<input name="tematkontakt" type="TEXT">
<input name="email" type="TEXT">
<textarea name="tresc"></textarea>
<input name="SUBMIT" type="SUBMIT" value="Wyslij">
<input name="temat" type="hidden" value="Serwis stronki">
<?php
}
else{
$adminmail = "swamp@pf.pl";

$_POST['temat']=stripslashes($_POST['temat']);
$_POST['tresc']=stripslashes("n Data : " . date("m-d H:i") . "n Cel : " . $_POST['cel'] . "n Temat : " . $_POST['tematkontakt'] . "n Email : " . $_POST['email'] . "n Tresc : " . $_POST['tresc']);
if(smtpmail($adminmail, $_POST['temat'], $_POST['tresc'])){
echo "Wiadomosc zostala wyslana!";
}
else{
echo "Wiadomosc nie zostala wyslana!";
}
}
?>
[/php:1:6529a9b6a2]
No i akurat ten skrypt wysyla mail a ten pierwszy co podalem nie sad.gif

questionmark.gifquestionmark.gif? :cry:
swamp
hyhyhyh ju po klopocie pokombinowalem troszke winksmiley.jpg

mialem bład w tym skrypcie;)
pozdroowa:)smile.gif =; =; =;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.