Jump to content

php email form sending via smtp


Birdmansplace

Recommended Posts

Been trying to figure out why my code doesnt work.  It did when i first put it together but now for some reason nothing happens.  T

Any Ideas.  Have a feeling i am missing something that i cant see like normal.

 

Thanks for the help ahead of time!

 

form code:

<form method="post" action="sendemail.php">
<h3>Email Me</h3>
<!-- DO NOT change ANY of the php sections -->
Your Name:
<br>
<input type="text" name="to" size="35" />
<br><br>
Your Email:
<br>
<input type="text" name="email" size="35" />
<br> <br>
<br>
Attention:
<br>
<select name="attn" size="1">
<option value=" Sales n Billing ">Sales n Billing </option>
<option value=" Attaining Services ">Attaning Services </option>
<option value=" Questions/Quote ">Questions/Quote </option>
<option value=" Webmaster ">Webmaster </option>
</select>
<br><br>
Mail Message:
<br>
<textarea name="notes" rows="4" cols="40"></textarea>
<br>
<input type="submit" value="Send Mail" />
<br>
</form>

 

sendemail.php:

  <?php
$from = $_POST['email']; 
$namefrom = $_POST['to'];
$to = "[email protected]";
$nameto = "websitescript";
$subject = $_POST['attn'];
$message = $_POST['notes'];
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>
<?php
/* * * * * * * * * * * * * * SEND EMAIL FUNCTIONS * * * * * * * * * * * * * */

ini_set("display_errors", "1");
error_reporting(E_ALL);

function authSendEmail($from, $namefrom, $to, $nameto, $subject, $message)
{
//SMTP + SERVER DETAILS
/* * * * CONFIGURATION START * * * */
$smtpServer = "smtpserver";
$port = "25";
$timeout = "30";
$username = "smtpusername";
$password = "smtppassrd";
$localhost = "localhost";
$newLine = "\r\n";
/* * * * CONFIGURATION END * * * * */

//Connect to the host on the specified port
$smtpConnect = fsockopen($smtpServer, $port, $errno, $errstr, $timeout);
$smtpResponse = fgets($smtpConnect, 515);
if(empty($smtpConnect))
{
$output = "Failed to connect: $smtpResponse";
return $output;
}
else
{
$logArray['connection'] = "Connected: $smtpResponse";
}

//Request Auth Login
fputs($smtpConnect,"AUTH LOGIN" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authrequest'] = "$smtpResponse";

//Send username
fputs($smtpConnect, base64_encode($username) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authusername'] = "$smtpResponse";

//Send password
fputs($smtpConnect, base64_encode($password) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authpassword'] = "$smtpResponse";

//Say Hello to SMTP
fputs($smtpConnect, "HELO $localhost" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['heloresponse'] = "$smtpResponse";

//Email From
fputs($smtpConnect, "MAIL FROM: $from" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailfromresponse'] = "$smtpResponse";

//Email To
fputs($smtpConnect, "RCPT TO: $to" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailtoresponse'] = "$smtpResponse";

//The Email
fputs($smtpConnect, "DATA" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data1response'] = "$smtpResponse";

//Construct Headers
$headers = "MIME-Version: 1.0" . $newLine;
$headers .= "Content-type: text/html; charset=iso-8859-1" . $newLine;
$headers .= "To: $nameto <$to>" . $newLine;
$headers .= "From: $namefrom <$from>" . $newLine;

fputs($smtpConnect, "To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n.\n");
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data2response'] = "$smtpResponse";

// Say Bye to SMTP
fputs($smtpConnect,"QUIT" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['quitresponse'] = "$smtpResponse";
}

?>
<?php
$from = $_POST['email']; 
$namefrom = $_POST['to'];
$to = "[email protected]";
$nameto = "websitescript";
$subject = $_POST['attn'];
$message = $_POST['notes'];
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>
<div align="center">
<br />
<br />
<br />
<br />
<br />
<br />
<?
echo "Your message has been sent $namefrom";
echo "<br />";
echo "Print this page for your records if you want";
echo "<br />";
echo "Subjest: $subject";
echo "<br />";
echo "<br />";
echo "Message: $message"; 
?>

Link to comment
https://forums.phpfreaks.com/topic/192247-php-email-form-sending-via-smtp/
Share on other sites

Been trying to figure out why my code doesnt work.  It did when i first put it together but now for some reason nothing happens.  T

Any Ideas.  Have a feeling i am missing something that i cant see like normal.

 

Thanks for the help ahead of time!

 

form code:

<form method="post" action="sendemail.php">
<h3>Email Me</h3>
<!-- DO NOT change ANY of the php sections -->
Your Name:
<br>
<input type="text" name="to" size="35" />
<br><br>
Your Email:
<br>
<input type="text" name="email" size="35" />
<br> <br>
<br>
Attention:
<br>
<select name="attn" size="1">
<option value=" Sales n Billing ">Sales n Billing </option>
<option value=" Attaining Services ">Attaning Services </option>
<option value=" Questions/Quote ">Questions/Quote </option>
<option value=" Webmaster ">Webmaster </option>
</select>
<br><br>
Mail Message:
<br>
<textarea name="notes" rows="4" cols="40"></textarea>
<br>
<input type="submit" value="Send Mail" />
<br>
</form>

 

sendemail.php:

  <?php
$from = $_POST['email']; 
$namefrom = $_POST['to'];
$to = "[email protected]";
$nameto = "websitescript";
$subject = $_POST['attn'];
$message = $_POST['notes'];
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>
<?php
/* * * * * * * * * * * * * * SEND EMAIL FUNCTIONS * * * * * * * * * * * * * */

ini_set("display_errors", "1");
error_reporting(E_ALL);

function authSendEmail($from, $namefrom, $to, $nameto, $subject, $message)
{
//SMTP + SERVER DETAILS
/* * * * CONFIGURATION START * * * */
$smtpServer = "smtpserver";
$port = "25";
$timeout = "30";
$username = "smtpusername";
$password = "smtppassrd";
$localhost = "localhost";
$newLine = "\r\n";
/* * * * CONFIGURATION END * * * * */

//Connect to the host on the specified port
$smtpConnect = fsockopen($smtpServer, $port, $errno, $errstr, $timeout);
$smtpResponse = fgets($smtpConnect, 515);
if(empty($smtpConnect))
{
$output = "Failed to connect: $smtpResponse";
return $output;
}
else
{
$logArray['connection'] = "Connected: $smtpResponse";
}

//Request Auth Login
fputs($smtpConnect,"AUTH LOGIN" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authrequest'] = "$smtpResponse";

//Send username
fputs($smtpConnect, base64_encode($username) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authusername'] = "$smtpResponse";

//Send password
fputs($smtpConnect, base64_encode($password) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authpassword'] = "$smtpResponse";

//Say Hello to SMTP
fputs($smtpConnect, "HELO $localhost" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['heloresponse'] = "$smtpResponse";

//Email From
fputs($smtpConnect, "MAIL FROM: $from" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailfromresponse'] = "$smtpResponse";

//Email To
fputs($smtpConnect, "RCPT TO: $to" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailtoresponse'] = "$smtpResponse";

//The Email
fputs($smtpConnect, "DATA" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data1response'] = "$smtpResponse";

//Construct Headers
$headers = "MIME-Version: 1.0" . $newLine;
$headers .= "Content-type: text/html; charset=iso-8859-1" . $newLine;
$headers .= "To: $nameto <$to>" . $newLine;
$headers .= "From: $namefrom <$from>" . $newLine;

fputs($smtpConnect, "To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n.\n");
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data2response'] = "$smtpResponse";

// Say Bye to SMTP
fputs($smtpConnect,"QUIT" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['quitresponse'] = "$smtpResponse";
}

?>
<?php
$from = $_POST['email']; 
$namefrom = $_POST['to'];
$to = "[email protected]";
$nameto = "websitescript";
$subject = $_POST['attn'];
$message = $_POST['notes'];
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>
<div align="center">
<br />
<br />
<br />
<br />
<br />
<br />
<?
echo "Your message has been sent $namefrom";
echo "<br />";
echo "Print this page for your records if you want";
echo "<br />";
echo "Subjest: $subject";
echo "<br />";
echo "<br />";
echo "Message: $message"; 
?>

the first part of the sendmail.php code was this:

<?php
//Randy Bird

$to = "[email protected]";
$nameto = "nameto";
$from = "[email protected]";
$namefrom = "namefrom";
$subject = "emailsubject";
$message = "emailmessage";
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>

 

I made changes to this so the code would read the form info and send it:

<?php
$from = $_POST['email']; 
$namefrom = $_POST['to'];
$to = "[email protected]";
$nameto = "websitescript";
$subject = $_POST['attn'];
$message = $_POST['notes'];
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
?>

 

the way i have it set up is the form will connect to one of my domain email address's and send to another.  while doing it this way i do get the users email address along with it. 

 

So:  user enters info - - - send - - - - emailA connects and logs in - - - sends to emailB.    both emailA,B are both in my domain

 

 

 

 

hai

i dont see your code, but you can try this code. i am sure this will work quite good.. :P u require Pear to be installed in your machine for this to work..

I use debian lenny and have no clue other than the fact that i have it installed along with php-net-smtp, php-net-socket, php-mail.  And now that i have done all this testing and crap my ip as been blocked and reported as a spam ip. Been googling for hours and well i am still stuck.  I am a newb when it comes to email.  I am trying to get a contact form for my site so i dont have to display my email address.  The account i have setup has an auto reply so the user gets a reply to know it got through.  This is the last thing to do before i am done hopefully. 

 

Thanks

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.