-4

我刚刚更新的网站有一个带有 php 邮件脚本的联系表,我基于这里的表单脚本。

该脚本保存在我的网络服务器上,但是当提交数据时,由于第 10 行出现故障,因此没有发送任何邮件。

老实说,我的理解不足以确定我的错误 - 有人可以帮助新手吗?

我通过使用 Bravenet 找到了一个临时替代品,但我想使用我的无品牌版本,如果简单的 php 脚本像看起来一样简单……</p>

我的脚本(kontakt.php)如下所示:

 <?php
/* Set e-mail recipient */
$myemail  = "edw@rdturner.co.uk";

/* Check all form inputs using check_input function */
$name = check_input($_POST['name'], "Ihr Name");
$email  = check_input($_POST['email'], "Ihre E-Mail-Adresse");
$kontaktnummer    = check_input($_POST['kontaktnummer']);
$thema   = check_input($_POST['them']);
$message = check_input($_POST['message']), "Worum geht's?");

/* If e-mail is not valid show error message */
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email))
{
    show_error("E-mail-Adresse ungültig");
}



/* Let's prepare the message for the e-mail */
$message = "Hallo!

Ihr Form ist unterwegs…:

Name: $name
E-Mail-Adresse: $email
Kontaktnummer: $kontaktnummer
Frage zum Thema? $thema

Nachricht: $message


Comments:
$comments

End of message
";

/* Send the message using mail() function */
mail($myemail, $subject, $message);

/* Redirect visitor to the thank you page */
header('Location: danke.htm');
exit();

/* Functions we used */
function check_input($data, $problem='')
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    if ($problem && strlen($data) == 0)
    {
        show_error($problem);
    }
    return $data;
}

function show_error($myError)
{
?>
    <html>
    <body>

    <b>Hier stimmt was nicht - bitte prüfen!</b><br />
    <?php echo $myError; ?>

    </body>
    </html>
<?php
exit();
}
?>

我的提交表格是这样的:

    <form method="post" enctype="multipart/form-data" action="http://pub14.bravenet.com/emailfwd/senddata.php" accept-charset="utf-8">
<input type="hidden" name="usernum" value="1126560145">
<input type="hidden" name="cpv" value="2">
          <ol><li>
            <label for="name">Name (Erförderlich)</label>
            <input id="name" name="name" class="text" />
          </li><li>
            <label for="email">E-Mail-Adresse (Erförderlich)</label>
            <input id="email" name="email" class="text" />
          </li><li>
<label for="kontaktnummer">Kontaktnummer (Erförderlich)</label>
            <input id="kontaktnummer" name="kontaktnummer" class="text" />
          </li><li>
            <label for="thema">Fragen zum Thema (Erförderlich)</label></br>
            <input type="checkbox" name="thema" value="unterricht" /> Unterricht</br>
<input type="checkbox" name="thema" value="übersetzungen" /> Übersetzungen</br>
<input type="checkbox" name="thema" value="dolmetschen" /> Dolmetschen</br>
<input type="checkbox" name="thema" value="faß" /> Englsich vom Faß</br>
<input type="checkbox" name="thema" value="anders" /> Andere
          </li><li>
            <label for="message">Worum geht's? (Erförderlich)</label>
            <textarea id="message" name="message" rows="8" cols="50"></textarea>
          </li><li>
            <input type="image" name="imageField" id="imageField" src="images/submit.gif" class="send" />
            <div class="clr"></div>
          </li></ol>
          </form>

当然,我需要调整 html 以反映新工作的脚本……但是如何?

提前致谢

埃德·特纳

4

3 回答 3

1
$message = check_input($_POST['message']), "Worum geht's?");

$message = check_input($_POST['message'], "Worum geht's?");

有一个 ) 在错误的地方。

于 2013-04-01T09:29:22.857 回答
0
$message = check_input($_POST['message']), "Worum geht's?");

过分),试试$message = check_input($_POST['message'], "Worum geht's?");'

于 2013-04-01T09:29:25.163 回答
0

查看额外的')'。错误在这一行。

改变

$message = check_input($_POST['message']), "Worum geht's?");

$message = check_input($_POST['message'], "Worum geht's?");
于 2013-04-01T09:30:56.520 回答