php“语法错误,意外$ end”

时间:2013-07-21 19:56:10

标签: php syntax

这是我在这里的第一个问题,我是一个PHP初学者,并且一直在盯着这段代码试图找到错误而我却无法得到它。

电子邮件联系表格:

<div id="newsletter">
        <h1>Contact Us</h1>
        <form method="post" action="global.footer.php">
            <p><input id="one" name="name" placeholder="name"></p>
            <p><input id="two" name="email" placeholder="email"></p>
            <p><textarea id="three" name="message" placeholder="type message here..."></textarea></p>
            <p><input id="submit" type="submit" name="submit" value="Submit"></p>
        </form> 
    </div>  

脚本:

<?php
    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];
    $from = 'From: TangledDemo'; 
    $to = 'danajwright@gmail.com'; 
    $subject = 'Hello';

    $body = "From: $name\n E-Mail: $email\n Message:\n $message";
?>

<?php
if ($_POST['submit']) {
    if ($name != '' && $email != '') {
        if (mail ($to, $subject, $body, $from)) { 
            echo '<p>Your message has been sent!</p>';
            } else { 
                echo '<p>Something went wrong, please try again.</p>'; 
            }
        } else {
            echo '<p>You need to fill in all required fields!!</p>';
        }

?>

任何帮助将不胜感激!

4 个答案:

答案 0 :(得分:5)

您获得了开场}

的结束if($_POST['submit']) {

答案 1 :(得分:1)

你的第一个如果不关闭:

<?php
if ($_POST['submit']) {
    if ($name != '' && $email != '') {
        if (mail ($to, $subject, $body, $from)) { 
            echo '<p>Your message has been sent!</p>';
            } else { 
                echo '<p>Something went wrong, please try again.</p>'; 
            }
        } else {
            echo '<p>You need to fill in all required fields!!</p>';
        }
}
?>

答案 2 :(得分:0)

你忘记关闭你的PHP结束了。

<div id="newsletter">
        <h1>Contact Us</h1>
        <form method="post" action="global.footer.php">
            <p><input id="one" name="name" placeholder="name"></p>
            <p><input id="two" name="email" placeholder="email"></p>
            <p><textarea id="three" name="message" placeholder="type message here..."></textarea></p>
            <p><input id="submit" type="submit" name="submit" value="Submit"></p>
        </form> 
    </div>  
    <?php
    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];
    $from = 'From: TangledDemo'; 
    $to = 'danajwright@gmail.com'; 
    $subject = 'Hello';

    $body = "From: $name\n E-Mail: $email\n Message:\n $message";
?>

<?php
if ($_POST['submit']) {
    if ($name != '' && $email != '') {
        if (mail ($to, $subject, $body, $from)) { 
            echo '<p>Your message has been sent!</p>';
            } else { 
                echo '<p>Something went wrong, please try again.</p>'; 
            }
        } else {
            echo '<p>You need to fill in all required fields!!</p>';
        }
        /* You forgot to close the : the below was missing good luck*/
        }

?>

答案 3 :(得分:0)

您必须使用匹配的大括号关闭if子句:

if ($_POST['submit']) {
   if ($name != '' && $email != '') {
      if (mail ($to, $subject, $body, $from)) { 
         echo '<p>Your message has been sent!</p>';
      }
      else { 
         echo '<p>Something went wrong, please try again.</p>'; 
      }
   }
   else {
      echo '<p>You need to fill in all required fields!!</p>';
   }
}
^ this brace must be added