{"id":51601,"date":"2024-11-18T08:46:00","date_gmt":"2024-11-18T01:46:00","guid":{"rendered":"https:\/\/www.rumahweb.com\/journal\/?p=51601"},"modified":"2024-11-21T15:55:53","modified_gmt":"2024-11-21T08:55:53","slug":"cara-membuat-contact-form-di-codeigniter-4","status":"publish","type":"post","link":"https:\/\/www.rumahweb.com\/journal\/cara-membuat-contact-form-di-codeigniter-4\/","title":{"rendered":"Cara Membuat Contact Form di CodeIgniter 4"},"content":{"rendered":"\n<p>Dibandingkan hanya menampilkan alamat email dan nomor telepon perusahaan, <em>contact form<\/em> pada website bisa menjadi solusi yang lebih efektif. Dalam artikel ini, kami akan membahas bagaimana cara membuat <em>contact form<\/em> di CodeIgniter 4 dengan mudah.<\/p>\n\n\n\n\n\n<p>Tidak hanya membuat <em>contact form<\/em>, kami juga akan membahas bagaimana cara setting SMTP di <a href=\"https:\/\/www.rumahweb.com\/journal\/codeigniter-4\/\" target=\"_blank\" rel=\"noopener\" title=\"codeigniter 4\">codeigniter 4<\/a>, agar formulir yang Anda buat dapat berjalan dengan baik. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Membuat Contact Form di CodeIgniter 4<\/h2>\n\n\n\n<p>Untuk membuat <em>contact form<\/em> di CodeIgniter 4 terbilang cukup mudah, Anda dapat mengikuti langkah-langkahnya dibawah hingga selesai.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1. Buat Controller Contact Form<\/h3>\n\n\n\n<p>Buatlah file controller dengan nama <strong>Contact.php<\/strong> dalam folder <strong>\/app\/Controllers\/<\/strong> dengan isi dibawah:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nnamespace App\\Controllers;\n\nuse CodeIgniter\\Controller;\nuse Config\\Services;\n\nclass Contact extends Controller\n{\n    public function index()\n    {\n        return view('contact_form');\n    }\n\n    public function send()\n    {\n        \n        $email = \\Config\\Services::email();\n\n        $name    = $this-&gt;request-&gt;getPost('name');\n        $emailTo = $this-&gt;request-&gt;getPost('email');\n        $telpTo = $this-&gt;request-&gt;getPost('telp');\n        $message = $this-&gt;request-&gt;getPost('message');\n\n        $email-&gt;setTo('fredric@journal-rw.my.id'); \/\/ Email tujuan\n        $email-&gt;setFrom('fredric@journal-rw.my.id', 'WebSaya'); \/\/ Email pengirim\n        $email-&gt;setSubject('&#091;FORM CONTACT] Ada pesan baru dari WebSaya');\n        $email-&gt;setMessage(\"\n        Nama: {$name}\n        Email: {$emailTo}\n        No Telp: {$telpTo}\n        Isi pesan: {$message}\n        \");\n\n        if ($email-&gt;send()) {\n            return redirect()-&gt;to('\/contact')-&gt;with('success', 'Please be pattiens, our superb staff response soon.');\n        } else {\n            return redirect()-&gt;to('\/contact')-&gt;with('error', 'Try later~');\n        }\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>Simpan <em>script <\/em>diatas, kemudian lanjut ke step 2.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2. Tambah Routes Contact Form<\/h3>\n\n\n\n<p>Setelah <em>Controller <\/em>dibuat, Anda perlu menambahkan <em>Routes <\/em>mapnya dalam file <strong>\/app\/Config\/Routes.php<\/strong> dengan isi seperti dibawah.<\/p>\n\n\n\n<p><code>$routes-&gt;get('\/contact', 'Contact::index');<br \/>$routes-&gt;post('\/contact', 'Contact::send');<\/code><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/routes-codeigniter4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"360\" height=\"209\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/routes-codeigniter4.png\" alt=\"\" class=\"wp-image-51622\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/routes-codeigniter4.png 360w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/routes-codeigniter4-300x174.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/routes-codeigniter4-270x157.png 270w\" sizes=\"auto, (max-width: 360px) 100vw, 360px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Silahkan disesuaikan dengan <em>routes <\/em>yang sudah Anda miliki saat ini, contohnya seperti gambar diatas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3. Buat file View Contact Form<\/h3>\n\n\n\n<p>Bagian tampilan <em><\/em><em>contact form<\/em> di CodeIgniter 4, dengan membuat file bernama <strong>contact_form.php<\/strong> dalam folder <strong>\/app\/Views\/<\/strong> dan isikan script dibawah:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;!DOCTYPE html>\n&lt;html lang=\"en\">\n&lt;head>\n    &lt;meta charset=\"UTF-8\">\n    &lt;title>Contact Form&lt;\/title>\n    &lt;meta name=\"description\" content=\"Contact form Fredric Lesomar di codeigniter 4 \">\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    &lt;link rel=\"shortcut icon\" type=\"image\/png\" href=\"\/favicon.ico\">\n    &lt;style {csp-style-nonce}>\n        * {\n            transition: background-color 300ms ease, color 300ms ease;\n        }\n        *:focus {\n            background-color: rgba(221, 72, 20, .2);\n            outline: none;\n        }\n        html, body {\n            color: rgba(33, 37, 41, 1);\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\";\n            font-size: 16px;\n            margin: 0;\n            padding: 0;\n            -webkit-font-smoothing: antialiased;\n            -moz-osx-font-smoothing: grayscale;\n            text-rendering: optimizeLegibility;\n        }\n        header {\n            background-color: rgba(247, 248, 249, 1);\n            padding: .4rem 0 0;\n        }\n        .menu {\n            padding: .4rem 2rem;\n        }\n        header ul {\n            border-bottom: 1px solid rgba(242, 242, 242, 1);\n            list-style-type: none;\n            margin: 0;\n            overflow: hidden;\n            padding: 0;\n            text-align: right;\n        }\n        header li {\n            display: inline-block;\n        }\n        header li a {\n            border-radius: 5px;\n            color: rgba(0, 0, 0, .5);\n            display: block;\n            height: 44px;\n            text-decoration: none;\n        }\n        header li.menu-item a {\n            border-radius: 5px;\n            margin: 5px 0;\n            height: 38px;\n            line-height: 36px;\n            padding: .4rem .65rem;\n            text-align: center;\n        }\n        header li.menu-item a:hover,\n        header li.menu-item a:focus {\n            background-color: rgba(221, 72, 20, .2);\n            color: rgba(221, 72, 20, 1);\n        }\n        header .logo {\n            float: left;\n            height: 44px;\n            padding: .4rem .5rem;\n        }\n        header .menu-toggle {\n            display: none;\n            float: right;\n            font-size: 2rem;\n            font-weight: bold;\n        }\n        header .menu-toggle button {\n            background-color: rgba(221, 72, 20, .6);\n            border: none;\n            border-radius: 3px;\n            color: rgba(255, 255, 255, 1);\n            cursor: pointer;\n            font: inherit;\n            font-size: 1.3rem;\n            height: 36px;\n            padding: 0;\n            margin: 11px 0;\n            overflow: visible;\n            width: 40px;\n        }\n        header .menu-toggle button:hover,\n        header .menu-toggle button:focus {\n            background-color: rgba(221, 72, 20, .8);\n            color: rgba(255, 255, 255, .8);\n        }\n        header .heroe {\n            margin: 0 auto;\n            max-width: 1100px;\n            padding: 1rem 1.75rem 1.75rem 1.75rem;\n        }\n        header .heroe h1 {\n            font-size: 2.5rem;\n            font-weight: 500;\n        }\n        header .heroe h2 {\n            font-size: 1.5rem;\n            font-weight: 300;\n        }\n        section {\n            margin: 0 auto;\n            max-width: 1100px;\n            padding: 2.5rem 1.75rem 3.5rem 1.75rem;\n        }\n        section h1 {\n            margin-bottom: 2.5rem;\n        }\n        section h2 {\n            font-size: 120%;\n            line-height: 2.5rem;\n            padding-top: 1.5rem;\n        }\n        section pre {\n            background-color: rgba(247, 248, 249, 1);\n            border: 1px solid rgba(242, 242, 242, 1);\n            display: block;\n            font-size: .9rem;\n            margin: 2rem 0;\n            padding: 1rem 1.5rem;\n            white-space: pre-wrap;\n            word-break: break-all;\n        }\n        section code {\n            display: block;\n        }\n        section a {\n            color: rgba(221, 72, 20, 1);\n        }\n        section svg {\n            margin-bottom: -5px;\n            margin-right: 5px;\n            width: 25px;\n        }\n        .further {\n            background-color: rgba(247, 248, 249, 1);\n            border-bottom: 1px solid rgba(242, 242, 242, 1);\n            border-top: 1px solid rgba(242, 242, 242, 1);\n        }\n        .further h2:first-of-type {\n            padding-top: 0;\n        }\n        .svg-stroke {\n            fill: none;\n            stroke: #000;\n            stroke-width: 32px;\n        }\n        footer {\n            background-color: rgba(221, 72, 20, .8);\n            text-align: center;\n        }\n        footer .environment {\n            color: rgba(255, 255, 255, 1);\n            padding: 2rem 1.75rem;\n        }\n        footer .copyrights {\n            background-color: rgba(62, 62, 62, 1);\n            color: rgba(200, 200, 200, 1);\n            padding: .25rem 1.75rem;\n        }\n        @media (max-width: 629px) {\n            header ul {\n                padding: 0;\n            }\n            header .menu-toggle {\n                padding: 0 1rem;\n            }\n            header .menu-item {\n                background-color: rgba(244, 245, 246, 1);\n                border-top: 1px solid rgba(242, 242, 242, 1);\n                margin: 0 15px;\n                width: calc(100% - 30px);\n            }\n            header .menu-toggle {\n                display: block;\n            }\n            header .hidden {\n                display: none;\n            }\n            header li.menu-item a {\n                background-color: rgba(221, 72, 20, .1);\n            }\n            header li.menu-item a:hover,\n            header li.menu-item a:focus {\n                background-color: rgba(221, 72, 20, .7);\n                color: rgba(255, 255, 255, .8);\n            }\n        }\n    &lt;\/style>\n    \n    \n    &lt;style>\n    body {\n      font-family: sans-serif;\n    }\n    .form-container {\n      width: 400px;\n      margin: 0 auto;\n      padding: 20px;\n      border: 1px solid #ccc;\n    }\n    label {\n      display: block;\n      margin-bottom: 5px;\n    }\n    input&#091;type=\"text\"],\n    input&#091;type=\"email\"],\n    input&#091;type=\"telp\"],\n    input&#091;type=\"message\"],\n    textarea {\n      width: 100%;\n      padding: 10px;\n      margin-bottom: 10px;\n      border: 1px solid #ccc;\n      box-sizing: border-box;\n    }\n    textarea {\n      height: 100px;\n    }\n    button {\n      background-color: #4CAF50;\n      color: white;\n      padding: 10px 20px;\n      border: none;\n      cursor: pointer;\n    }\n  &lt;\/style>\n&lt;\/head>\n&lt;body>\n  \n  \n  \n&lt;!-- HEADER: MENU + HEROE SECTION -->\n&lt;header>\n\n    &lt;div class=\"menu\">\n        &lt;ul>\n            &lt;li class=\"logo\">\n                &lt;a href=\"\/\" target=\"_blank\">\n                    &lt;svg role=\"img\" aria-label=\"Visit CodeIgniter.com official website!\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 2100 500\" height=\"44\">&lt;path fill=\"#dd4814\" d=\"M148.2 411c-20.53-9.07-34.48-28.61-36.31-50.99 1.2-23.02 13.36-44.06 32.67-56.61-3.17 7.73-2.4 16.53 2 23.6 5.01 7 13.63 10.36 22.07 8.61 12.02-3.38 19.06-15.86 15.68-27.89-1.2-4.21-3.6-8.03-6.88-10.91-13.6-11.06-20.43-28.44-18-45.81 2.33-9.2 7.42-17.52 14.61-23.8-5.4 14.4 9.83 28.61 20.05 35.6 18.14 10.88 35.6 22.84 52.32 35.81 18.27 14.4 28.23 36.94 26.67 60-4.11 24.54-21.47 44.8-45.13 52.4 47.33-10.53 96.13-48.13 97.06-101.46-.93-42.67-26.4-80.96-65.33-98.4h-1.73c.86 2.09 1.28 4.34 1.2 6.61.13-1.47.13-2.93 0-4.4.21 1.73.21 3.47 0 5.2-2.96 12.13-15.2 19.6-27.36 16.64-4.86-1.2-9.2-3.93-12.32-7.87-15.6-20 0-42.76 2.61-64.76 1.6-28.13-11.25-55.02-34.05-71.46 11.41 19.02-3.79 44-14.84 58.21-11.07 14.21-27.07 24.8-40.11 37.2-14.05 13.07-26.93 27.44-38.49 42.8-24.99 30.53-34.8 70.8-26.67 109.4 11.15 37.2 42.07 65.15 80.2 72.4h.21l-.13-.12Zm324.56-159.8q0-17.92 6.16-35.56 6.44-17.92 18.48-31.92t29.68-22.68q17.64-8.96 40.04-8.96 26.6 0 45.36 12.04 19.04 12.04 28 31.36l-15.4 9.52q-4.76-9.8-11.76-16.52-6.72-6.72-14.56-10.92-7.84-4.2-16.24-5.88-8.4-1.96-16.52-1.96-17.92 0-31.64 7.28-13.72 7.28-23.24 19.04-9.24 11.76-14 26.6-4.76 14.56-4.76 29.68 0 16.52 5.6 31.64 5.88 15.12 15.68 26.88 10.08 11.48 23.52 18.48 13.72 6.72 29.68 6.72 8.4 0 17.08-1.96 8.96-2.24 17.08-6.72 8.4-4.76 15.4-11.48 7-7 11.76-16.8l16.24 8.4q-4.76 11.2-13.44 19.88-8.68 8.4-19.32 14.28-10.64 5.88-22.68 8.96-11.76 3.08-23.24 3.08-20.44 0-37.52-8.96-17.08-8.96-29.4-23.24-12.32-14.56-19.32-32.76-6.72-18.48-6.72-37.52Zm263.48 103.6q-15.96 0-29.12-5.88-13.16-6.16-22.96-16.52-9.52-10.36-14.84-24.08Q664 294.6 664 279.48q0-15.4 5.32-29.12 5.6-13.72 15.12-24.08 9.8-10.36 22.96-16.52t28.84-6.16q15.68 0 28.84 6.16 13.44 6.16 22.96 16.52 9.8 10.36 15.12 24.08 5.6 13.72 5.6 29.12 0 15.12-5.32 28.84t-15.12 24.08q-9.52 10.36-22.96 16.52-13.16 5.88-29.12 5.88Zm-52.92-75.04q0 12.32 4.2 22.96 4.2 10.36 11.2 18.48 7.28 7.84 16.8 12.32 9.8 4.48 20.72 4.48 10.92 0 20.44-4.48 9.8-4.76 17.08-12.6 7.28-8.12 11.48-18.76 4.2-10.64 4.2-22.96 0-12.04-4.2-22.68-4.2-10.92-11.48-18.76-7.28-8.12-17.08-12.6-9.52-4.76-20.44-4.76-10.92 0-20.44 4.76-9.52 4.48-16.8 12.6-7.28 8.12-11.48 19.04-4.2 10.64-4.2 22.96ZM900.6 354.8q-15.12 0-28-6.16-12.88-6.44-22.12-16.8t-14.56-23.8q-5.04-13.72-5.04-28.56 0-15.4 5.04-29.12 5.04-14 13.72-24.36 8.96-10.36 21-16.24 12.32-6.16 26.88-6.16 18.48 0 32.76 9.8 14.28 9.52 22.4 23.24V147.6h19.04v179.76q0 7.84 6.72 7.84V352q-4.2.84-6.72.84-6.72 0-11.76-4.2-5.04-4.48-5.04-10.64v-14.28Q946.24 338 931.4 346.4t-30.8 8.4Zm4.2-16.8q7 0 14.84-2.8 8.12-2.8 15.12-7.56 7-5.04 11.76-11.48 5.04-6.72 6.16-14.28V256.8q-2.8-7.56-8.12-14-5.32-6.72-12.32-11.76-6.72-5.04-14.56-7.84-7.84-2.8-15.4-2.8-11.76 0-21.28 5.04-9.52 5.04-16.52 13.44-6.72 8.12-10.36 18.76-3.64 10.64-3.64 21.84 0 11.76 4.2 22.4 4.2 10.64 11.48 18.76 7.28 7.84 17.08 12.6Q893.32 338 904.8 338Zm173.04 16.8q-15.96 0-29.4-5.88-13.16-6.16-22.96-16.52-9.8-10.64-15.4-24.36-5.32-13.72-5.32-29.4 0-15.4 5.32-28.84 5.6-13.72 15.12-23.8 9.8-10.36 23.24-16.24 13.44-6.16 29.12-6.16 15.96 0 29.12 6.16 13.44 5.88 22.96 16.24 9.52 10.36 14.84 23.8 5.32 13.44 5.32 28.56v4.48q0 2.24-.28 3.08h-124.88q.84 11.76 5.32 21.84 4.76 9.8 12.04 17.08 7.28 7.28 16.52 11.48 9.52 3.92 20.16 3.92 7 0 14-1.96t12.88-5.32q5.88-3.36 10.64-8.12 4.76-5.04 7.28-10.92l16.52 4.48q-3.36 8.12-9.52 14.84-6.16 6.44-14.28 11.48-8.12 4.76-17.92 7.56-9.8 2.52-20.44 2.52Zm-53.48-83.44h107.24q-.84-11.76-5.6-21.28-4.48-9.8-11.76-16.8-7-7-16.52-10.92-9.24-3.92-19.88-3.92-10.64 0-20.16 3.92t-16.8 10.92q-7 7-11.48 16.8-4.2 9.8-5.04 21.28Zm193.2 80.64h-38.64V153.2h38.64V352Zm93.52.84q-14.84 0-26.88-5.88t-21-15.96q-8.68-10.36-13.44-23.8-4.76-13.44-4.76-28.56 0-15.96 5.04-29.68 5.04-13.72 14-24.08 8.96-10.36 21.56-16.24 12.6-5.88 27.72-5.88 17.08 0 29.96 7.84 12.88 7.56 21.28 20.44v-25.76h32.76V345q0 16.24-6.16 29.12-6.16 12.88-17.08 21.84-10.64 8.96-25.76 13.72-14.84 4.76-32.48 4.76-24.08 0-40.6-7.84-16.24-8.12-28-22.68l20.44-19.88q8.4 10.36 21 16.24 12.88 5.88 27.16 5.88 8.68 0 16.52-2.24 8.12-2.52 14.28-7.56 6.16-5.04 9.52-12.88 3.64-7.84 3.64-18.48v-18.48q-7.28 12.6-20.44 19.6-13.16 6.72-28.28 6.72Zm12.6-29.96q6.16 0 11.76-1.96t10.36-5.32q4.76-3.36 8.4-7.84 3.64-4.48 5.6-9.52v-35q-5.04-12.88-15.96-20.72-10.64-7.84-22.4-7.84-8.68 0-15.68 3.92-7 3.64-12.04 10.08-5.04 6.16-7.84 14.28-2.52 8.12-2.52 16.8 0 8.96 3.08 16.8t8.4 13.72q5.6 5.88 12.88 9.24 7.28 3.36 15.96 3.36Zm243.88-62.44V352h-37.52v-82.32q0-17.64-6.16-25.76-6.16-8.12-17.08-8.12-5.6 0-11.48 2.24-5.88 2.24-11.2 6.44-5.04 3.92-9.24 9.52t-6.16 12.32V352h-37.52V205.28h33.88v27.16q8.12-14 23.52-21.84t34.72-7.84q13.72 0 22.4 5.04 8.68 5.04 13.44 13.16 4.76 8.12 6.44 18.48 1.96 10.36 1.96 21Zm70.28 91.56h-37.52V205.28h37.52V352Zm0-167.16h-37.52V147.6h37.52v37.24Zm114.24 129.92 7.56 29.68q-7.56 3.36-18.48 6.72-10.92 3.36-22.96 3.36-7.84 0-14.84-1.96-6.72-1.96-12.04-6.16-5.04-4.48-8.12-11.2-3.08-7-3.08-16.8v-84.28h-19.32v-28.84h19.32v-47.6h37.52v47.6h30.8v28.84h-30.8v71.68q0 7.84 3.92 11.2 4.2 3.08 10.08 3.08t11.48-1.96q5.6-1.96 8.96-3.36Zm91.56 40.04q-17.64 0-31.92-5.88-14.28-6.16-24.36-16.52t-15.68-24.08q-5.32-13.72-5.32-28.84 0-15.68 5.32-29.4 5.32-14 15.4-24.36 10.08-10.64 24.36-16.8 14.56-6.16 32.48-6.16 17.92 0 31.92 6.16 14.28 6.16 24.08 16.52 10.08 10.36 15.12 24.08 5.32 13.72 5.32 28.56 0 3.64-.28 7 0 3.36-.56 5.6h-113.4q.84 8.68 4.2 15.4 3.36 6.72 8.68 11.48 5.32 4.76 12.04 7.28 6.72 2.52 14 2.52 11.2 0 21-5.32 10.08-5.6 13.72-14.56l32.2 8.96q-8.12 16.8-26.04 27.72-17.64 10.64-42.28 10.64Zm-38.08-88.48h76.16q-1.4-16.52-12.32-26.32-10.64-10.08-26.04-10.08-7.56 0-14.28 2.8-6.44 2.52-11.48 7.28t-8.4 11.48q-3.08 6.72-3.64 14.84Zm225.12-62.72v34.16q-17.08.28-30.52 6.72-13.44 6.16-19.32 18.76V352h-37.52V205.28h34.44v31.36q3.92-7.56 9.24-13.44 5.32-6.16 11.48-10.64t12.32-6.72q6.44-2.52 12.32-2.52h4.48q1.68 0 3.08.28Z\"\/>&lt;\/svg>\n                &lt;\/a>\n            &lt;\/li>\n            &lt;li class=\"menu-toggle\">\n                &lt;button id=\"menuToggle\">&amp;#9776;&lt;\/button>\n            &lt;\/li>\n            &lt;li class=\"menu-item hidden\">&lt;a href=\"\/\">HOME&lt;\/a>&lt;\/li>\n            &lt;li class=\"menu-item hidden\">&lt;a href=\"\/map\">MAP JOGJA&lt;\/a>&lt;\/li>\n        &lt;\/ul>\n    &lt;\/div>\n\n    &lt;div class=\"heroe\">\n\n        &lt;h1>Contact Form&lt;\/h1>\n\n        &lt;h2>For more information, please feel free contact us!&lt;\/h2>\n\n    &lt;\/div>\n\n&lt;\/header>\n\n&lt;section>\n    &lt;!-- Display success or error messages -->\n    &lt;?php if (session()->getFlashdata('success')): ?>\n        &lt;p style=\"color: green;\">&lt;?= session()->getFlashdata('success') ?>&lt;\/p>\n    &lt;?php endif; ?>\n    &lt;?php if (session()->getFlashdata('error')): ?>\n        &lt;p style=\"color: red;\">&lt;?= session()->getFlashdata('error') ?>&lt;\/p>\n    &lt;?php endif; ?>\n\n    &lt;form action=\"&lt;?= base_url('contact') ?>\" method=\"post\">\n        &lt;label for=\"name\">Name:&lt;\/label>\n        &lt;input type=\"text\" id=\"name\" name=\"name\" required>\n        &lt;br>\n\n        &lt;label for=\"email\">Email:&lt;\/label>\n        &lt;input type=\"email\" id=\"email\" name=\"email\" required>\n        &lt;br>\n\n        &lt;label for=\"telp\">Telp:&lt;\/label>\n        &lt;input type=\"text\" id=\"telp\" name=\"telp\" required>\n        &lt;br>\n\n        &lt;label for=\"message\">Message:&lt;\/label>\n        &lt;textarea id=\"message\" name=\"message\" required>&lt;\/textarea>\n\n\n        &lt;button type=\"submit\">Send&lt;\/button>\n    &lt;\/form>\n  \n&lt;\/section>\n  \n&lt;footer>\n    &lt;div class=\"environment\">\n\n        &lt;p>Page rendered in {elapsed_time} seconds using {memory_usage} MB of memory.&lt;\/p>\n\n        &lt;p>Environment: &lt;?= ENVIRONMENT ?>&lt;\/p>\n\n    &lt;\/div>\n\n    &lt;div class=\"copyrights\">\n\n        &lt;p>&amp;copy; &lt;?= date('Y') ?> CodeIgniter Foundation. CodeIgniter is open source project released under the MIT\n            open source licence.&lt;\/p>\n\n    &lt;\/div>\n\n&lt;\/footer>\n&lt;\/body>\n&lt;\/html><\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Setting SMTP di CodeIgniter<\/h2>\n\n\n\n<p><em>Contact form<\/em> yang Anda buat memerlukan settingan SMTP agar dapat menerima pesan masuk dari website. Settingan SMTP bisa Anda lakukan dalam file <strong>.env<\/strong> dengan contoh dibawah:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>email.protocol = smtp<br \/>email.SMTPHost = namadomain-Anda atau smtp.gmail.com<br \/>email.SMTPUser = user@namadomain-Anda atau userAnda@gmail.com<br \/>email.SMTPPass = passwordAkunEmail<br \/>email.SMTPPort = 587<\/code><\/pre>\n\n\n\n<p>Jika menggunakan SMTP dari akun Gmail, silahkan Anda siapkan password aplikasinya mengikuti panduan: <a href=\"https:\/\/www.rumahweb.com\/journal\/cara-mengaktifkan-application-password-gmail\/\" target=\"_blank\" rel=\"noopener\" title=\"\">Password Aplikasi Gmail<\/a><\/p>\n\n\n\n<p>Pelajari lebih detail tentang cara setting SMTP di CodeIgniter 4 pada artikel berikut: <a href=\"https:\/\/www.rumahweb.com\/journal\/setting-email-smtp-pada-codeigniter-4\/\" target=\"_blank\" rel=\"noopener\" title=\"\">Setting SMTP CodeIgniter  4<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tahap Pengujian<\/h2>\n\n\n\n<p>Setelah mengikuti semua step diatas dengan benar, Anda bisa lakukan testing dengan mengakses webnya dengan URL: <em>namadomain\/contact<\/em><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"689\" height=\"619\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4.png\" alt=\"Contact form di codeigniter 4\" class=\"wp-image-51761\" style=\"width:449px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4.png 689w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4-300x270.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4-370x332.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4-270x243.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4-335x300.png 335w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/form_contact_ci4-570x512.png 570w\" sizes=\"auto, (max-width: 689px) 100vw, 689px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Jika setting SMTP yang Anda lakukan sudah benar, maka pesan dari <em>contact form<\/em> di codeigniter 4 akan masuk secara otomatis ke email yang di setting.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"895\" height=\"247\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4.png\" alt=\" pesan dari contact form di codeigniter 4 akan masuk secara otomatis ke email terdaftar\" class=\"wp-image-51636\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4.png 895w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4-300x83.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4-768x212.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4-370x102.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4-270x75.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4-570x157.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/11\/emailMasuk_codeigniter4-740x204.png 740w\" sizes=\"auto, (max-width: 895px) 100vw, 895px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Sampai pada tahap ini, proses pembuatan <em>contact form<\/em> di CodeIgniter 4 sudah selesai. Agar kedepannya tidak menerima <em>spamming<\/em>, sebaiknya Anda mengaktifkan <a href=\"https:\/\/www.rumahweb.com\/journal\/captcha-adalah\/\" target=\"_blank\" rel=\"noopener\" title=\"captcha adalah\">reCaptcha<\/a>.<\/p>\n\n\n\n<p>Demikian artikel kami tentang cara membuat contact form di CodeIgniter 4, semoga bermanfaat.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dibandingkan hanya menampilkan alamat email dan nomor telepon perusahaan, contact form pada website bisa menjadi solusi yang lebih efektif. Dalam artikel ini, kami akan membahas bagaimana cara membuat contact form di CodeIgniter 4 dengan mudah. Tidak hanya membuat contact form, kami juga akan membahas bagaimana cara setting SMTP di codeigniter 4, agar formulir yang Anda [&hellip;]<\/p>\n","protected":false},"author":338,"featured_media":51665,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[543,1392,726],"class_list":{"0":"post-51601","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-web-programming","8":"tag-codeigniter","9":"tag-codeigniter-4","10":"tag-contact-form"},"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/51601","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/users\/338"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/comments?post=51601"}],"version-history":[{"count":0,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/51601\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media\/51665"}],"wp:attachment":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media?parent=51601"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/categories?post=51601"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/tags?post=51601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}