【问题标题】:Undefined index 'submit' when sending email through php通过php发送电子邮件时未定义的索引“提交”
【发布时间】:2015-02-12 06:59:21
【问题描述】:

我已经创建了一个“联系我”表单,我正在尝试向特定的电子邮件地址发送电子邮件。但是,我不擅长服务器端编程,并且遇到了一个未定义的索引/变量错误,我似乎无法解决。请指出错误。

错误:

注意:未定义索引:在第 4 行的 C:\xampp\htdocs\unnamed\upload.php 中提交

HTML 代码

<form action="upload.php" method="post" style="height:100%">

            <input name="articleTitle" value="Title" maxlength="50" 
            id="articleTitle">

            <textarea name="article-body">
                Compose your article...
            </textarea>

        <script>
            CKEDITOR.inline( 'article-body' );
        </script>

    <br>
            <input name="senderName" type="text" value="Name" maxlength="50" 
            id="name" class="textBox">

            <input name="senderEmail" value="Email address" maxlength="50" 
            id="email" class="textBox">

            <input name="abtyou" value="About Yourself" maxlength="150" 
            id="abtyou" class="textBox">

            <input type="submit" name="submit" class="button">

</form>

PHP 代码

    <?php

if($_POST["submit"]) {
    $recipient="zain.farid@live.com";
    $subject="New Guest Post";
    $sender=$_POST["senderName"];
    $senderEmail=$_POST["senderEmail"];
    $senderAbout=$_POST["abtyou"];
    $message=$_POST["article-body"];
    $title=$_POST["articleTitle"];

    $mailBody="Name: $sender\nEmail: $senderEmail\nAbout Sender: $senderAbout\nTitle: $title\n\n$message";

    mail($recipient, $subject, $mailBody, "From: $sender <$senderEmail>");

    $thankYou="<p>Thank you! Your post has been submitted.</p>";
}

?>

谢谢。

【问题讨论】:

  • “未定义的索引/变量错误” - 你为什么不向我们展示“真正的”错误。
  • @Fred-ii- 我已经用错误更新了问题。
  • 好的,请看下面 Rizier 的回答。那是你应该使用的,而不是if($_POST["submit"])
  • 那么,成功还是失败?
  • @Fred-ii- 错误消失但邮件功能无法正常工作。

标签: php html email


【解决方案1】:

只要检查 if 语句是否设置为:isset()

像这样:

if(isset($_POST["submit"]))

【讨论】:

  • 谢谢。我使用isset 并且错误不再存在。但是它不发送邮件。你能指出一个错误吗?
  • @zaain 欢迎您!邮件功能是另一回事,可能有很多原因。我建议您尽可能好地调试代码,使用谷歌或只是查看一些关于此功能的问题!如果您仍然有错误,请提出一个新问题。 (顺便说一句:您可以接受如何帮助您最大并解决您的问题的答案(meta.stackexchange.com/q/5234))
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-19
  • 2019-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-22
相关资源
最近更新 更多