当我最初编写这个脚本时,站点设计不需要在 die() 函数之后执行 html。现在确实如此。我意识到我可以将 HTML 代码的结尾复制到每个 die() 语句中,但它包含一个 php 包含文件 (footer.inc.php),然后会被忽略。(这是我目前要使用的解决方法,因此页面看起来不错,但不包含页脚。)
我尝试将第一个序列中的 die() 函数切换为 if() 和 elseif() 函数,但随后它同时显示 die() 消息和指示电子邮件函数成功的电子邮件代码之后的消息。
我确信有一种方法可以让脚本只执行其中一个语句而不使用 die(),但我无法弄清楚。任何提示将非常感谢!
<!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" >
<head>
<meta name="google-site-verification" content="0QW3jKsbHBGLvnLgLIoSHRuxjHBUI_MMQ0wn9J-4eo4" />
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
<link href="../stylesheet.css" rel="stylesheet" type="text/css" />
<link rel="icon" href="../images/favicon.ico" type="image/jpg" />
<title>Center Court - Schedule a racquet pick-up</title>
</head>
<body>
<div id="container">
<div id="liquid-round">
<div class="top"><span></span></div>
<div class="center-content">
<div id="header">
<?php include("../header2.inc.php"); ?>
</div>
<div id="nav">
<?php include("../nav.inc.php"); ?>
</div>
<div id="phpscreen">
<?php
//retrieve details from POST submission
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$address = $_POST['address'];
$city = $_POST['city'];
$retrieval = $_POST['retrieval'];
$needed = $_POST['needed'];
$string = $_POST['string'];
$outofstock = $_POST['outofstock'];
$tension = $_POST['tension'];
$scale = $_POST['scale'];
$extras= $_POST['extras'];
$notes = $_POST['notes'];
//validate sumbitted data
if (empty($name)){
die('<p class="center">Please provide your name.</p> <form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>');
}
if (empty($email)){
die('<p class="center">Please provide your email.</p> <form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>');
}
if (empty($phone)){
die('<p class="center">Please provide your phone number.</p> <form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>');
}
if (empty($address)){
die('<p class="center">Please provide your address.</p> <form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>');
}
if (empty($city)){
die('<p class="center">Please provide your city.</p> <form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>');
}
if (empty($needed)){
die('<p class="center">Please provide the date and time you need your racquet.</p> <form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>');
}
//formulate email message
$to = 'centercourtstringing@yahoo.com';
$from = 'centercourtstringing.com';
$subject = 'Contact from centercourtstringing.com';
$body = "
Name: $name\r\n
Email: $email\r\n
Phone number: $phone\r\n
Address: $address\r\n
City: $city\r\n
Retrieval method: $retrieval\r\n
Needed by: $needed\r\n
String type: $string\r\n
Similar or upgrade OK: $outofstock\r\n
Tension: $tension\r\n
Unsure scale: $scale\r\n
Extras: $extras\r\n
Special requests or notes: $notes\r\n";
if(mail($to, $subject, $body, "From $from")){
echo '<p>Your pick-up has been requested. You should receive confirmation shortly via e-mail or phone. If you do not hear from us by the end of the day, please call Center Court Tennis Shop at 203-966-2543.</p><p class="center"><a href="http://centercourtstringing.com">Return to home page</a></p>';
}else{
die('<p>Sorry, there was a mail delivery error. please call Center Court Tennis Shop at 203-966-2543 to schedule your pick-up.</p><p class="center"><a href="http://centercourtstringing.com">Return to home page</a></p>');
}
?>
</div>
<div id="footer">
<?php include("../footer.inc.php"); ?>
</div> <!--end footer-->
</div><!--end center content-->
<div class="bottom"><span></span></div>
</div><!--end liquid-round-->
</div><!--end container-->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-18191457-2']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script></body> </html>