gpt4 book ai didi

php - 自定义 PHP 和表达式引擎

转载 作者:行者123 更新时间:2023-12-02 07:15:03 25 4
gpt4 key购买 nike

我已经创建了一个复杂的 php 联系表单,我希望在我的联系页面中实现它,但出于某种原因表达式引擎无法识别 php 代码,即使我已经在我的首选项中启用了它。

这是表单的样子,我尝试了一些方法,例如嵌入文件而不是将实际代码粘贴到页面上 - 但还没有任何效果。

    <?php
if($_POST && $_POST['submit'])
{
// Put form posts into varibles
$name = $_POST['name'];
$mainphone = $_POST['mainphone'];
$email = $_POST['email'];
$altphone = $_POST['altphone'];
$contacttime = $_POST['contacttime'];
$airport = $_POST['airport'];
$departdate = $_POST['departdate'];
$departdateflex = $_POST['departdateflex'];
$duration = $_POST['duration'];
$prefcountry = $_POST['prefcountry'];
$prefresort = $_POST['prefresort'];
$hotels = $_POST['hotels'];
$numadults = $_POST['numadults'];
$numunder12 = $_POST['numunder12'];
$numunder2 = $_POST['numunder2'];
$roomarrange = $_POST['roomarrange'];
$maxbudget = $_POST['maxbudget'];
$addreq = $_POST['addreq'];

// Set Errors To None
$errors = false;

// Validate Form
if(!$mainphone)
{
$errors = true;
$errMsgs .= "<li>Please enter your phone number</li>";
}

if(!$email)
{
$errors = true;
$errMsgs .= "<li>Please enter your email address</li>";
}

if(!$airport)
{
$errors = true;
$errMsgs .= "<li>Please select the airport in which you would like to depart from</li>";
}

if(!$departdate)
{
$errors = true;
$errMsgs .= "<li>Please enter the date you would like to depart</li>";
}

if(!$duration)
{
$errors = true;
$errMsgs .= "<li>Please enter the duration of your stay</li>";
}

if(!$prefcountry)
{
$errors = true;
$errMsgs .= "<li>Please enter the preferred country you wish to visit</li>";
}

if(!$numadults)
{
$errors = true;
$errMsgs .= "<li>Please enter the number of adults travelling</li>";
}
// Check For Errors
if($errors)
{
// Errors Found
$foundErrors = $errMsgs;
}
else
{
// No Errors Found || Process the form

// Create Email
$emailMsg = "<html><body>";
$emailMsg .= "<p>";
$emailMsg .= "<strong>Name:</strong> $name <br />";
$emailMsg .= "<strong>Main Phone:</strong> $mainphone <br />";
$emailMsg .= "<strong>Email:</strong> $email <br />";
$emailMsg .= "<strong>Alternate Phone:</strong> $altphone <br />";
$emailMsg .= "<strong>Contact Time:</strong> $contacttime <br />";
$emailMsg .= "<strong>Airport's:</strong> <br />";
foreach($airport as $v)
{
$emailMsg .= '- '.$v."<br />";
}
$emailMsg .= "<strong>Depart Date:</strong> $departdate <br />";
$emailMsg .= "<strong>Departure Flexible By:</strong> $departdateflex <br />";
$emailMsg .= "<strong>Duration:</strong> $duration <br />";
$emailMsg .= "<strong>Preferred Country:</strong> $prefcountry <br />";
$emailMsg .= "<strong>Preferred Resort:</strong> $prefresort <br />";
$emailMsg .= "<strong>No. Adults:</strong> $numadults <br />";
$emailMsg .= "<strong>No. Under 12's:</strong> $numunder12 <br />";
$emailMsg .= "<strong>No. Under 2's:</strong> $numunder2 <br />";
$emailMsg .= "<strong>Room Arrangements:</strong> $roomarrange <br />";
$emailMsg .= "<strong>Max Budget:</strong> $maxbudget <br />";
$emailMsg .= "<strong>Additional Requirements:</strong> $addreq <br /></p>";
$emailMsg .= "</body></html>";

$Name = "$name"; //senders name
$email = "$email"; //senders e-mail adress
$recipient = "email@email.com"; //recipient
$mail_body = "$emailMsg"; //mail body
$subject = "Web enquiry form"; //subject
$header = "From: ". $Name . " <" . $email . ">\r\n" . "Content-type: text/html; charset=iso-8859-1"; //optional headerfields

ini_set('sendmail_from', 'email@email.com'); //Suggested by "Some Guy"

mail($recipient, $subject, $mail_body, $header); //mail command :)
}
}
?>

<div class="errors">
<h2>Sorry but your enquiry could not be sent</h2>
<p>There were problems with the following fields:</p>

<ul>
<?php echo $foundErrors; ?>
</ul>
</div>
<form name="form" method="post" action="">
<legend>x</legend>
<fieldset>
<label for="name">
Name:
<input type="text" name="name" value="<?= $name; ?>">
</label>

<label for="mainphone">
Main Contact Phone Number:<span class="required">*</span>
<input type="text" name="mainphone" value="<?= $mainphone; ?>">
</label>

<label for="email">
Email Address:<span class="required">*</span>
<input type="text" name="email" value="<?= $email; ?>">
</label>

<label for="altphone">
Alternative Contact Phone Number:
<input type="text" name="altphone" value="<?= $altphone; ?>">
</label>
</fieldset>
<fieldset>
<label for="contacttime">Preferred Contact Time:</label>

<label for="contacttime">
<input type="radio" name="contacttime" <?php if($contacttime == '10am-12pm') { echo 'checked'; } ?> value="10am-12pm"/>
10am - 12pm
</label>

<label for="contacttime">
<input type="radio" name="contacttime" <?php if($contacttime == '12pm-2pm') { echo 'checked'; } ?> value="12pm-2pm"/>
12pm - 2pm
</label>

<label for="contacttime">
<input type="radio" name="contacttime" <?php if($contacttime == '2pm-4pm') { echo 'checked'; } ?> value="2pm-4pm"/>
2pm - 4pm
</label>

<label for="contacttime">
<input type="radio" name="contacttime" <?php if($contacttime == '4pm-6pm') { echo 'checked'; } ?> value="4pm-6pm"/>
4pm - 6pm
</label>

<label for="contacttime">
<input type="radio" name="contacttime" <?php if($contacttime == '6pm-7pm') { echo 'checked'; } ?> value="6pm-7pm"/>
6pm - 7pm
</label>
</fieldset>
<fieldset>
<label for="airport">Preferred Departure Airport:</label>

<label for="airport">
<input type="checkbox" name="airport[0]" <?php if($airport[0]) { echo 'checked'; } ?> value="Heathrow"/>
Heathrow
</label>

<label for="airport">
<input type="checkbox" name="airport[1]" <?php if($airport[1]) { echo 'checked'; } ?> value="Gatwick"/>
Gatwick
</label>

<label for="airport">
<input type="checkbox" name="airport[2]" <?php if($airport[2]) { echo 'checked'; } ?> value="Manchester"/>
Manchester
</label>

<label for="airport">
<input type="checkbox" name="airport[3]" <?php if($airport[3]) { echo 'checked'; } ?> value="Birmingham"/>
Birmingham
</label>

<label for="airport">
<input type="checkbox" name="airport[4]" <?php if($airport[4]) { echo 'checked'; } ?> value="Glasgow"/>
Glasgow
</label>
</fieldset>
<fieldset>
<label for="departdate">
Departure Date: <span class="required">*</span>
<input type="text" name="departdate" value="<?= $departdate; ?>">
</label>

<label for="departdateflex">Departure Date Flexibility:</label>
<select name="departdateflex">
<option <?php if($departdateflex == '+/- 0 days') { echo 'selected'; } ?> value="+/- 0 days">+/- 0 days</option>
<option <?php if($departdateflex == '+/- 1 days') { echo 'selected'; } ?> value="+/- 1 days">+/- 1 days</option>
<option <?php if($departdateflex == '+/- 2 days') { echo 'selected'; } ?> value="+/- 2 days">+/- 2 days</option>
<option <?php if($departdateflex == '+/- 3 days') { echo 'selected'; } ?> value="+/- 3 days">+/- 3 days</option>
<option <?php if($departdateflex == '+/- 4 days') { echo 'selected'; } ?> value="+/- 4 days">+/- 4 days</option>
<option <?php if($departdateflex == '+/- 5 days') { echo 'selected'; } ?> value="+/- 5 days">+/- 5 days</option>
<option <?php if($departdateflex == '+/- 6 days') { echo 'selected'; } ?> value="+/- 6 days">+/- 6 days</option>
<option <?php if($departdateflex == '+/- 7 days') { echo 'selected'; } ?> value="+/- 7 days">+/- 7 days</option>
</select>

<label for="duration">Duration:</label>
<select name="duration">
<option <?php if($duration == '1 night') { echo 'selected'; } ?> value="1 night">1 night</option>
<option <?php if($duration == '2 nights') { echo 'selected'; } ?> value="2 nights">2 nights</option>
<option <?php if($duration == '3 nights') { echo 'selected'; } ?> value="3 nights">3 nights</option>
<option <?php if($duration == '4 nights') { echo 'selected'; } ?> value="4 nights">4 nights</option>
<option <?php if($duration == '5 nights') { echo 'selected'; } ?> value="5 nights">5 nights</option>
<option <?php if($duration == '6 nights') { echo 'selected'; } ?> value="6 nights">6 nights</option>
<option <?php if($duration == '7 nights') { echo 'selected'; } ?> value="7 nights">7 nights</option>
<option <?php if($duration == '8 nights') { echo 'selected'; } ?> value="8 nights">8 nights</option>
<option <?php if($duration == '9 nights') { echo 'selected'; } ?> value="9 nights">9 nights</option>
<option <?php if($duration == '10 nights') { echo 'selected'; } ?> value="10 nights">10 nights</option>
<option <?php if($duration == '11 nights') { echo 'selected'; } ?> value="11 nights">11 nights</option>
<option <?php if($duration == '12 nights') { echo 'selected'; } ?> value="12 nights">12 nights</option>
<option <?php if($duration == '13 nights') { echo 'selected'; } ?> value="13 nights">13 nights</option>
<option <?php if($duration == '14 nights') { echo 'selected'; } ?> value="14 nights">14 nights</option>
<option <?php if($duration == '15 nights') { echo 'selected'; } ?> value="15 nights">15 nights</option>
<option <?php if($duration == '15+ nights') { echo 'selected'; } ?> value="15+ nights">15+ nights</option>
<option <?php if($duration == '21 nights') { echo 'selected'; } ?> value="21 nights">21 nights</option>
<option <?php if($duration == '28 nights') { echo 'selected'; } ?> value="28 nights">28 nights</option>
</select>

<label for="prefcountry">
Preferred Destination Country:<span class="required">*</span>
<input type="text" name="prefcountry" value="<?= $prefcountry; ?>">
</label>

<label for="prefresort">
Preferred Destination Resort:
<input type="text" name="prefresort" value="<?= $prefresort; ?>">
</label>

<label for="hotels">
Name of hotel(s) of interest:
<textarea rows="5" cols="20" name="hotels"><?= $hotels; ?></textarea>
</label>

<label for="numadults">
Number of adults:<span class="required">*</span>
<input type="text" name="numadults" value="<?= $numadults; ?>">
</label>

<label for="numunder12">
Number of Children under 12:
<input type="text" name="numunder12" value="<?= $numunder12; ?>">
</label>

<label for="numunder2">
Number of Infants under 2:
<input type="text" name="numunder2" value="<?= $numunder2; ?>">
</label>

<label for="roomarrange">Room Arrangements:</label>
<select name="roomarrange">
<option <?php if($roomarrange == 'single (sleeps 1)') { echo 'selected'; } ?> value="single (sleeps 1)">single (sleeps 1)</option>
<option <?php if($roomarrange == 'twin (sleeps 2)') { echo 'selected'; } ?> value="twin (sleeps 2)">twin (sleeps 2)</option>
<option <?php if($roomarrange == 'double (sleeps 2)') { echo 'selected'; } ?> value="double (sleeps 2)">double (sleeps 2)</option>
<option <?php if($roomarrange == 'twin plus child (above 2 years)') { echo 'selected'; } ?> value="twin plus child (above 2 years)">twin plus child (above 2 years)</option>
<option <?php if($roomarrange == 'double plus child (above 2 years)') { echo 'selected'; } ?> value="double plus child (above 2 years)">double plus child (above 2 years)</option>
<option <?php if($roomarrange == 'family plan 2 adults &amp; 2 children') { echo 'selected'; } ?> value="family plan 2 adults &amp; 2 children">family plan 2 adults & 2 children</option>
<option <?php if($roomarrange == 'family plan 2 adults &amp; 3 children') { echo 'selected'; } ?> value="family plan 2 adults &amp; 3 children">family plan 2 adults & 3 children</option>
<option <?php if($roomarrange == 'triple (sleeps 3)') { echo 'selected'; } ?> value="triple (sleeps 3)">triple (sleeps 3)</option>
<option <?php if($roomarrange == 'triple plus child (above 2 years)') { echo 'selected'; } ?> value="triple plus child (above 2 years)">triple plus child (above 2 years)</option>
<option <?php if($roomarrange == 'quad/villas/homes (sleeps 4+)') { echo 'selected'; } ?> value="quad/villas/homes (sleeps 4+)">quad/villas/homes (sleeps 4+)</option>
</select>

<label for="maxbudget">
Maximum Budget per person &pound;:
<input type="text" name="maxbudget" value="<?= $maxbudget; ?>">
</label>

<label for="addreq">
Additional Requirements:
<textarea rows="5" cols="20" name="addreq"><?= $addreq; ?></textarea>
</label>
</fieldset>
<fieldset>
<input type="submit" value="submit" name="submit">
</fieldset>
</form>

如果有人可以提供帮助,我们将不胜感激 - 谢谢。

最佳答案

首先,我认为您最好使用 ExpressionEngine 的预建表单模块之一。有几个可用的,例如 FreeForm 和 ProForm,它们将处理您的电子邮件发送以及验证和错误消息。

如果您确实想使用 PHP 路由,您可能会发现使用 ExpressionEngine/CodeIgniter 输入库会更好,它会预处理 $_POST 数组。你所有的 key 都可以通过 $this->EE->input->post('key_name');

访问

关于php - 自定义 PHP 和表达式引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1719099/

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