Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

PHP

I Tried To Define These On My Seperate Forms Page And It Wrecked Everything

Notice: Undefined variable: email in C:\xampp\htdocs\WINCHER MUSIC PUBLISHING\maggiewincher.com\contact-thanks.php on line 46

Notice: Undefined variable: name in C:\xampp\htdocs\WINCHER MUSIC PUBLISHING\maggiewincher.com\contact-thanks.php on line 47

Notice: Undefined variable: body in C:\xampp\htdocs\WINCHER MUSIC PUBLISHING\maggiewincher.com\contact-thanks.php on line 49 Message body empty

Am Trying To Send A Test Email To Myself

<?php include('includes/header.php'); ?>
<?php include('includes/style.php'); ?>


<?php ($_SERVER["REQUEST_METHOD"] = "POST"); ?>

 <?php
         foreach( $_POST as $value ){
            if( stripos($value,'Content-Type:') !== FALSE ){
    echo "There Was A Problem With The Information You Entered.";
            exit;
  }
}

require("includes/phpmailer/class.phpmailer.php");
$mail = new PHPMailer(true);

   ?>

<?php


try {
  $mail = new PHPMailer(true); //New instance, with exceptions enabled


  $mail->IsSMTP();                           // tell the class to use SMTP
  $mail->SMTPAuth   = true;                  // enable SMTP authentication
  $mail->Port       = 25;                    // set the SMTP server port
  $mail->Host       = "mail.dreamhost.com"; // SMTP server
  $mail->Username   = "dreamhost.com";     // SMTP server username
  $mail->Password   = "b3GvEfR!";            // SMTP server password

  $mail->IsSendmail();  // tell the class to use Sendmail


  $to = "cemcorp@hotmail.com";

  $mail->AddAddress($to);

  $mail->Subject  = "First PHPMailer Message";

  $mail->AltBody    = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
  $mail->WordWrap   = 80; // set word wrap

 $mail->From       = "$email";
 $mail->FromName   = "$name";
  $mail->MsgHTML($body);

  $mail->IsHTML(true); // send as HTML

  $mail->Send();
  echo 'Message has been sent.';
} catch (phpmailerException $e) {
  echo $e->errorMessage();
}
?>


  <div class="section page">  

<body>

  <div class="container clearfix">


  <p id="contact-thanks.php"></p><br>


   <fieldset>
      <legend align="center"><h2>Enjoy Your Day</h2></legend>

          <h1>Thanks for completing the form! I'll be in touch shortly. </h1>
    </fieldset>
         <br> 
          <br>
          <table>
             <tr style="display: none;">
               <th>
                  <label for="address">address</label>
               </th>
               <td>
                 <input type="text" Name="address" id="address">

               </td>  
           </tr>
         </table>

          <br>     

        <a href="index.php" class="btn"><em>Home</a></em><br>
         <br>


         <br>
     <?php include('includes/copyright.php'); ?>


   </div>

This Is The Prayer Request Form

<?php include('includes/header.php'); ?>

<?php include('includes/style.php'); ?>

  <div class="section page">    

<body>

  <div class="container clearfix">
   <form method="POST" action="contact-thanks.php" name="Music Ministry Request Form">  

    <p id="Prayer Request Form.php"></p><br>


         <p>Please fill out the form below:</p>

          <p>* Denotes Required Fields</p>
    <fieldset>
      <legend align="center"><h2>Prayer Request Form</h2></legend>


          <label for="First Name *">First Name *</label><br>
          <input type="text" name="First Name *" id="First Name *"><br>
          <br>
          <label for="Last Name *">Last Name *</label><br>
          <input type="text" name="Last Name *" id="Last Name *"><br>
          <br>
          <label for="Address Line 1 *">Address Line 1 *</label><br>
          <input type="text" name="Address Line 1 *" id="Address Line 1 *"><br>
          <br>
          <label for="Address Line 2">Address Line 2</label><br>
          <input type="text" name="Address Line 2" id="Address Line 2"><br>
          <br>
          <label for="City *">City *</label><br>
          <input type="text" name="City *" id="City *"><br>
          <br>
          <label for="State *">State *</label><br>
          <input type="text" name="State *" id="State *"><br>
          <br>
          <label for="Postal Code *">Postal Code *</label><br>
          <input type="text" name="Postal Code *" id="Postal Code *"><br>
          <br>
          <select>
            <option>United States</option><br>
            <option>Afghanistan</option><br>
            <option>Albania</option><br>
            <option>Algeria</option><br>
            <option>Andorra</option><br>
            <option>Angola</option><br>
            <option>Antigua and Barbuda</option><br>
            <option>Argentina</option><br>
            <option>Aruba</option><br>
            <option>Australia</option><br>
            <option>Austria</option><br>
            <option>Azerbaijan</option><br>
            <option>Bahamas, The</option><br>
            <option>Bahrain</option><br>
            <option>Bangladesh</option><br>
            <option>Barbados</option><br>
            <option>Belarus</option><br>
            <option>Belgium</option><br>
            <option>Belize</option><br>
            <option>Benin</option><br>
            <option>Bhutan</option><br>
            <option>Bolivia</option><br>
            <option>Bosnia and Herzegovina</option><br>
            <option>Botswana</option><br>
            <option>Brazil</option><br>
            <option>Brunei </option><br>
            <option>Bulgaria</option><br>
            <option>Burkina Faso</option><br>
            <option>Burma</option><br>
            <option>Burundi</option><br>
            <option>Cambodia</option><br>
            <option>Cameroon</option><br>
            <option>Canada</option><br>
            <option>Cape Verde</option><br>
            <option>Chad</option><br>
            <option>Chile</option><br>
            <option>China</option><br>
            <option>Colombia</option><br>
            <option>Comoros</option><br>
            <option>Congo, Democratic Republic of the</option><br>
            <option>Costa Rica</option><br>
            <option>Cote d'Ivoire</option><br>
            <option>Croatia</option><br>
            <option>Cuba</option><br>
            <option>Curacao</option><br>
            <option>Cyprus</option><br>
            <option>Czech Republic</option><br>
            <option>Denmark</option><br>
            <option>Djibouti</option><br>
            <option>Dominica</option><br>
            <option>Dominican Republic</option><br>
            <option>East Timor (see Timor-Leste)</option><br>
            <option>Ecuador</option><br>
            <option>Egypt</option><br>
            <option>El Salvador</option><br>
            <option>Equatorial Guinea</option><br>
            <option>Eritrea</option><br>
            <option>Eritrea</option><br>
            <option>Estonia</option><br>
            <option>Ethiopia</option><br>
            <option>Fiji</option><br>
            <option>Finland</option><br>
            <option>France</option><br>
            <option>Gabon</option><br>
            <option>Gambia, The</option><br>
            <option>Georgia</option><br>
            <option>Germany</option><br>
            <option>Ghana</option><br>
            <option>Greece</option><br>
            <option>Grenada</option><br>
            <option>Guatemala</option><br>
            <option>Guinea</option><br>
            <option>Guinea-Bissau</option><br>
            <option>Guyana</option><br>
            <option>Haiti</option><br>
            <option>Holy See</option><br>
            <option>Honduras</option><br>
            <option>Hong Kong</option><br>
            <option>Hungary</option><br>
            <option>Iceland</option><br>
            <option>India</option><br>
            <option>Indonesia</option><br>
            <option>Iran</option><br>
            <option>Iraq</option><br>
            <option>Ireland</option><br>
            <option>Israel</option><br>
            <option>Italy</option><br>
            <option>Jamaica</option><br>
            <option>Japan</option><br>
            <option>Jordan</option><br>
            <option>Kazakhstan</option><br>
            <option>Kenya</option><br>
            <option>Kiribati</option><br>
            <option>Korea, North</option><br>
            <option>Korea, South</option><br>
            <option>Kosovo</option><br>
            <option>Kuwait</option><br>
            <option>Kyrgyzstan</option><br>
            <option>Laos</option><br>
            <option>Latvia</option><br>
            <option>Lebanon</option><br>
            <option>Lesotho</option><br>
            <option>Liberia</option><br>
            <option>Libya</option><br>
            <option>Liechtenstein</option><br>
            <option>Lithuania</option><br>
            <option>Luxembourg</option><br>
            <option>Macau</option><br>
            <option>Macedonia</option><br>
            <option>Madagascar</option><br>
            <option>Malawi</option><br>
            <option>Malaysia</option><br>
            <option>Maldives</option><br>
            <option>Mali</option><br>
            <option>Malta</option><br>
            <option>Marshall Islands</option><br>
            <option>Mauritania</option><br>
            <option>Mauritius</option><br>
            <option>Mexico</option><br>
            <option>Micronesia</option><br>
            <option>Moldova</option><br>
            <option>Monaco</option><br>
            <option>Mongolia</option><br>
            <option>Montenegro</option><br>
            <option>Morocco</option><br>
            <option>Mozambique</option><br>
            <option>Namibia</option><br>
            <option>Nauru</option><br>
            <option>Nepal</option><br>
            <option>Netherlands</option><br>
            <option>Netherlands Antilles</option><br>
            <option>New Zealand</option><br>
            <option>Nicaragua</option><br>
            <option>Niger</option><br>
            <option>Nigeria</option><br>
            <option>North Korea</option><br>
            <option>Norway</option><br>
            <option>Oman</option><br>
            <option>Pakistan</option><br>
            <option>Palau</option><br>
            <option>Palestinian Territories</option><br>
            <option>Panama</option><br>
            <option>Papua New Guinea</option><br>
            <option>Paraguay</option><br>
            <option>Peru</option><br>
            <option>Philippines</option><br>
            <option>Poland</option><br>
            <option>Portugal</option><br>
            <option>Qatar</option><br>
            <option>Romania</option><br>
            <option>Russia</option><br>
            <option>Rwanda</option><br>
            <option>Saint Kitts and Nevis</option><br>
            <option>Saint Lucia</option><br>
            <option>Saint Vincent and the Grenadines</option><br>
            <option>Samoa</option><br>
            <option>San Marino</option><br>
            <option>Sao Tome and Principe</option><br>
            <option>Saudi Arabia</option><br>
            <option>Senegal</option><br>
            <option>Serbia</option><br>
            <option>Seychelles</option><br>
            <option>Sierra Leone</option><br>
            <option>Singapore</option><br>
            <option>Sint Maarten</option><br>
            <option>Slovakia</option><br>
            <option>Slovenia</option><br>
            <option>Solomon Islands</option><br>
            <option>Somalia</option><br>
            <option>South Africa</option><br>
            <option>South Sudan</option><br>
            <option>Spain</option><br>
            <option>Sri Lanka</option><br>
            <option>Sudan</option><br>
            <option>Suriname</option><br>
            <option>Swaziland</option><br>
            <option>Sweden</option><br>
            <option>Switzerland</option><br>
            <option>Syria</option><br>
            <option>Taiwan</option><br>
            <option>Tajikistan</option><br>
            <option>Tanzania</option><br>
            <option>Thailand</option><br>
            <option>Timor-Leste</option><br>
            <option>Togo</option><br>
            <option>Trinidad and Tobago</option><br>
            <option>Tunisia</option><br>
            <option>Turkey</option><br>
            <option>Turkmenistan</option><br>
            <option>Tuvalu</option><br>
            <option>Uganda</option><br>
            <option>Ukraine</option><br>
            <option>United Arab Emirates</option><br>
            <option>United Kingdom</option><br>
            <option>Uruguay</option><br>
            <option>Uzbekistan</option><br>
            <option>Vanuatu</option><br>
            <option>Venezuela</option><br>
            <option>Vietnam</option><br>
            <option>Yemen</option><br>
            <option>Zambia</option><br>
            <option>Zimbabwe</option><br>
         </select><br>
         <br>        
          <label for="Phone *">Phone *</label><br>
          <input type="text" name="Phone *" id="Phone *"><br>
          <br>
          <label for="Fax">Fax</label><br>
          <input type="text" name="Fax" id="Fax"><br>
          <br>
          <label for="Email *">Email *</label><br>
          <input type="text" name="Email *" id="Email *"><br>
          <br>
          <label for="Your Title">Your Title</label><br>
          <input type="text" name="Your Title" id="Your Title"><br>
          <br>
          <label for="Praise Report">Prayer Request</label><br>
          <textarea name="Praise Report" rows="3" cols="30"></textarea><br>

  </fieldset>

          <br>
       <input type="submit" value="Send"><br>

          <br> 
          <br>
          <br> 

     <a href="index.php" class="btn"><em>Home</a></em><br>
         <br>
          <br>

     <?php include('includes/copyright.php'); ?>     
  </div>

5 Answers

Tong Vang
Tong Vang
9,926 Points

Check lines 46, 47, & 49. It says you have variables not defined. It seem you tried to give <p> an 'id' attribute that it can not have. It can only have "align" as attributes with <p>. That threw off all your codes from there.

Thanks Tong :-)

Tong Do You Know How To Fix This???

Tong Vang
Tong Vang
9,926 Points
<?php 

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = trim($_POST["name"]);
    $email = trim($_POST["email"]);
    $message = trim($_POST["message"]);

    if ($name == "" OR $email == "" OR $message == "") {
        $error_message = "You must specify a value for name, email address, and message.";
    }

    if (!isset($error_message)) {
        foreach( $_POST as $value ){
            if( stripos($value,'Content-Type:') !== FALSE ){
                $error_message = "There was a problem with the information you entered.";
            }
        }
    }

    if (!isset($error_message) && $_POST["address"] != "") {
        $error_message = "Your form submission has an error.";
    }

    require_once(ROOT_PATH . "inc/phpmailer/class.phpmailer.php");
    $mail = new PHPMailer();

    if (!isset($error_message) && !$mail->ValidateAddress($email)){
        $error_message = "You must specify a valid email address.";
    }

    if (!isset($error_message)) {
        $email_body = "";
        $email_body = $email_body . "Name: " . $name . "<br>";
        $email_body = $email_body . "Email: " . $email . "<br>";
        $email_body = $email_body . "Message: " . $message;

        $mail->SetFrom($email, $name);
        $address = "orders@shirts4mike.com";
        $mail->AddAddress($address, "Shirts 4 Mike");
        $mail->Subject    = "Shirts 4 Mike Contact Form Submission | " . $name;
        $mail->MsgHTML($email_body); 

        if($mail->Send()) {
            header("Location: " . BASE_URL . "contact/?status=thanks");
            exit;
        } else {
          $error_message = "There was a problem sending the email: " . $mail->ErrorInfo;
        }
 =,
    }
}

This is what I have for a project. This goes before the body of the page. Make sure your variables matches and replace anything about Shirst4Mike with your info. In the require_once line use your location for the phpMailer. Give it a try

Tong Vang
Tong Vang
9,926 Points

Ignore the "=," at the end. Its a typo.