ارسال پیامک با لاراول راهنمایی ارسال سریع
ارسال پیامک با لاراول – از آنجا که تکنولوژی به سرعت در حال پیشرفت است، وب سایت ها نیز در پیشرفت و ارائه خدمات بهتر به کاربران خود هستند. یکی از روش هایی که وب سایت ها برای بهبود تجربه کاربری خود استفاده می کنند، استفاده از ارسال پیامک است. ارسال پیامک با لاراول یک روش عالی برای جلب توجه کاربران و افزایش تعامل کاربر با وب سایت است.
مخصوصا در ایران، استفاده از شماره تلفن همراه برای ثبت نام در وب سایت ها به طرز چشمگیری رایج شده است. در واقع، اکثر وب سایت های ایرانی از این روش برای ثبت نام کاربران خود استفاده می کنند. این روش نه تنها امکان ارائه خدمات بهتر و شخصی سازی شده تر را به وب سایت ها می دهد، بلکه امکان ارتباط مستقیم و فوری با کاربران را نیز فراهم می کند.
لاراول، یک چارچوب برنامه نویسی PHP است که از ارسال پیامک پشتیبانی می کند. با استفاده از این چارچوب، توسعه دهندگان می توانند به راحتی یک سیستم ارسال پیامک را توسعه دهند و با استفاده از این سیستم، امکانات فوق العاده ای را برای کاربران خود ایجاد کنند. از این رو، استفاده از لاراول برای ارسال پیامک در وب سایت ها یک روش بسیار موثر و کاربردی است.
نصب و پیکربندی لاراول
برای نصب و پیکربندی لاراول، باید در ابتدا اطمینان حاصل کنید که شرایط مورد نیاز برای نصب لاراول در سیستم شما فراهم باشد. این شرایط عبارتند از:
– PHP >= 7.3
– BCMath PHP Extension
– Ctype PHP Extension
– JSON PHP Extension
– Mbstring PHP Extension
– OpenSSL PHP Extension
– PDO PHP Extension
– Tokenizer PHP Extension
– XML PHP Extension
بعد از اینکه شرایط مورد نیاز را بررسی کردید، می توانید با استفاده از Composer، لاراول را نصب کنید. Composer یک ابزار مدیریت وابستگی برای PHP است که به شما اجازه می دهد تا پروژه های PHP را با اطمینان از فراهم بودن وابستگی های لازم اجرا کنید.
برای نصب لاراول با استفاده از Composer، ابتدا Terminal یا Command Prompt را باز کرده و دستور زیر را وارد کنید:
composer global require laravel/installer
این دستور، نصبگر لاراول را بر روی سیستم شما نصب خواهد کرد.
پس از نصب نصبگر، می توانید با استفاده از دستور زیر، یک پروژه جدید لاراول ایجاد کنید:
laravel new project-name
جایی که `project-name` است، نام پروژه شما را وارد کنید.
پس از اینکه پروژه لاراول شما ایجاد شد، حال نوبت به نصب کتابخانه لاراول برای ارسال پیامک است. ما برای این کار از سرویس پیامک کوتاه sms.ir استفاده میکنیم.
نصب کتابخانه لاراول برای ارسال پیامک
برای نصب و راه اندازی سیستم ارسال پیامک sms.ir بر روی لاراول خود نیاز است تا مراحل زیر را به صورت کامل انجام دهید.
شما می توانید از طریق composer بسته لاراول را نصب نمایید.
composer require cryptommer/smsir
سپس دستور زیر را در ترمینال نرم افزار خود وارد نمایید.
php artisan vendor:publish --provider Cryptommer\Smsir\SmsirServiceProvider
سپس دستور زیر را به فایل env اضافه نمایید.
SMSIR_API_KEY= SMSIR_LINE_NUMBER=
برای دریافت API کافیست در وب سایت sms.ir ثبت نام و احراز هویت کنید. سپس از بخش دریافت کلید وب سرور می توانید به راحتی کلید API خود را دریافت کنید.
پس از این مرحله نیاز است تا درخواست شماره تماس ارسال پیامک خود را از sms.ir دریافت کنید و در فیلدهای خواسته شده در رشته کد بالا آن را وارد کنید.
پس از طی کردن این مراحل باید خط زیر را به هر کلاسی که می خواهید از توابع smsir استفاده نمایید اضافه کنید.
use Cryptommer\Smsir\Smsir;
تا اینجای کار توانسته اید به راحتی هر چه تمام وب سایت خود را به وب سرور sms.ir متصل کنید و از امکانات آن استفاده کنید.
برای اطلاعات بیشتر می توانید به گیت هاب sms.ir مراجعه کنید.
در ادامه به مراحلی که برای ارسال پیامک نیاز دارید می پردازیم.
ساخت blade جدید برای فرم ارسال پیامک
در ابتدا برای ساخت یک view جدید در لاراول نیاز است که یک فایل جدید به هر نامی که دوست دارید در پوشه resources بسازید. نامی که ما در نظر گرفته ایم در این آموزش sms.blade.php است.
پس از ساخت این فایل حال باید کدهای زیر را در sms.blade.php کپی کنید.
<!DOCTYPE html> <!-- Created By CodingNepal --> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>Login Form Design | CodeLab</title> <link rel="stylesheet" href="style.css"> </head> <style> @import url('https://fonts.googleapis.com/css?family=Poppins:400,500,600,700&display=swap'); *{ margin: 0; padding: 0; box-sizing: border-box; font-family: 'Poppins', sans-serif; } html,body{ display: grid; height: 100%; width: 100%; place-items: center; background: #f2f2f2; /* background: linear-gradient(-135deg, #c850c0, #4158d0); */ } ::selection{ background: #4158d0; color: #fff; } .wrapper{ width: 380px; background: #fff; border-radius: 15px; box-shadow: 0px 15px 20px rgba(0,0,0,0.1); } .wrapper .title{ font-size: 35px; font-weight: 600; text-align: center; line-height: 100px; color: #fff; user-select: none; border-radius: 15px 15px 0 0; background: linear-gradient(-135deg, #c850c0, #4158d0); } .wrapper form{ padding: 10px 30px 50px 30px; } .wrapper form .field{ height: 50px; width: 100%; margin-top: 20px; position: relative; } .wrapper form .field input{ height: 100%; width: 100%; outline: none; font-size: 17px; padding-left: 20px; border: 1px solid lightgrey; border-radius: 25px; transition: all 0.3s ease; } .wrapper form .field input:focus, form .field input:valid{ border-color: #4158d0; } .wrapper form .field label{ position: absolute; top: 50%; left: 20px; color: #999999; font-weight: 400; font-size: 17px; pointer-events: none; transform: translateY(-50%); transition: all 0.3s ease; } form .field input:focus ~ label, form .field input:valid ~ label{ top: 0%; font-size: 16px; color: #4158d0; background: #fff; transform: translateY(-50%); } form .content{ display: flex; width: 100%; height: 50px; font-size: 16px; align-items: center; justify-content: space-around; } form .content .checkbox{ display: flex; align-items: center; justify-content: center; } form .content input{ width: 15px; height: 15px; background: red; } form .content label{ color: #262626; user-select: none; padding-left: 5px; } form .content .pass-link{ color: ""; } form .field input[type="submit"]{ color: #fff; border: none; padding-left: 0; margin-top: -10px; font-size: 20px; font-weight: 500; cursor: pointer; background: linear-gradient(-135deg, #c850c0, #4158d0); transition: all 0.3s ease; } form .field input[type="submit"]:active{ transform: scale(0.95); } form .signup-link{ color: #262626; margin-top: 20px; text-align: center; } form .pass-link a, form .signup-link a{ color: #4158d0; text-decoration: none; } form .pass-link a:hover, form .signup-link a:hover{ text-decoration: underline; } </style> <body> <div class="wrapper"> <div class="title"> send sms @if(Session::has('success')) {{Session::get('success')}} @endif </div> <form action="{{route('send2')}}" method="POST"> @csrf <div class="field"> <input type="text" required name="phone"> <label>phone number</label> @error('phone') <?php $message = "your phone number is not correct!!!" ?> {{$message}} @enderror </div> <div class="field"> <input type="submit" value="send sms"> </div> </form> </div> </body> </html>
پس از وارد کردن کدهای فوق به فایل مورد نظر یک فرم مطابق با عکس زیر ساخته خواهد شد.
فرم ارسال پیامک
در مرحله بعد نوبت به مسیر دهی آدرسها در لاراول است.
مسیر دهی فرم و کنترلر
در این مرحله باید به پوشه routes و فایل web.php مراجعه کنید و این فایل را همانند کدهای زیر اصلاح کنید.
<?php use App\Http\Controllers\SmsController; use Illuminate\Support\Facades\Route; Route::get('/', function () { return view('welcome'); }); Route::get('sms', [SmsController::class, 'show']); Route::post('/sendsms', [SmsController::class, 'sendsms2'])->name('send2');
حال باید کد زیر را در ترمینال نرم افزار خود وارد کنید تا سرور لاراول راه اندازی شود.
php artisan serv
برای دیدن فرم ارسال پیامک باید در مرورگر خود به این آدرش مراجعه کنید.
http://127.0.0.1:8000/sms
ساخت کنترلر برای ارسال پیامک
در ابتدا برای ساخت کنترلر باید کد زیر را در ترمینال خود وارد کنید.
php artisan make:controller SmsController
با اجرای کد فوق یک فایل در مسیر app/http به نام SmsController ساخته می شود.
برای پردازش و ارسال پیامک کافیست کدهای زیر را در فایل SmsController وارد کنید .
<?php namespace App\Http\Controllers; use Cryptommer\Smsir\Objects\Parameters; use Illuminate\Http\Request; use Cryptommer\Smsir\Smsir; class SmsController extends Controller { public function show(){ return view('sms'); } public function sendsms2(Request $request){ // dd($request); $request->validate([ 'phone' => 'required|regex:/^(\+98|0)?9\d{9}$/', ]); $mobile = $request->phone; $name = "CODE"; $value = rand(1000, 9999); $parameter = new Parameters($name, $value); $parameters = array($parameter); $send = smsir::Send(); $templateId = 100000; $send->Verify($mobile, $templateId, $parameters); return redirect()->back()->with('success', 'sms sent!!'); } }
به همین سادگی شما موفق به ارسال پیامک به شماره وارد شده در فرم خواهید شد.
برای اینکه بتوانید موضوعات نوشته شده را به راحتی درک کنید و تمرین کنید ویدیو پست را با دقت تا انتها ببینید.
آشنایی با مای وب
ما در مای وب بر آن هستیم تا بتوانیم به روزترین مطالب درمورد وردپرس و آموزش طراحی وب سایت را برای کاربران خودمون در قالب فایلهای ویدیویی و متنی فراهم کنیم. انشالله بتوانیم بهترین خدمات را به شما عزیزان همراه ارائه دهیم.
دیدگاهتان را بنویسید