gpt4 book ai didi

php - 我怎样才能消除这个脚本中对 die() 的使用,以便底部的 HTML 仍然运行?

转载 作者:行者123 更新时间:2023-11-28 00:24:50 24 4
gpt4 key购买 nike

当我最初编写此脚本时,站点设计不需要在 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>

最佳答案

您可以构建一个$error 变量并在尝试发送电子邮件之前检查它。类似的东西:

$error = '';
//validate sumbitted data
if (empty($name)){
$error .= '<p class="center">Please provide your name.</p>';
}

if (empty($email)){
$error .= '<p class="center">Please provide your email.</p>';
}

// etc...

if (empty($error)) {
//formulate email message
$to = 'centercourtstringing@yahoo.com';
$from = 'centercourtstringing.com';
$subject = 'Contact from centercourtstringing.com';

// etc...

if (mail($to, $subject, $body, "From $from")) {
echo '<p>Your pick-up has been requested...</p>';
} else {
die('<p>Sorry, there was a mail delivery error...');
}
} else {
echo $error;
echo '<form><p class="center"><input type="button" value="Go back" onClick="history.go(-1);return true;"> </p></form>';
}

// Rest of HTML

关于php - 我怎样才能消除这个脚本中对 die() 的使用,以便底部的 HTML 仍然运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6590154/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com