[英]Send the data of this form to a gmail account via php
I want to send the data from this form to a gmail account via php. 我想通过php将数据从此表单发送到Gmail帐户。 Now if I send it nothing happens, include the spam folder.
现在,如果我没有发送任何邮件,请包括垃圾邮件文件夹。
<label for="email" id="email">Email <span>*</span></label>
<input type="email" id="" name="email">
<div>
<div>
<label for="name" id="text">Nombre <span>*</span> </label>
<input type="text" id="name" name="name">
</div>
<div>
<label for="tlf-num">Teléfono <span>*</span> </label>
<input id="tlf-num" type="text" name="tlf-num" >
</div>
</div>
<div>
<label for="message" id="#">Mensaje</label>
<textarea contenteditable="false" name="message" id="message" cols="30" rows="10"></textarea>
</div>
<input type="submit" value="ENVIAR">
</form>
This is the php, I don´t know what is wrong. 这是php,我不知道怎么了。 This code was works for me about three years ago on other website.
该代码大约在三年前在其他网站上对我有用。 I read about email headers and gmail style accounts which take problems on recibe but I don´t know.
我读到有关电子邮件标头和gmail样式帐户的信息,这些帐户在收据上会出现问题,但我不知道。 I´m feeling a bit confussing about whats happen.
我对发生的事情感到有些困惑。
<?php
if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['tlf- num']) && isset($_POST['message']) != ""){
$nombre = $_POST['name'];
$mail = $_POST['email'];
$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje = "Nombre " . $nombre . " ";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['message'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());
$para = 'loquesea@gmail.com';
$asunto = 'Formulario contacto Web';
mail($para, $asunto, utf8_decode($mensaje), $header);
echo "<script type='text/javascript'>
setTimeout( function() {
window.location.href='https://loquesea.com';
}, 1500)
</script>";
}
else{
echo "<script type='text/javascript'>
alert('Revisa los datos');
window.location.href='https://loquesea.com';
</script>";
}
?>
I check my php.ini file after the first answer and have this configuration, maybe need to change something or add any option or something else?. 在第一个答案之后,我检查了我的php.ini文件并进行了配置,也许需要更改某些内容或添加任何选项或其他内容?
[mail function]
; For Win32 only.
; http://php.net/smtp
; SMTP = localhost
; http://php.net/smtp-port
; smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path = "env -i /usr/sbin/sendmail -t -i"
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail().
;mail.force_extra_parameters =
; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header = On
; The path to a log file that will log all mail() calls. Log entries include
; the full path of the script, line number, To address and headers.
;mail.log =
; Log mail to syslog (Event Log on Windows).
;mail.log = syslog
Please check your php.ini file for mail settings. 请检查您的php.ini文件中的邮件设置。 THe mail() function uses the parameters set in .ini file to send mails.
mail()函数使用.ini文件中设置的参数发送邮件。
For Ubuntu: 对于Ubuntu:
Install sendmail 安装sendmail
sudo apt-get install sendmail
Configure your host here 在这里配置主机
sudo vim /etc/hosts
(Vim is the text editor here) (Vim是此处的文本编辑器)
Save it and run config for sendmail 保存并运行sendmail的配置
sudo sendmailconfig
Finally, restart Apache 最后,重启Apache
sudo service apache2 restart
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.