所以我有这个小的 php 脚本,它在表单完成后将信息发送到我的电子邮件。我能够使其与一个输入一起工作,但是,当尝试指定 3 个不同的输入时,它不会通过。
我怀疑可能我没有在 if 语句的开头使用 isset 指定输入。我对 php 很陌生,很感激我能得到的所有帮助,无论如何这里是代码。
<?php
if (isset($_POST['name' && 'emailq' && 'message'])){
$visitor_name = $_POST['name'];
$visitor_email = $_POST['emailq'];
$visitor_message = $_POST['message'];
$email_from = "LightDesigns";
$email_subject = "new quot";
$email_body = "Name: " .$visitor_name."\nEmail: " .$visitor_email."\n\n"
.$visitor_message;
$to = "[email protected]";
$headers = "From: $email_from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
$result = mail($to,$email_subject,$email_body,$headers);
}
?>
<?php
$link_address = 'www.light-designsonline.co.uk';
if ($result){
echo '<link href="css/phpcss.css" rel="stylesheet">';
echo "<header></header>";
echo '<h1>Thank You!</h1>';
echo "<p>I'll get in contact with you shortly.</p>";
}else{
echo '<link href="css/phpcss.css" rel="stylesheet">';
echo "<header></header>";
?>
}
<?php
}
?>
<form action="quotform.php" method="POST" class="quote" name="quot">
<div>
<h1>Get a quot</h1>
<hr align="left" style="width: 82%;">
<label>Name</label><br>
<input type="text" placeholder="Name" class="form" autocomplete required name="name">
</div>
<div>
<label>Email</label><br>
<input type="email" placeholder="Email Address" class="form" autocomplete required name="emailq">
</div>
<div>
<label>Message</label><br>
<textarea placeholder="Message" name="message"></textarea>
</div>
<button class="button_1" type="submit" class="form"><span>Send</span></button>
</form>
这是错的
if (isset($_POST['name' && 'emailq' && 'message'])){
这意味着将“name”、“emailq”和“message”值进行 AND 运算,这将是逻辑 TRUE 并检查 $_POST 数组是否具有键为 TRUE 的值
你需要的是
if (isset($_POST['name']) && isset($_POST['emailq']) && isset($_POST['message'])){
或者你可以使用
if (isset($_POST['name'], $_POST['emailq'],$_POST['message'])){
正如马格努斯·埃里克森(Magnus Eriksson)所提到的
每个都必须是一个单独的逻辑表达式,然后将它们 AND 在一起
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句