Mail Funcation / SMTP / Advice - Banned IP

the mail() function

Moderators: macek, egami, gesf

bushidowarrior
New php-forum User
New php-forum User
Posts: 2
Joined: Fri Jan 13, 2012 8:35 am

Mail Funcation / SMTP / Advice - Banned IP

Postby bushidowarrior » Fri Jan 13, 2012 8:44 am

Hello All,

What a great forum this is.

So I have been using the mail funcation on my Contact Form however recently I have not been reciveing the emails. I was a little confused. So I checked and checked. I check the CATCH ALL Default account and I found an error message, which was:

Code: Select all

SMTP error from remote mail server after RCPT TO:<abc@abc.com>:
host mx1.abc.com [198.xx.xx.xxx]: 550 5.7.1 Recipient not authorized, your IP has been found on a block list


So my hosting companies IP is banned, great :oops:

After speaking to a few people, they said use SMTP. It is much more guranteed. Now I am not a hardcore coder but willing to learn!!!!!

Code: Select all

<?php

if(!$_POST) exit;

// Verifico email.
function isEmail($email) {
   return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i",$email));      
}

if (!defined("PHP_EOL")) define("PHP_EOL", "\r\n");

$name     = $_POST['name'];
$email    = $_POST['email'];
$subject  = $_POST['subject'];
$comments = $_POST['comments'];
$verify   = $_POST['verify'];

if(trim($name) == '') {
   echo '<div class="error_message">Attention! You must enter your name.</div>';
   exit();
} else if(trim($email) == '') {
   echo '<div class="error_message">Attention! Please enter a valid email address.</div>';
   exit();

} else if(!isEmail($email)) {
   echo '<div class="error_message">Attention! You have enter an invalid e-mail address, try again.</div>';
   exit();
}

if(trim($subject) == '') {
   echo '<div class="error_message">Attention! Please enter a subject.</div>';
   exit();
} else if(trim($comments) == '') {
   echo '<div class="error_message">Attention! Please enter your message.</div>';
   exit();
} else if(!isset($verify) || trim($verify) == '') {
   echo '<div class="error_message">Attention! Please enter the verification number.</div>';
   exit();
} else if(trim($verify) != '4') {
   echo '<div class="error_message">Attention! The verification number you entered is incorrect.</div>';
   exit(); 
}

if(get_magic_quotes_gpc()) {
   $comments = stripslashes($comments);
}


// Configuracion.


$address .= 'abc@xyz.com';
$e_subject = 'You\'ve been contacted by ' . $name . '.';

// Campos del form ampliables.
      
$e_body = "You have been contacted from xyz contact form by $name with regards to $subject, their additional message is as follows." . PHP_EOL . PHP_EOL;
$e_content = "\"$comments\"" . PHP_EOL . PHP_EOL;
$e_reply = "You can contact $name via email, $email";
      
$msg = wordwrap( $e_body . $e_content . $e_reply, 70 );

$headers = "From: $email" . PHP_EOL;
$headers .= "Reply-To: $email" . PHP_EOL;
$headers .= "MIME-Version: 1.0" . PHP_EOL;
$headers .= "Content-type: text/plain; charset=utf-8" . PHP_EOL;
$headers .= "Content-Transfer-Encoding: quoted-printable" . PHP_EOL;

if(mail($address, $e_subject, $msg, $headers)) {

   // Mensaje envio OK
   
   echo "<fieldset>";         
   echo "<div id='success_page'>";
   echo "<h1>Email Sent Successfully.</h1>";
   echo "<p>Thank you <strong>$name</strong>, your message has been submitted to x and x .</p>";
   echo "</div>";
   echo "</fieldset>";
      
} else {

   echo 'ERROR!';

}
?>


So I have to add the SMTP here or user mailer.

I am not sure where to start but I would like some guidence PLEASE.

I think it has something to do with this part!

Code: Select all

if(mail($address, $e_subject, $msg, $headers)) {

   // Mensaje envio OK
   
   echo "<fieldset>";         
   echo "<div id='success_page'>";
   echo "<h1>Email Sent Successfully.</h1>";
   echo "<p>Thank you <strong>$name</strong>, your message has been submitted to x and x .</p>";
   echo "</div>";
   echo "</fieldset>";
      
} else {

   echo 'ERROR!';


But if truth be told. I am really guessing,

I do not want to use the mail fuction again becuase I do not want this error to happen again in the future.

Thank you ever so much!!!

User avatar
egami
php-forum GURU
php-forum GURU
Posts: 2196
Joined: Wed Oct 06, 2010 11:19 am
Location: Happy Valley, UT

Re: Mail Funcation / SMTP / Advice - Banned IP

Postby egami » Fri Jan 13, 2012 11:23 am

If your IP has been blacklisted, SMTP from the same machine won't help much. But you can use SMTP from another machine if you'd like but you have to have a few extra things installed, primarily the PERL::mail addon.

a quick google search will get you the packages and the howto. If your PHP installation is hosted and they block any kind of local install (local meaning to your virtual host) then you're screwed. Otherwise, contact your system admin and have them try to get the IP address removed from the blacklists.

bushidowarrior
New php-forum User
New php-forum User
Posts: 2
Joined: Fri Jan 13, 2012 8:35 am

Re: Mail Funcation / SMTP / Advice - Banned IP

Postby bushidowarrior » Sat Jan 21, 2012 2:09 am

Ok, but can anyone help me with the code please.

Thank you

User avatar
bigjoe11a
New php-forum User
New php-forum User
Posts: 137
Joined: Wed Aug 31, 2011 3:55 am
Location: USA
Contact:

Re: Mail Funcation / SMTP / Advice - Banned IP

Postby bigjoe11a » Sun Jan 29, 2012 7:11 pm

Well if you were using phpmailer I could help. That's easy to use and I know it works. Like he said in the post before. If your IP Address has been blocked. Then I don't know how your going to send messages unless you use another SMTP server. I would contact the SMTP server your trying to connect too and find out why your IP Address is on the blacklist and find out how to get it removed from the list.

2) If your running it from your localhost. There's lots of free POP3 and SMTP servers that you can download and install and use them to send messages.


Return to “PHP coding => Mail”

Who is online

Users browsing this forum: No registered users and 1 guest