php - OctoberCMS 发布表单

标签 php ajax laravel sendmail octobercms

我的表格:

<form id="main-contact-form" name="contact-form" ata-request="onSend" data-request-success="alert('Message Sent')">

我似乎无法获得要发布的表格;我在哪里放置这个文件?我要编辑哪个文件才能将表单数据字段发送到我的电子邮件?我已经设置了后端邮件设置:

function onSend()
{
    // Collect input
    $name = post('name');
    $email = post('email');
    $message = post('message');


    // Submit form
    $to = System\Models\MailSettings::get('sender_email');
    $params = compact('name','email');
    Mail::sendTo($to, 'temp.website::mail.newrequest', $params);
    return true;
}

最佳答案

请引用文档:Plugin Components .

你可以创建一个组件(SomeForm.php)

<?php namespace My\Plugin\Components;

use Cms\Classes\ComponentBase;

class SomeForm extends ComponentBase
{
    public function componentDetails()
    {
        return [
            'name'        => 'Form',
            'description' => 'Some form'
        ];
    }

    public function onSend()
    {
        // Collect input
        $name = post('name');
        $email = post('email');
        $message = post('message');

        // Submit form
        $to = System\Models\MailSettings::get('sender_email');
        $params = compact('name','email');
        Mail::sendTo($to, 'temp.website::mail.newrequest', $params);
        return true;
    }
}

然后为它创建一个 View (例如default.htm)

<form id="main-contact-form" name="contact-form" data-request="{{ __SELF__ }}::onSend" data-request-success="alert('Message Sent')">
    ...
</form>

在页面/布局中的使用:

[someForm]
==
{% component "someForm" %}

关于php - OctoberCMS 发布表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29409963/

相关文章:

PHP/mySQL ORDER BY 问题

php - curl - 从网站上抓取大量内容

php - ajax请求中的ajax请求不返回SQL信息

javascript - 更改 JavaScript 原型(prototype)上的函数

ajax - Wordpress Rest API 登录

laravel - (Laravel) 通过数据透视表的多态关系

php - Laravel v5.6 错误显示此 "Undefined offset: 0 (View: C:\xampp\htdocs\schoolmanagement\resources\views\displaycombinedata.blade.php)"

php - 单步执行 xml,在标签处做一些特定的事情

php - 从 ip 等于该 ip 的所有表中删除

php - 如何在Microsoft graph API中使用用户的访问 token 或基于租户ID的访问 token ?