قبل از هر کاری ابتدا باید صفحه مربوط به فرم تماس را طراحی کنیم: بنابراین یک فایل balde با نام contact.blade.php در مسیر resource/view بسازید و دستورات زیر را در آن کپی کنید:

جهت نمایش پیغام های خطای احتمالی در فرم، از تگ ul استفاده کردیم. خب تا اینجا ما صفحه مربوط به دریافت اطلاعات تماس را طراحی کردیم حال وارد فایل route.php شده و مسیر های لازم را در آن تعریف می کنیم:

این تابع نمایش فرم تماس با ما را میسر می سازد یعنی زمانیکه کاربر در مرورگر خود آدرس صفحه contact را وارد کند فرم طراحی شده نمایش داده خواهد شد. حال باید تابع مربوط به ارسال اطلاعات و پردازش فرم را نیز تعریف کنیم:

در صورتی که عمل submit در فرم اتفاق بیافتد تابع post فراخوانی می شود. چنانچه هر یک از کادر های مربوط به نام، موضوع و پیام خالی باشد باید پیغام خطای مناسب نمایش داده شود و در صورتیکه همه فیلدها مقدار دهی شده بود پیغامی مبنی بر ارسال موفقیت آمیز پیام نمایش داده شود. به منظور اعتبار سنجی فیلدها از دستور Validator استفاده کردیم قوانین مربوط به اعتبار سنجی نیز در متغیر rules تعریف شده اند. در انتها نیز با استفاده از دستور شرطی بررسی کردیم اگر خطایی رخ داده بود کاربر مجددا به صفحه تماس هدایت شده و پیغام های خطا را نیز به صفحه pass کردیم. در این مرحله لازم است تا تنظیمات مربوط به ارسال ایمیل را در فایل mail.php موجود در پوشه config بررسی کنیم. ما در این آموزش از mail استفاده کردیم. البته ممکن است شما روش دیگری را انتخاب کنید! وارد فایل mail.php شده و driver را روی mail تنظیم کنید:

حال نوبت به طراحی یک قالب برای ارسال محتویات به ایمیل گیرنده می رسد. یک فایل با نام template.blade.php در مسیر resource/view بسازید.

توجه داشته باشید که این فایل به عنوان ایمیل برای کاربر ارسال خواهد شد. بنابر این می توانید متن دلخواه، لوگوی سایت و یا پیام های تبریک مورد نظر خود را نیز در آن قرار دهید. در این مثال ما از متغیر های name, $email, $subject, $message$ جهت نمایش اطلاعاتی که کاربر در فرم وارد کرده استفاده کردیم. کافیست تا مقادیر مورد نظر را به این صفحه ارسال کنیم تا موقع پردازش با مقدار متغیرها جایگزین شوند. حالا به سراغ تابع مربوط به ارسال ایمیل می رویم کد زیر را در ادامه دستورات وارد شده در تابع POST موجود در فایل route.php وارد می کنیم.

دقت کنید از تابع Mail جهت ارسال ایمیل استفاده کردیم. پارامتر اول نام فایل قالب ما می باشد (email.blade.php) پارامتر دوم مقادیری است که باید به صفحه ارسال کنیم از این متغیرها در صفحه قالب استفاده کردیم و در انتها نیز مقادیر مربوط به آدرس ایمیل ارسال کننده و دریافت کننده پیام را تنظیم کردیم. همچنین از یک متغیر با نام status$ جهت نمایش وضعیت ارسال پیام استفاده کردیم. در صورتیکه به هر دلیلی خطایی رخ دهد این پیغام در خروجی صفحه ظاهر خواهد شد و در غیر اینصورت نیز پیغام مناسب مبنی بر ارسال پیام صادر خواهد شد.

image_pdfدانلود فایل pdf این مقاله
کلیدواژه ها :

این خبر را به اشتراک بگذارید :