0

我正在尝试创建一个非常简单的邮件表单。这是我到目前为止所拥有的:

<html>
    <h2>Email Verzenden</h2>
        <script language = "Javascript">
        function explodeArray(emailID,delimiter) {
            tempArray=new Array(1);
            var Count=0;
            var tempString=new String(emailID);

            while (tempString.indexOf(delimiter)>0) {
                tempArray[Count]=tempString.substr(0,tempString.indexOf(delimiter));
                tempString=tempString.substr(tempString.indexOf(delimiter)+1,tempString.length-tempString.indexOf(delimiter)+1);
                Count=Count+1
                }

            tempArray[Count]=tempString.replace("\r","");
            return tempArray;
        } 

          function checkEmail(hallo) {
            if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(hallo)){
            return true;
            }
            return false;
          }
          function validate(){
            var emailID=document.form.email;
            var delimiter="\n";
            var emailArray=explodeArray(emailID.value,delimiter);
            var textID=document.form.text;
            var length = emailArray.length,
            element = null;
            for (var i = 0; i < length; i++) {
                emailVar = emailArray[i];

                if (emailVar==null){
                alert("Email-adres bestaat niet")
                emailID.focus()
                return false
                }               
                if (emailVar==""){
                alert("Email-adres veld is leeg")
                emailID.focus()
                return false
                }
                if (checkEmail(emailVar)==false){
                emailVar.value=""
                alert("Ongeldig E-mail adres");
                emailVar.focus()
                return false
                }
            }   
                if ((textID.value==null)||(textID.value==""))
                {
                alert("E-mail textveld is leeg")
                textID.focus()
                return false
                }
            return true
          }
        </script>
        <form name="form" method="post" onSubmit="return validate()">
        <pre>
            Vul hier de/het E-mail adres(sen) in
            <textarea name="email" rows="5" cols="50"></textarea><br>
            Typ hier de E-mail
            <textarea name="text" rows="5" cols="50"></textarea><br>
                        <input type="submit" name="Submit" value="Submit">
        </pre>
</form>
</html>

如您所见,有 2 个文本区域。在上面的一个中,您应该在彼此下方写下电子邮件地址,而在下面的一个中,您应该编写实际的电子邮件。我已经得到了我的脚本来检查电子邮件地址是否有效,以及实际的电子邮件是否真的有任何输入等等,但我不知道如何实现任何 PHP 代码以便将电子邮件实际发送给所有人在顶部文本区域中填写的地址。有人可以帮助我吗?

4

2 回答 2

0
$emails = explode("\n", $_POST['email']);
if (!empty($emails)) {
    foreach($emails as $email) {
        mail($email, 'My Subject', $_POST['text']);
    }
}
于 2013-02-06T08:20:17.863 回答
0
<form method="post" action="yourscript.php" onsubmit="return validate()">
your textareas here
</form>

制作 yourscript.php。

<?
if (!empty($_POST) && isset($_POST['email') && isset($_POST['text'])) {
 $emails = explode("\n", $_POST['email']);

 foreach($emails as $email) {
  if (filter_var($email, FILTER_VALIDATE_EMAIL)) { 
    mail($email, 'Subject', $_POST['text']);
  }
 }
}
?>
于 2013-02-06T08:28:29.240 回答