Please help with code for SMTP authenticated PHP email form
Posted: Sun Oct 25, 2009 11:45 pm
Hello, I'm creating a PHP email form, and for this particular server, I have to use SMTP Authentication. They hosting service sent me this link: http://email.about.com/od/emailprogramm ... cation.htm
Anyway, I have the form created, and I created the PHP file called mail.php. I finally got it to where it does send me an email, but the message is completely blank. My form has four fields, which are: name, email, telephone, and message, so these should each be emailed to me when the form is filled out.
Thank you in advance if anyone can look this over.
Here is my PHP code:
And here is my HTML form:
Anyway, I have the form created, and I created the PHP file called mail.php. I finally got it to where it does send me an email, but the message is completely blank. My form has four fields, which are: name, email, telephone, and message, so these should each be emailed to me when the form is filled out.
Thank you in advance if anyone can look this over.
Here is my PHP code:
Code: Select all
<?php
require_once "Mail.php";
$from = "Jane Doe <jane.doe@gmail.com>";
$to = "JD <jim.doe@gmail.com>";
$subject = "Request to contact me";
$name = "name:\n";
$email = "email:\n";
$phone = "phone:\n";
$message = "message:\n";
$host = "smtp.gmail.com";
$username = "jane.doe";
$password = "blackcat35";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
print "<meta http-equiv=\"refresh\" content=\"0;URL=received.htm\">";
}
?>
Code: Select all
<form method="POST" action="mail.php">
<p>Fields marked (*) are required</p>
<p><strong>Name:* </strong><br>
<input name="name" type="text" size="40" maxlength="50" id="name" />
<p><strong>Email:* </strong><br>
<input name="email" type="text" size="40" id="email">
<p><strong>Telephone:</strong><br>
<input name="message" type="text" size="40" maxlength="30" id="message" />
<p><strong>Message:* </strong><br>
<textarea name="message" cols="40" id="message"></textarea>
<p><input type="submit" name="submit" value="Submit">
<input type="reset" name="Clear" id="Clear" value="Reset" />
</form>