O'Reilly Forums: Chapter 4 Final Code For Page 203 - O'Reilly Forums

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Chapter 4 Final Code For Page 203

#1 User is offline   josephdamiani78 

  • New Member
  • Pip
  • Group: Members
  • Posts: 1
  • Joined: 04-December 12

Posted 04 December 2012 - 12:57 PM

I've gone through a lot of threads based on this coding issue. I am still at a loss for the solution. Here is the code I've come up with and the error it has generated. Notice: Undefined variable: subject in C:\wamp\www\examples\ch04\final\makemeelvis\sendemail.php on line 68 Call Stack #TimeMemoryFunctionLocation 10.0019255392{main}( )..\sendemail.php:0 "/>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Make Me Elvis - Send Email</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<img src="blankface.jpg" width="161" height="350" alt="" style="float:right" />
<img name="elvislogo" src="elvislogo.gif" width="229" height="32" border="0" alt="Make Me Elvis" />
<p><strong>Private:</strong> For Elmer's use ONLY<br />
Write and send an email to mailing list members.</p>

<?php
if (isset($_POST['submit'])) {
$from = 'phplocalhost101@gmail.com';
$subject = $_POST['subject'];
$text = $_POST['elvismail'];
$output_form = false;

if (empty($subject) && empty($text)) {
// We know both $subject AND $text are blank
echo 'You forgot the email subject and body text.<br />';
$output_form = true;
}

if (empty($subject) && (!empty($text))) {
echo 'You forgot the email subject.<br />';
$output_form = true;
}

if ((!empty($subject)) && empty($text)) {
echo 'You forgot the email body text.<br />';
$output_form = true;
}
}
else {
$output_form = true;
}

if ((!empty($subject)) && (!empty($text))) {
$dbc = mysqli_connect('localhost', 'root', '', 'elvis_store')
or die('Error connecting to MySQL server.');

$query = "SELECT * FROM email_list";
$result = mysqli_query($dbc, $query)
or die('Error querying database.');

while ($row = mysqli_fetch_array($result)){
$to = $row['email'];
$first_name = $row['first_name'];
$last_name = $row['last_name'];
$msg = "Dear $first_name $last_name,\n$text";
mail($to, $subject, $msg, 'From:' . $from);
echo 'Email sent to: ' . $to . '<br />';
}

mysqli_close($dbc);
}

if ($output_form) {
?>

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="subject">Subject of email:</label><br />
<input id="subject" name="subject" type="text" size="30"
value="<?php echo $subject; ?>"/><br />
<label for="elvismail">Body of email:</label><br />
<textarea id="elvismail" name="elvismail" rows="8" cols="40">
<?php echo $text; ?></textarea><br />
<input type="submit" name="submit" value="Submit" />
</form>

<?php
}
?>

</body>
</html>
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users