php表单提交并自动发送邮件给某个邮箱(示例源码下载)

只需要将以下代码内容进行复制即可用到自己的程序/API接口中:

<?php
if(!empty($_POST['is_post']) && $_POST['is_post']==1){$url = "https://www.aoksend.com/index/api/send_email";$name = $_POST['name'];$email = $_POST['email'];$subject = $_POST['subject'];$message = $_POST['message'];if(empty($name)){echo json_encode(['message'=>'请填写Name','code' => 40001]);exit;}if(empty($email)){echo json_encode(['message'=>'请填写Email address','code' => 40002]);exit;}if(empty($subject)){echo json_encode(['message'=>'请填写Subject','code' => 40003]);exit;}if(empty($message)){echo json_encode(['message'=>'请填写Message','code' => 40004]);exit;}$time = date('Y-m-d H:i:s',time());$str = '{"username":"'.$name.'","contactemail":"'.$email.'","subject":"'.$subject.'","content":"'.$message.'","time":"'.$time.'"}';//app_key 注册Aoksend获取秘钥//to 需要接收提醒的邮箱//template_id Aoksend里的邮件模板ID$data = ['app_key'=>'cf6d0114ee5cd1e4800000005c20ac793', 'to'=>'test@Aoksend.com', 'template_id'=>'E_100008454408', 'data'=>$str];$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);if (!empty($data)){curl_setopt($curl, CURLOPT_POST, 1);curl_setopt($curl, CURLOPT_POSTFIELDS, $data);}curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);$output = curl_exec($curl);curl_close($curl);echo $output;exit;
}
?>
<style type="text/css">
html, body {background: #f1f1f1;font-family: 'Merriweather', sans-serif;padding: 1em;
}h1 {text-align: center;color: #565656;@include text-shadow(1px 1px 0 rgba(white, 1));
}
p{text-align: center;
}
form {max-width: 600px;text-align: center;margin: 20px auto;input, textarea {border:0; outline:0;padding: 1em;@include border-radius(8px);display: block;width: 100%;margin-top: 1em;font-family: 'Merriweather', sans-serif;@include box-shadow(0 1px 1px rgba(black, 0.1));resize: none;&:focus {@include box-shadow(0 0px 2px rgba($red, 1)!important);}}#input-submit {color: white; background-color: #ff5151;cursor: pointer;margin-top:20px;&:hover {@include box-shadow(0 1px 1px 1px rgba(#aaa, 0.6)); }}textarea {height: 156px;}
}.half {float: left;width: 48%;margin-bottom: 1em;
}.right { width: 50%; }.left {margin-right: 2%; 
}@media (max-width: 480px) {.half {width: 100%; float: none;margin-bottom: 0; }
}/* Clearfix */
.cf:before,
.cf:after {content: " "; /* 1 */display: table; /* 2 */
}.cf:after {clear: both;
}
</style>
<h1>联系表单</h1>
<p>由AokSend支持邮件发送API</p>
<form class="cf"><div class="half left cf"><input type="text" id="input-name" placeholder="Name"><input type="email" id="input-email" placeholder="Email address"><input type="text" id="input-subject" placeholder="Subject"></div><div class="half right cf"><textarea name="message" type="text" id="input-message" placeholder="Message"></textarea></div>  <input type="submit" value="Submit" id="input-submit">
</form><script>function submitForm() {// 阻止表单的默认提交行为event.preventDefault();// 假设你的表单数据在以下对象中var formData = {is_post: 1,name: document.getElementById('input-name').value,email: document.getElementById('input-email').value,subject: document.getElementById('input-subject').value,message: document.getElementById('input-message').value};// 将表单数据转换为查询字符串var queryString = Object.keys(formData).map(key => encodeURIComponent(key) + '=' + encodeURIComponent(formData[key])).join('&');// 初始化XMLHttpRequest对象var xhr = new XMLHttpRequest();// 设置请求类型、URL和异步xhr.open('POST', '', true);// 设置请求头(如果需要)xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');// 设置响应处理函数xhr.onreadystatechange = function () {if (xhr.readyState === 4 && xhr.status === 200) {// 请求成功完成var obj = JSON.parse(xhr.responseText);if(obj.code==200){//调用成功alert("提交成功,已发送邮件!")}else{alert(obj.message)}}};// 发送请求xhr.send(queryString);}document.getElementById('input-submit').addEventListener('click', submitForm);
</script>

github下载:GitHub - AokSend/Contact-Form-Submit-Send-Email

gitee下载:README.md · AokSend/Contact Form Submit Send Email - Gitee.com

欢迎各位有需要交流的朋友们留言互动

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/43972.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索Mojo模型:解锁机器学习模型的可解释性之旅

探索Mojo模型&#xff1a;解锁机器学习模型的可解释性之旅 在人工智能和机器学习领域&#xff0c;模型的可解释性是一个至关重要的议题。随着模型变得越来越复杂&#xff0c;理解模型的决策过程成为了一个挑战。Mojo模型作为一种模型序列化格式&#xff0c;提供了一种方法来部…

Python 给存入 Redis 的键值对设置过期时间

Redis 是一种内存中的数据存储系统&#xff0c;与许多传统数据库相比&#xff0c;它具有一些优势&#xff0c;其中之一就是可以设置数据的过期时间。通过 Redis 的过期时间设置&#xff0c;可以为存储在 Redis 中的数据设置一个特定的生存时间。一旦数据到达过期时间&#xff0…

mybatis日志记录方案

首先对指定表进行监控 对表进行监控,那么就要使用的是statementInterceptor 拦截器 使用拦截器那么就要写intercepts写拦截条件进行拦截 监控只对与增删改 查询不进行监控 对于字段的监控,是谁修改了字段,那么就进行报警,或者提醒 消息提醒使用钉钉机器人进行消息提醒 P…

软链接node_modules

公司项目很多微应用的子项目公用同一套模板&#xff0c;也就会使用同一个node_modules 1.先创建3个同样的项目,并安装一个其中的一个node_modules给他丢到外边 2.win r -------> cmd --------> ctrlshift enter(已管理员身份打开cmd) 3.在窗口分别执行以下代码…

视频减小技巧:十大顶级视频压缩软件

视频压缩软件会尽可能地压缩视频&#xff0c;以便上传到各个网站。通常&#xff0c;4K 或更高质量的视频体积更大。压缩软件有助于压缩体积。在这里&#xff0c;我们来讨论一下 10 款最佳视频压缩软件。 十大顶级视频压缩软件 1. 奇客压缩宝 奇客压缩宝是由Geekersoft公司开发…

基于SpringBoot+MySQL的租房项目+文档

&#x1f497;博主介绍&#x1f497;&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示&#xff1a;文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…

数据库系统中的Undo和Redo

在数据库管理系统&#xff08;DBMS&#xff09;中&#xff0c;undo 和 redo 是两种用于事务管理和故障恢复的重要机制。它们主要涉及事务的提交、回滚以及系统故障后的数据恢复。 Undo&#xff08;撤销&#xff09; 作用&#xff1a;undo 用于撤销未提交事务所做的修改&#…

极狐Gitlab使用(1)

目录 续接上篇&#xff1a;极狐Gitlab安装部署-CSDN博客 1. 关闭注册功能 2. 创建群组 3. 创建用户 5. 邀请成员到群组 6. 设置导入导出项目源 7. 通过gitee导入库 8. 通过仓库URL导入 9. 自创建项目 10. 默认分支main的权限 11. 使用普通用户进入自建库 12. 创建用…

java的遍历的方法对比 效率对比

在 Java 中&#xff0c;遍历对象的方式主要取决于对象的类型和数据结构。以下是几种常见的遍历方式&#xff0c;以及它们的效率比较&#xff1a; 普通的 for 循环&#xff1a; 效率&#xff1a;高。使用普通的 for 循环可以直接根据索引来访问元素&#xff0c;适用于数组和实现…

Ubuntu系统上安装Apache和WordPress

** 第一步跟新系统包 ** 首先跟新系统包 sudo apt update sudo apt upgrade第二步下载安装apache sudo apt install apache2 ##查看apache的状态是否启动成功 sudo systemctl status apache2 ##查看服务器的ip地址 sudo ip a通过ip地址进行访问apache页面 第三步下载安装…

git patch怎么使用?

通常当我们提到 "patch" 时&#xff0c;我们可能指的是以下几种情况&#xff1a; 1. **应用补丁文件**&#xff1a; 如果你有一个 .patch 文件&#xff0c;你可以使用 git apply 命令来应用它。 bash git apply your-patch-file.patch 这会将补丁文件中的更改应用到…

软件架构之嵌入式系统设计

软件架构之嵌入式系统设计 第 12 章&#xff1a;嵌入式系统设计12.1 嵌入式系统概论12.2 嵌入式系统的组成12.2.1 硬件架构12.2.2 软件架构 12.3 嵌入式开发平台与调试环境12.3.1 嵌入式系统软件开发平台12.3.2 嵌入式开发调试 第 12 章&#xff1a;嵌入式系统设计 随着计算机…

力扣 1两数之和

nums [2,7,6,3] target 9 需要在这个中找到 nums中数字下标&#xff0c;累加和等于target 也就是说既要数字下标&#xff0c;又要nums中数字&#xff0c;还要查找 因此&#xff0c;考虑map这种既有key 又有value的哈希表 问题是 map,unordered_map, muti_map用哪一个呢&a…

人工智能时代,零基础学IT,我首推Python作为你编程入门语言!

人工智能时代为什么将 Python 称为第一语言&#xff1f; 因为python适应了人工智能时代&#xff1a; 人工智能时代对于代码的简便性有很大要求&#xff0c;像传统的C/CPP/Java学习较为复杂&#xff0c;学习路线长&#xff0c;对于很多零基础的人入门困难。python的兼容性&…

k8s集群部署mysql8主备

一、搜索mysql8版本 # helm search repo mysql# helm pull bitnami/mysql --version:11.1.2# tar -zxf mysql-11.1.2.tgz# cd mysql 二、修改value.ysqml文件 动态存储类自己提前搭建。 # helm install mysql8 -n mysql-cluster ./ -f values.yaml NAME: mysql8 LAST DEPLOYED…

Java:方法与类的奥秘——解锁编程世界的钥匙

探索编程的奥秘 在程序设计的广阔海洋中&#xff0c;Java如同一艘稳健的航船&#xff0c;引领着无数开发者穿越代码的波涛。本篇深度探索&#xff0c;将带您潜入Java的内心深处&#xff0c;揭开“方法”与“类”的神秘面纱。这两个概念&#xff0c;不仅是Java的基石&#xff0…

大模型日报 2024-07-11

大模型日报 2024-07-11 大模型资讯 CVPR世界第二仅次Nature&#xff01;谷歌2024学术指标出炉&#xff0c;NeurIPS、ICLR跻身前十 谷歌2024学术指标公布&#xff0c;CVPR位居第二&#xff0c;超越Science仅次于Nature。CVPR、NeurIPS、ICLR三大顶会跻身TOP 10。 CVPR成全球第二…

【简历】南京某大学顶级211硕士:拿offer可能性低

注&#xff1a;为保证用户信息安全&#xff0c;姓名和学校等信息已经进行同层次变更&#xff0c;内容部分细节也进行了部分隐藏 简历说明 这份简历的背景是南京的一所顶级211的硕士,从学校背景来讲呢,求职目标就是大厂的秋招&#xff0c;但是因为项目描述的亮点比较少&#x…

后仿真中《SDF反标必懂连载篇》之 反向提取SDF反标延迟

今天&#xff0c;整理一下最近工作中遇到的一个问题&#xff0c;及解决问题的办法&#xff0c;仅分享给大家。 我们知道&#xff0c;我们在完成SDF时序反标之后&#xff0c;首先要做的事情&#xff1a;检查sdfannotation 文件。文件中记录了每个sdf 文件&#xff0c;每个实例的…

Fiddler使用详解:网络调试与分析工具(接口测试,断点调试,弱网测试)

摘要 Fiddler是一个强大的网络调试工具&#xff0c;它能够记录、检查、修改和重发所有经过计算机的HTTP/HTTPS流量。本文将详细介绍Fiddler的安装、配置和使用技巧&#xff0c;帮助开发者和测试人员更好地理解网络请求和响应。 1. Fiddler简介 Fiddler是由Telerik公司开发的…