当用户按下表单中的“提交”按钮时发送电子邮件的PHP脚本

时间:2019-02-11 20:07:10

标签: php html

我有一个提交表单,我编写了一个PHP脚本,使表单发送包含输入数据的电子邮件,用户将其插入表单的字段中

现在我将PHP代码放在HTML和CSS的同一文件中,这意味着HTML,CSS和PHP在同一文件中

当我将文件放入CMS时,页面发生了什么,您可以从这里看到发生的情况:https://www.hochikiamerica.com/acd-landing-2

表单的PHP脚本和HTML代码 https://github.com/Mstava/FreelancerProject/blob/master/formScript.php

现在,我需要知道将PHP代码放在HTML文件中的位置,以避免这种情况

以及如何确保代码正常工作并发送电子邮件

2 个答案:

答案 0 :(得分:1)

当您单击“提交”时,您的表单操作会将您带到action_page.php。在这里,您应该阅读post变量并发送电子邮件。看看我几年前写的这篇帖子blue host email

答案 1 :(得分:0)

一个常见的误解是,在用户执行某项操作(即单击“提交”按钮)后,可以运行其他PHP。并非如此。呈现页面后,将无法再执行该页面上的PHP。

那该怎么办?

您有两个选择:

(1)您可以创建第二个页面(action_page.php或其他名称),该页面在form标记的action=属性上指定。该附加页面将通过PHP变量$_POST(如果为method="post"$_GET(如果method = get)接收用户输入的数据,然后您可以使用该数据发送联系表单,然后向用户显示新数据或将用户发送回原始页面。当然,您可能需要附加的PHP来确认表单已发送,等等-并且此附加的代码将需要处理用户第一次访问页面的情况, (已发送联系人表格),并且用户第二次看到该页面。

(2)您可以使用AJAX(javascript / jQuery)获取表单数据,将其发送到辅助PHP文件,该文件将通过$ _POST / $ _ GET变量接收数据,发送电子邮件,并返回返回第一页。

这几天,大多数情况下,我们使用第二种方法,因为它功能更强大。首先,用户保持在同一页面上。另外,没有页面刷新。另外,发送表单后,您的javascript可以执行其他操作。

AJAX实际上非常简单-只需用Google搜索YouTube视频,就可以使用PHP和AJAX创建登录系统。您应该能够在大约10分钟或更短的时间内找到其中的一个,以解释发送联系表并将反馈发送回呼叫页面所需的全部知识。

这里有一个5分钟的YouTube教程,它将向您展示基本知识:

Install a simple PHP and Ajax login system