使用PHP从HTML发送电子邮件 [英] Sending an Email from HTML using PHP

查看:109
本文介绍了使用PHP从HTML发送电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨朋友们,我是新的PHP。在这里我想从我的静态页面发送一封电子邮件,其中包含一些文本字段,用户必须填写所有字段,然后单击提交按钮,它必须发送电子邮件到我的电子邮件地址(雅虎邮件地址)



我已经完成了这个但是我无法从Firefox发送但我可以从chrome发送,同时我的页面重新指向PHP页面应该这样做。这是我的代码。请找到错误并告诉我正确的答案



 <  输入   名称  = 名称   类型  =  text    id   =  name    value   =     /  > ;  
< 输入 name = email type = text id = email = / >
< 输入 名称 = 网站 type = text id = loc value = / >
< input 名称 = subject type = text id = phone value = / >
< textarea 名称 = 消息 = 20 cols = 50 id = 消息 > < / textarea >
< 输入 类型 = 提交 value = 提交 class = button onClick = validate(); >
< 输入 type = reset = 重置 class = button < span class =code-keyword>>


var fname,phone,email,message,loc;
函数validate()
{
fname = document.getElementById('name')。value; // alert(fname);
loc = document.getElementById('loc')。value; // alert(loc);
phone = document.getElementById('phone')。value; // alert(phone);
email = document.getElementById('email')。value; // alert(email);
message = document.getElementById('message')。value; // alert(message);
if(notEmpty(fname,'Please Enter First Name')&& notEmpty(loc,'Please Enter location')&& notEmpty(message,'Please Enter your Message'))
{
if(email!=)
{
if(emailValidator(email,'please Enter Valid MailId'));
}
//document.form1.submit();
document.getElementById('conmsg')。innerHTML =Processing .... Please Wait ..!;
contactUs();
}
}

函数contactUs()
{
var xml = null;
if(window.XMLHttpRequest)
{//代码用于IE7 +,Firefox,Chrome,Opera,Safari
xml = new XMLHttpRequest();
}
else
{// IE6的代码,IE5
xml = new ActiveXObject(Microsoft.XMLHTTP);
}
xml.onreadystatechange = function()
{
if(xml.readyState == 4&& xml.status == 200)
{/ /alert(xml.responseText);
document.getElementById('conmsg')。innerHTML = xml.responseText;
document.getElementById('name')。value ='';
document.getElementById('loc')。value ='';
document.getElementById('phone')。value ='';
document.getElementById('email')。value ='';
document.getElementById('message')。value ='';
}
}
var con = fname +:+ phone +:+ email +:+ message +:+ loc;
xml.open(GET,putcontact.php?convar =+ con,true);
xml.send();
}
/////////////// GetXmlHttpObject /////////////
函数GetXmlHttpObject()
{
var xmlHttp = null;
try
{
// Firefox,Opera 8.0 +,Safari
xmlHttp = new XMLHttpRequest();
}
catch(e)
{
// Internet Explorer
try
{
xmlHttp = new ActiveXObject(Msxml2.XMLHTTP );
}
catch(e)
{
xmlHttp = new ActiveXObject(Microsoft.XMLHTTP);
}
}
返回xmlHttp;
}
< / script >







和我的PHP代码低于

 <?php  
if($ _ GET ['' convar']!=
{
$ varbles = explode( ,$ _ GET [' convar']);
$ fname = $ varbles [0];
$ phone = $ varbles [1];
$ email = $ varbles [2];
$ message = $ varbles [3];
$ loc = $ varbles [4];

$ mail_text = 名称:。$ fname。 \\\\\ n位置:。$ loc。 \\\\ n移动:。$ phone。 \\\\ n电子邮件:。$ email。 \消息:。$ message。 \\\\ n;
$ to = ganeshxxxxxxx@yahoo.xxxxx;
$ to2 = phaxxxxx@gmail.xxxx;



// $ header ='mailserver details';
$ headers = 来自:ganeshxxxxx@yahoo.xxx \\\\ n
回复:ganeshxxxxxx@yahoo.xxx \\\\ n
X-Mailer:PHP /。 phpversion();
$ subject = 从网站反馈:;
$ message = $ mail_text;
if(mail($ to,$ subject,$ mail_text,$ headers))
{ // 我们只在一个案例中显示好人,而在剩下的情况下显示坏人。
echo ' < font color =#660000>您的邮件已发送。感谢您的反馈。< / font>';
}
其他
{
echo ' < font color =#660000>发送电子邮件时出错!< / font>';
}

}
?>





请告诉我哪里错了。

解决方案

_GET [' convar']!=
{


varbles = explode(


_GET [' convar']);

Hi friends, I am new PHP. in this I want to send an email from my Static page which has some text fields and the user has to fill all the fields and then on clicking the submit button it has to send email to my email address(yahoo mail address)

I have done this but I am un able to send from Firefox but I am able to send from chrome and at the same time my page is re directing to PHP page which is not supposed to do that. here is the my code. Please find the bug in that and tell me the correct answer

<input name="name" type="text" id="name" value="" />
<input name="email" type="text" id="email" value="" />
<input name="website" type="text" id="loc" value="" />
<input name="subject" type="text" id="phone"  value="" />
<textarea name="message" rows="20" cols="50"  id="message" ></textarea>
<input type="submit"  value="Submit" class="button" onClick="validate();">
                     <input type="reset" value="Reset" class="button">

var fname,phone,email,message,loc;
function validate()
{
    fname=document.getElementById('name').value;// alert(fname);
    loc=document.getElementById('loc').value;//alert(loc);
    phone=document.getElementById('phone').value;//alert(phone);
    email=document.getElementById('email').value;//alert(email);
    message=document.getElementById('message').value;//alert(message);
    if(notEmpty(fname,'Please Enter First Name') && notEmpty(loc,'Please Enter location') && notEmpty(message,'Please Enter Your Message'))
    {
        if(email!="")
        {
            if(emailValidator(email,'please Enter Valid MailId'));
        }
    //document.form1.submit();
    document.getElementById('conmsg').innerHTML="Processing....Please Wait..!";
    contactUs();
    }
}

function contactUs()
{
    var xml = null;
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xml=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xml=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xml.onreadystatechange=function()
    {
        if (xml.readyState==4 && xml.status==200)
        {    //alert(xml.responseText);
            document.getElementById('conmsg').innerHTML = xml.responseText;
            document.getElementById('name').value='';
            document.getElementById('loc').value='';
            document.getElementById('phone').value='';
            document.getElementById('email').value='';
            document.getElementById('message').value='';
        }
    }
    var con= fname+":"+phone+":"+email+":"+message+":"+loc;
    xml.open("GET","putcontact.php?convar="+con,true);
    xml.send();
}
///////////////GetXmlHttpObject/////////////
function GetXmlHttpObject()
{
    var xmlHttp=null;
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
        // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;
}
</script>




and my PHP code is below

<?php
if($_GET['convar']!="")
{
    $varbles=explode(":",$_GET['convar']);
    $fname=$varbles[0];
    $phone=$varbles[1];
    $email=$varbles[2];
    $message=$varbles[3];
    $loc=$varbles[4];

    $mail_text= "Name:".$fname." \r\n Location: ".$loc." \r\n Mobile:".$phone." \r\n Email:".$email." \r\n Message:".$message."\r\n ";
            $to="ganeshxxxxxxx@yahoo.xxxxx";
            $to2="phaxxxxx@gmail.xxxx";



            //$header='mailserver details';
            $headers =  "From: ganeshxxxxx@yahoo.xxx" . "\r\n" .
                        "Reply-To:ganeshxxxxxx@yahoo.xxx" . "\r\n" .
                        "X-Mailer: PHP/" . phpversion();
            $subject = "Feed Back From Website:";
            $message =$mail_text;
                if(mail($to, $subject, $mail_text, $headers))
                {//we show the good guy only in one case and the bad one for the rest.
                    echo '<font color="#660000">Your message has been sent. Thank you for your Feed back.</font>';
                }
                else
                {
                    echo '<font color="#660000">There was an error in sending email!</font>';
                }

}
?>



Please tell me where I am wrong.

解决方案

_GET['convar']!="") {


varbles=explode(":",


_GET['convar']);


这篇关于使用PHP从HTML发送电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆