這才想起,前段時間網(wǎng)站升級,表單生成的代碼沒有修改。知道了問題就好解決了。
打開后臺頻道模型里面的自定義表單,點擊前臺預(yù)覽
點擊發(fā)布信息
然后查看彈出的頁面的源代碼,記住你的頁面里面的這段字符
最后打開你的表單模板,把上面紅框里的代碼復(fù)制你的表單模板相應(yīng)的位置。保存就行了。如果你的站是生成靜態(tài)的。別忘記生成這個頁面。
]]>
smtp服務(wù)器:ssl/smtp.qq.com
smtp服務(wù)器端口:465
用戶郵箱 :35625244@qq.com
用戶帳戶:35625244
用戶密碼:填寫郵箱授權(quán)碼,不是郵箱登錄密碼
smtp服務(wù)器:ssl/smtp.163.com
smtp服務(wù)器端口:465
用戶郵箱 :baishitou@163.com
用戶帳戶:baishitou
用戶密碼:填寫郵箱授權(quán)碼,不是郵箱登錄密碼
smtp服務(wù)器:ssl/smtp.126.com
smtp服務(wù)器端口:465
用戶郵箱 :baishitou@126.com
用戶帳戶:baishitou
用戶密碼:填寫郵箱授權(quán)碼,不是郵箱登錄密碼
如果你使用163的或者126的,你需要在郵箱設(shè)置里面開啟POP3/SMTP服務(wù)如下圖
如果用qq郵箱。也同樣需要開啟上面服務(wù),在設(shè)置-帳號里面。
。
變量名稱:cfg_shoujianren
變量類型:文本
參數(shù)說明:收件人
變量值:35625244@qq.com
所屬組:站點設(shè)置
找到并打開plus目錄下的diy.php文件
$id = $dsql->GetLastID();
在它下面添加下列代碼:
$mailtitle = "{$diy->name}--留言通知";
$mailbody = '';
foreach($diy->getFieldList() as $field=>$fieldvalue)
{
$mailbody .= "{$fieldvalue[0]}:{${$field}}\r\n";
}
$headers = "From: ".$cfg_adminemail."Reply-To: ".$cfg_adminemail;
if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server))
{
$mailtype = 'TXT';
require_once(DEDEINC.'/mail.class.php');
$smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);
$smtp->debug = 0;//發(fā)送不成功把0改成1,再提交看錯誤信息
$smtp->sendmail($cfg_shoujianren,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);
}
else
{
@mail($cfg_shoujianren, $mailtitle, $mailbody, $headers);
}
如果收到的信息是亂碼。請把diy.php文件里面的:
$headers = "From: ".$cfg_adminemail."Reply-To: ".$cfg_adminemail;
替換成
$mailbody = mb_convert_encoding($mailbody, "GBK", "UTF-8");
完畢。
]]>
disable_functions = pfsockopen
]]>
用phpmailer來給站長發(fā)送自定義表單提交的數(shù)據(jù)到指定郵箱上,不寫死任何東西,有什么字段就提交發(fā)送什么字段。
1、后臺-系統(tǒng)-添加變量(設(shè)置收件人)
變量名稱:cfg_shoujianren
變量類型:文本
參數(shù)說明:收件人
變量值:12345678@qq.com
所屬組:站點設(shè)置
2、后臺-系統(tǒng)-核心設(shè)置(設(shè)置gmail服務(wù)器)
3、下載PHPMailer 郵件發(fā)送類
下載,解壓,把里面的4個文件放進/plus/文件夾下
4、打開 /plus/diy.php 找到
$id = $dsql->GetLastID();
在它前面一行加入
//郵件發(fā)送開始
$emailbody = '';
foreach($diy->getFieldList() as $field=>$fieldvalue)
{
$emailbody .= $fieldvalue[0].':'.${$field}.'<br />';
}
global $cfg_smtp_server, $cfg_adminemail, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_password, $cfg_webname, $cfg_basehost, $cfg_smtp_user;
require_once('PHPMailerAutoload.php');
$mail = new PHPMailer;
$mail->IsSMTP();
$mail->SMTPDebug = 0;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tls';
$mail->Host = $cfg_smtp_server;
$mail->Port = $cfg_smtp_port;
$mail->IsHTML(true);
$mail->Username = $cfg_smtp_usermail;
$mail->Password = $cfg_smtp_password;
$mail->setFrom($cfg_smtp_user);
$mail->addAddress($cfg_shoujianren);
$mail->CharSet = 'UTF-8';
$mail->Encoding = 'base64';
$mail->Subject = "=?utf-8?B?".base64_encode($diy->name)."?=";
$mail->Body = $emailbody;
$mail->send();
//郵件發(fā)送結(jié)束
沒有收到郵件?
檢查是否在垃圾箱里了,或者你的收件人cfg_shoujianren是否添加變量名錯了
沒有發(fā)送成功,報錯?
檢查php里socket和openssl擴展是否沒開啟
可以在網(wǎng)站根目錄新建個php.php 文件,里面寫上
<?php
phpinfo();
瀏覽器中打開這個文件 https://域名/php.php
查看頁面中是否有