آموزش ساختن فرم تماس با ما

daskhatmin فواد طهماسبی
34,447 بازدید
آموزش ساختن فرم تماس با ما

گاهی اوقات شما به یک صفحه ارتباط با ما نیاز دارید تا کاربران یا بازدید کنندگان بتونن با شما در ارتباط باشن . برای ساختن همچین صفحه ای می تونید از کدهای زیر استفاده کنید .

تو این آموزش به دو فایل زیر نیاز داریم :

1. contact.php

2. send_contact.php

مرحله اول :

فایل contact.php رو باز کنید و کدهای زیر رو بنویسید :

<html>
    <body>
        <form action="send_contact.php" method="post">
            subject: <input type="text" name="subject"><br>
            message:  <textarea name="message" cols="50" rows="4" id="detail"></textarea><br>
            name:    <input type="text" name="name"><br>
            email:   <input type="text" name="email"><br>
            <input type="submit" value="Submit" name="submit">
        </form>
    </body>
</html>

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

مرحله دوم :

کدهای زیر رو هم داخل send_contact.php وارد کنید :

<?php

if (isset($_POST['submit'])) {
    $to = "your_email@example.com";
    $from = "your_email@your_domain.com";

    $subject = $_POST['subject'];
    $message = $_POST['message'];
    $name = $_POST['name'];
    $email = $_POST['email'];

    $body = "Name: $name\r\n E-Mail: $email\r\n Message:\r\n $message";


    $headers = 'From: ' . $from . "\r\n" .
        'Reply-To: ' . $email . "\r\n" .
        'X-Mailer: PHP/' . phpversion();

    if (@mail($to, $subject, $body, $headers)) { 
        $message = "Email Sent Successfully!";
    } else {
        $message = "Error: Sending email failed.";
    }
}
?>

 

 

email-php

پیش نمایش فایلهای آموزش

دانلود “فرم تماس با ما”
نسخه 1.0.0 4 بار دانلود شده است 1 KB

فایلهای این آموزش کاملا پیاده سازی و تست شده است.

daskhatmin

فواد طهماسبی

فواد طهماسبی هستم، موسس وبسایت آموزشی دسخط. مهندسی نرم افزار خوندم و چندین سال تجربه کاری مرتبط با تکنولوژیهای توسعه وب دارم. علاقمند به ایده پردازی و توسعه کسب و کارهای اینترنتی هستم.

53 دیدگاه برای “آموزش ساختن فرم تماس با ما”

  1. پریسا گفت:

    سلام
    برای فرم تماس حتما باید در دیتا بیس جدول بسازیم؟؟

    1. سلام،
      خیر، این فرم تماس به صورت ایمیل ارسال میشه و نیازی به دیتابیس نداره.

  2. a.m گفت:

    عه داش کار نمیکنه بخدا

  3. a.m گفت:

    سلام دوست عزیز سایت خیلی خوبی دارید من همون کارایی که نوشته بودیدو انجام دادم ولی وقتی فرم رو تکمیل میکنم یا نمیکنم فرقی نمیکنه رو دکمه میزنم برام send_contact.php داخلش هرچی هستو میاره مثل این
    2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
    فقط اینو میاره همین اگه میشه ج به ایمیلم بفرستید ممنون میشم

  4. پرویز گفت:

    سلام ، بله شما درست می فرمایید شاید به سرور ارسال نکند اما این اطلاعات دریافتی از سوی کاربر در پایگاه داده دخیره شده و سپس به مدیر سایت برای مشاهده اطلاعات ورودی ارسال خواهد شد شاید بگویید بدون پایگاه داده هم می توان هر پروژه وب را برنامه نویسی کرد اما همان گونه HTML بدون CSS هیچ است ، همان گونه هم PHP بدون پایگاه داده،برای ذخیره سازی اطلاعات هیچ است. شاید خنده دار باشد این مثل مرد بی زن می ماند و واقعا هم همین طور است. با تشکر

  5. پرویز گفت:

    سلام , کاملا متوجه شدم یعنی این دستور اطلاعات دریافت شده از کاربر را به صورت پیام تبدیل خواهد کرد و با کاراکتر n\ یک سطر جدید ایجاد می نماید یعنی ابتدا نام کاربر سپس ایمیل او و از آخر پیام دریافتی از سوی کاربر و تمام اینها توسط n\ در یک سطر جدید چاپ و سپس به سرور ارسال می شود می توان گفت : کار n\ همانند کلید Enter در نرم افزار یا ویراشگر قدرتمند Word است حتما می دانید ملاک تشخیص پاراگراف در Word کلید Enter صفحه کلید می باشد. آیا من درست متوجه شدم . باشکر

    1. فؤاد طهماسبی گفت:

      بله، درسته.
      فقط اینکه به سرور نمیفرسته به کاربر ایمیل میکنه. و کلید اینتر همه جا بسته به سیستم عامل همان n\ یا r\ یا r\n\ است.

  6. پرویز گفت:

    سلام خدمت شما ببخشید دستور $body = “From: $name\n E-Mail: $email\n Message:\n $message”; دقیقا چه کاری یا کارهایی انجام می دهد؟ با تشکر

    1. فؤاد طهماسبی گفت:

      ظاهرش یکم پیچیده شده، باید ساده تر مینوشتیم.
      داره اسم و ایمیل و متن پیام رو به عنوان متن پیام در میاره که بفرسته. اگه یه بار اجرا کنید، میبینید که یه متنی براتون ارسال میشه که اینا هستن.
      از لحاظ کد هم n\یعنی خط جدید و وقتی از ” استفاده کنید هنگام نمایش تبدیل میشه به newline.

  7. میلاد گفت:

    با سلام ببخشید این کد لوکال که نمیشه تستش کرد باید توی سرور امتحان کرد. wamp server

  8. Farbod Shams گفت:

    با سلام و تشکر فراوان برای این مطلب،
    سوالی که برام پیش اومده اینه که اگر بخوام به جای استفاده از دستور submit به عنوان دکمه ارسال کننده از دستور Image استفاده کنم،

    چه دستوری باید به کد PHP یا HTML اضافه بشه که این فرایند درست کار کنه، من بدون این که چیزی اضافه کنم امتحان کردم و نتیجه مطلوبی نگرفتم (هیچ اتفاقی نمیفته!!!) خواهش می کنم راهنماییم کنید.

    مرسی

  9. مهدی گفت:

    سلام مهندس

    همه چیز عالی کار میکنه فقط دو تا مشکل دارم:
    1. فیلدها اگر خالی یا محتوای اشتباه نوشته بشه بازم ارسال میشه.
    2. پیام های ارسالی توی پوشه اسپم ایمیل میره.

    با تشکر

  10. پرویز گفت:

    سلام من تمام موارد را متوجه شدم اما دستور $body = “From: $name\n E-Mail: $email\n Message:\n $message”; را متوجه نشدم لطفا آن را به من توضیح دهید.

    1. فؤاد طهماسبی گفت:

      این برای متنی هست که ایمیل میشه. شما این متن رو میبینید تو ایمیل ارسال شده.

دیدگاه‌های بیشتر

کد HTMLCSSJavaScriptPHP