【问题标题】:php Email form / if / else if / error messagesphp 电子邮件表单 / if / else if / 错误信息
【发布时间】:2017-04-17 00:42:50
【问题描述】:

我尝试创建 php 电子邮件表单。该表单基本上可以正常工作,但我想添加验证功能,就像我在“名称”上所做的那样 但是,当我清空“名称”并发送电子邮件时,它不起作用。 任何帮助将非常感激。

html文件

<form action="php_mini.php" method="post">

    Name:
    <input type="text" name="name">
    <span class="error">* <?php echo $nameErr;?></span>
    <br><br>

    Email:
    <input type="text" name="email">
    <span class="error">* <?php echo $nameErr;?></span>
    <br><br>

    Phone:
    <input type="text" name ="phone">
    <br><br>

    Comment:
    <!--<textarea name="comment"></textarea>-->
    <!--<input type = "text" name = "comment">-->
    <textarea name="comment" rows="5" cols="40"></textarea>
    <span class="error">* <?php echo $nameErr;?></span>
    <br><br>

    <input type="submit" value="Submit">
</form>

php

echo '<pre>';
print_r( $_POST );
echo '</pre>';

$headers = 'MIME-Version: 1.0' . "\r\n" .
       'Content-type: text/html; charset=iso-8859-1' . "\r\n" . 
       'From:  Design_customers <customers.com' . " \r\n" .
       //'Reply-To: vader@deathstar.com' . "\r\n" .
       'X-Mailer: PHP/' . phpversion();
//error msg
$nameErr = $emailErr = $phoneErr = "";
$name = $email = $comment = $phone = "";    

//receiver   

if (empty($_POST["name"])) {
    $nameErr = "Name is required";
} else {
    $name = test_input($_POST["name"]);
}

$email = $_POST['email'];
/*$message = $_POST['comment'];*/
$message = 'You got a message from a customer.:

Name: '.$_POST['name'].' 
Email: '.$_POST['email'].'
Phone: '.$_POST['phone'].'
Comment: '.$_POST['comment'];
//sender
$from = 'From: Customer'; 

$subject = 'Customer Inquiry';

mail( $email, $subject, $message, $from );

【问题讨论】:

  • 好吧,可以详细说明一下当我清空'name'时它不起作用...?当您提交名称字段为空的表单时,$_POST['email'] 是否实际上不为空?
  • 添加标签,重新标记并省略了一些空代码行

标签: php html forms email post


【解决方案1】:

使用if(isset($_POST["name"])) 停止错误。 [Notice: Undefined index: name in C........]

你最好用 java Script 验证这个表单。我已经用javascript附加了你表单的一部分。

<form action="" method="post" onsubmit="return(Validate());" name="myform">

    Name:
    <input type="text" name="name">
    <span class="error">* <div id="name_error" style="color:red;"></div> </span>
    <br><br>

</form>





<script type="text/javascript">
   <!--
      // Form validation code will come here.

      function Validate()
      {

         if( document.myform.name.value == "" )
         {
            alert( "Please provide your name!" );

            name_error.textContent = "Name is Required.!"; 
            document.myform.name.focus() ;
            return false;
         }


         return( true );
      }
   //-->
</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 2013-09-04
    • 2021-09-02
    • 2021-05-29
    • 2015-08-06
    相关资源
    最近更新 更多