kevinorriss/contactform

一个基于电子邮件地址、消息和 Google ReCaptcha 验证的简单联系表单

1.1.1 2017-02-12 21:11 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:53:13 UTC


README

一个简单的联系表单,用户输入他们的电子邮件地址、消息并通过 Google reCAPTCHA 机器人测试。然后,消息将被发送到配置的电子邮件地址。

工作原理

此库将联系表单功能添加到您的 Laravel 应用程序中。在 "contact" url 下设置了两个新路由(get 和 post)。需要设置一个视图,但此库提供了一个包含表单 HTML 的部分,或者您也可以创建一个具有特定应用程序布局和 CSS 样式的自定义视图。

安装

  1. 将 ContactForm 添加到 composer.json 文件中的 require

"kevinorriss\contactform": "1.1.*"

  1. 将 ContactFormServiceProvider 添加到 app.php 文件中

KevinOrriss\ContactForm\ContactFormServiceProvider::class,

  1. 运行 composer update

使用方法

Google reCAPTCHA

此库利用 Google 的 reCAPTCHA 来帮助阻止联系表单被垃圾邮件攻击。为了使用它,请按照以下步骤操作

  1. 按照 Google reCAPTCHA README 文件中的 Usage 部分,为您的应用程序生成一个站点密钥和密钥。

  2. 将您的 reCAPTCHA 密钥和密钥添加到应用程序环境文件中,例如

RECAPTCHA_SECRET=my_recaptcha_secret
RECAPTCHA_SITE_KEY=my_recaptcha_site_key

电子邮件配置

您必须首先设置您的邮件驱动程序,请参阅 Laravel 文档。

  1. 将以下内容添加到应用程序的环境文件中
CONTACT_FORM_EMAIL=example@myapplication.com
CONTACT_FORM_NAME="Example Name"

这是用户消息将被发送到的电子邮件地址。

  1. 将以下可选设置添加到环境文件中
CONTACT_FORM_SUBJECT="<YOUR SUBJECT>"
CONTACT_FORM_SUCCESS="<YOUR SUCCESS MESSAGE>"

这些设置允许您覆盖电子邮件的主题以及用户在电子邮件成功发送时看到的提示消息。

示例

一个简单的视图

要开始,请在 resources/views 文件夹中创建一个名为 contact.blade.php 的文件,并添加以下内容

<!DOCTYPE html>
<html>
    <head>
        <title>Contact Form</title>
        @include('contactform::stylesheet')
    </head>
    <body>
        <div class="container">
            <div class="content">
                @include('contactform::form', ['heading' => 'Contact Me'])
            </div>
        </div>
        @include('contactform::javascript')
    </body>
</html>

此表单使用 Bootstrap 进行样式设计,它包含在 contactform::stylesheet 部分中。

当包含表单本身时,您可以提供一个可选的数组,其中包含一个标题键,该键覆盖面板标题(默认为 "Contact Form")。

默认情况下,联系表单控制器将查找 contact.blade.php,您可以通过在应用程序的环境文件中创建一个条目来覆盖此内容,例如

CONTACT_FORM_VIEW="mycontactformview"

然后您需要将视图文件命名为与该名称匹配。

JavaScript

contactform::javascript 部分包含三个额外的部分,每个部分对应于

  1. jQuery(contactform::jquery)
  2. Bootstrap(contactform::bootstrap)
  3. reCAPTCHA(contactform::recaptcha)

如果您的模板已经包含 jQuery 或 Bootstrap,或者您只是不想使用 Bootstrap,则可以替换 contactform::javascript 部分并只使用您需要的那些。

作者

还可以查看参与此项目的 贡献者列表

许可

本项目采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件