Действительно базовая помощь с php контактной формой - PullRequest
0 голосов
/ 26 июля 2010

Я чувствую, что, должно быть, я упускаю что-то простое здесь ... Ничто не отправляет, и при этом я не получаю сообщение об успехе.

    <?php
if(isset($_POST['submit'])) {
$to = "michael@yahoo.com";
$subject = "Feedback Form";
$name_field = $_POST['name'];
$email_field = $_POST['email'];
$message = $_POST['message'];

$body = "From: $name_field\n E-Mail: $email_field\n Message:\n $message";

mail($to, $subject, $body);

$emailSent = true;
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>Feedback Form</title>

    <link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
  <div id="wrapper">

    <h1>Feedback Form</h1>

    <?php if($emailSent == true) { //If email is sent ?>
    <p><strong>Feedback Successfully Sent!</strong></p>
    <?php } else  {?>
    <h3>Please submit your feedback</h3>
    <?php } ?>  

    <form id="contactForm" action="index.php" method="post">

        <label for="name">Name:</label>
        <input type="text" name="name" id="name" class="required" minlength="2"/>
        <br/>
        <label for="email">Email:</label>
        <input type="text" name="email" id="email" class="required email"/>
        <br/>
        <label for="occupation">Occupation:</label>
        <select name="occupation" id="occupation" class="required">
            <option value="librarian">Librarian</option>
            <option value="student">Student</option>
            <option value="other">Other</option>
        </select>
        <br/>
        <label for="message">Message:</label>
        <textarea id="message" class="required" minlength="5"></textarea>
        <br/>
        <input class="submit" type="submit" value="Send" />


    </form>


  </div><!--end wrapper-->  

    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    <script type="text/javascript">
        google.load("jquery", "1.4.2");
    </script>
    <script type="text/javascript" src="/js/jquery.validate.pack.js"></script>
    <script type="text/javascript" src="scripts.js"></script>
</body>
</html>

Ответы [ 2 ]

1 голос
/ 26 июля 2010
<input class="submit" type="submit" value="Send" />

Добавьте name="submit" к этому для установки $_POST['submit'].

edit: $_POST['message'] также может не существовать, так как его атрибут имени не установлен.

0 голосов
/ 26 июля 2010

Попробуйте с if (isset($_POST['name'])) в первой строке.$_POST['submit'] не установлено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...