$query = "INSERT INTO `{$diy->table}` (`id`, `ifcheck` $addvar)  VALUES (NULL, 0 $addvalue); ";

引入phpmailer

加入下面代码:

/*发送邮件*/
$addvalue_ary = explode(',', $addvalue);
//由于DEDE是将全部表单数据提交过来。所以这里须要分隔一下。
$addvar_ary = array(
1 => '称呼',
2 => 'Email',
3 => '手机/电话',
4 => '站点',
5 => '留言内容',
); $text = '';
foreach($addvar_ary as $key=>$value)
{
$text.=$value.': '.$addvalue_ary[$key].'<br>';
} require("class.smtp.php");
require("class.phpmailer.php");
//下载的文件必须放在该文件所在文件夹,把phpmailer下载后。class.phpmailer.php, class.pop3.php和 class.smtp.php放到/plus文件夹下
$mail = new PHPMailer(); //建立邮件发送类
$mail->CharSet = "utf-8"; // 这里指定字符集!
$mail->Encoding = "base64";
$mail->WordWrap = 50; // set word wrap
$mail->IsHTML(true); // send as HTML
$mail->IsSMTP(); // 使用SMTP方式发送
$mail->Host = "smtp.163.com"; // 您的企业邮局域名,你申请发件邮箱的域名。
$mail->FromName="新官网留言";
$mail->SMTPAuth = true; // 启用SMTP验证功能
$mail->Username = "XXXX@163.com"; // 发件邮箱username(请填写完整的email地址),这个邮箱是发送邮箱。phpmailer的意思就是使用一个邮箱向还有一个邮箱发邮件。所以提前注冊好一个邮箱
$mail->Password = "XXXXXXX"; // 发件邮箱password
$mail->Port=25;
$mail->From = "XXXX@163.com"; //邮件发送email地
$address ="XXXX@XXX.cn";//收件人地址址
$mail->AddAddress($address, "XXX");
//$mail->AddAddress("XXXX@XXX.cn", "XXX");//收件人地址。能够替换成不论什么想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名") if($action == 'post') { if($do == 2) { $mail_title="客户留言".date('y-m-d H:i:s',time());
$mail->Subject = $mail_title; //邮件标题
$mail->Body = $text; //邮件内容,$name,$phone..等是你取的用户前端提交过来的值,假设不想取数的话,就写个提示信息,如,站点有新订单了,请登录站点及时处理。
//showMsg('发送之前', 'javascript:;');
if(!$mail->send())
{
//echo "Fail to send.";
showMsg('发送失败', 'javascript:;');
//showmsg('发送失败');
exit;
}
//showMsg('发送成功', 'javascript:;');
//echo "邮件发送成功"; //dede能够用showmsg('发送成功');来測试是否发送成功
}
}
/*End 发送邮件*/ if($dsql->ExecuteNoneQuery($query))
{
$id = $dsql->GetLastID();
if($diy->public == 2)
{
//diy.php? action=view&diyid={$diy->diyid}&id=$id
$goto = "diy.php?action=list&diyid={$diy->diyid}";
$bkmsg = '公布成功。如今转向表单列表页...';
}
else
{
$goto = '-1';
$bkmsg = '邮件已经自己主动发送到SPARK工作人员,请等待联系您!';
}
echo "OK";
//showmsg($bkmsg, $goto);
}
}
}

JS代码:

var dataString = 'iname='+ $("#name").val() + '&email=' + $("#email").val() + '&tel=' + $("#tel").val()+ '&website=' + $("#website").val()+ '&action=post'+ '&diyid=1&do=2&dede_fields=iname,text;email,text;tel,text;website,text;content,text&dede_fieldshash=1f6d061a5dd65989abfd887';
$.ajax({
type: "POST",
url: "/plus/diy.php",
data: dataString,
success: function(data) {
if(data=="OK"){
//关闭遮罩
$("#submitmask").fadeOut(500);
alert("提交成功! ");
}else{
$("#submitmask").fadeOut(500);
alert("出错了! 请使用其它方式联系我们!");
}
}
});
return false;

DEDE使用AJAX无刷新提交Form表单,PHP返回结果的更多相关文章

  1. 简单方法实现无刷新提交Form表单

    前几天遇到一个前端的问题.我希望提交表单后页面不跳转且不刷新当前页面,然而查了很多方法都没有解决. 由于Form 是提交后一定刷新页面的,所以我们可以用一个折中的办法.我们给Form 指定一个ifra ...

  2. ajax无刷新方式收集表单并提交表单

    ajax无刷新方式收集表单有两种方式, 一个是使用html5的FormData.一个是传统的方式. 一,FormData,在主流的浏览器中可以用,IE不好用啊. 另外,FormData使用有两个条件, ...

  3. 导出excel用ajax不行,提交form表单可以

    导出excel用ajax不行,提交form表单可以. 一直用ajax找原因,网页不出现下载提示框 写了 response.setContentType("application/binary ...

  4. 通过jQuery的Ajax方式来提交Form表单

    通过jQuery的Ajax方式来提交Form表单 $.ajax({ url:ajaxCallUrl, type:"POST", cache:true, async:false, d ...

  5. Jquery通过Ajax方式来提交Form表单

    今天刚好看到Jquery的ajax提交数据到服务器的方法,原文是: 保存数据到服务器,成功时显示信息. jQuery 代码: $.ajax({ type: "POST", url: ...

  6. axios页面无刷新提交from表单

    页面部分大概意思一下 <form method="post" enctype="multipart/form-data"> ... </for ...

  7. jquey ajax 无刷新提交form

    http://bbs.csdn.net/topics/380237868 $.ajax({ type: "POST", url:ajaxCallUrl, data:$('#your ...

  8. jQuery实现form表单基于ajax无刷新提交方法详解

    本文实例讲述了jQuery实现form表单基于ajax无刷新提交方法.分享给大家供大家参考,具体如下: 首先,新建Login.html页面: <!DOCTYPE html PUBLIC &quo ...

  9. Ajax无刷新提交

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. C++学习之路—继承与派生(三):多重继承与虚基类

    (根据<C++程序设计>(谭浩强)整理,整理者:华科小涛,@http://www.cnblogs.com/hust-ghtao转载请注明) 多重继承是指一个派生类有两个或多个基类.例如,有 ...

  2. C#用链式方法

    C#用链式方法表达循环嵌套   情节故事得有情节,不喜欢情节的朋友可看第1版代码,然后直接跳至“三.想要链式写法” 一.起缘 故事缘于一位朋友的一道题: 朋友四人玩LOL游戏.第一局,分别选择位置:中 ...

  3. heap表和iot表排序规则不同

    heap 和iot 对比 OBJECT_NAME OBJECT_TYPE --------------------------------------------------------------- ...

  4. 快速排序算法之我见(附上C代码)

    因为<The C Programming Language>一书中有一个练习,需要用到快速排序,所以又复习了一下,感觉收获颇多,故而分享之. 快速排序的核心是一种 divide and c ...

  5. android面试题2

    一.属于GLSurFaceView特性的是: 1.管理一个surface,这个surface就是一块特俗的内存.能直接排版到Android的视图view上. 2.管理一个EGL display,它能让 ...

  6. 键盘游戏之canvas--用OO方式写

    虽然写的不是很好,但 解释权以及版权仍然归13东倍所有!  <!DOCTYPE HTML> <html> <head> <title>canvas-00 ...

  7. CloseHandle(),TerminateThread(),ExitThread()的差别

    线程的handle用处: 线程的handle是指向"线程的内核对象"的,而不是指向线程本身.每一个内核对象仅仅是内核分配的一个内存块,而且仅仅能由内核訪问.该内存块是一种数据结构, ...

  8. dsplib使用备忘

    1. 到TI官网下载与自己的芯片对应的dsplib库 2. 在工程属性里添加dsplib的头文件路径,lib库路径 3. 在源文件中包含dsplib头文件,如果是在.cpp文件里调用,包含头文件时要用 ...

  9. Delphi数组复制(只能使用System单元的Move函数)

    const AA : arrary[..] ,,,,) var BB : arrary[..] of byte; begin BB := AA ; {这样是错误的} Move(AA,BB,sizeof ...

  10. tracert路由跟踪命令分析判断

    可能有的会使用路由跟踪命令 ,可是却看不太明确显示出来的结果.结合我的来说明一下. (1)tracert命令介绍 tracert是路由跟踪命令,通过该命令的返回结果,能够获得本地到达目标主机所经过的网 ...