آیا می دانید تا کنون 8403 نفر در 18 دوره آموزشی سون لرن ثبت نام کرده اند !

دوره مجازی PHP (جلسه 25): طراحی و پیاده سازی پروژه سیستم پاسخگویی به سوالات

120 18238 ۲۴ مهر ۹۳
خوب امروز می خوایم اولین پروژه ی جامع این دوره رو براتون آموزش بدیم . در این پروژه ما می خوایم یه سیستم پاسخگویی به سوالات رو پیاده سازی کنیم و منطق و الگوریتم پیاده سازی برخی از قابلیت های کاربردی مثل فرم جستجو، صفحه بندی و ... رو براتون توضیح بدیم . قابلیت های این سیستم پرسش و پاسخ به این شکل هستند :
  • طراحی برنامه ای برای پاسخگویی به سوالات کاربران
  • قابلیت ارسال سوالات بدون عضویت توسط بازدیدکننده ها وجود دارد .
  • این سیستم، فرم عضویت و قابلیت عضویت کاربران را ندارد
  • سوالات سه وضعیت می توانند داشته باشند . (در انتظار تائید، منتشر شده، پاسخ داده شده)
  • سیستم فقط 1 عضو مدیر دارد که می تواند فعالیت های مدیریتی محتوا را انجام دهد
  • فقط مدیر می تواند سوالات را حذف، تائید ، عدم تائید کند و یا پاسخ دهد .
  • بخش پنل مدیریت وجود ندارد و برای راحتی بیشتر تمامی عملیات مدیریتی باید بر روی رابط اصلی سیستم انجام شود .
  • قابلیت جستجو در سوالات وجود داشته باشد .
  • قابلیت نمایش سوالات بر اساس نوع وضعیت آنها .
  • قابلیت صفحه بندی سوالات با تعین تعداد سوال در هر صفحه
  • ارسال SMS و ایمیل به کاربر پس از پاسخ دادن به سوال او
هدف از انتخاب و طراحی این پروژه برای شما این موارد هست :
  • آشنایی با نحوه طراحی و ایجاد پایگاه داده برای این اسکریپت
  • آشنایی با نحوه ی نمایش، ثبت، حذف و ویرایش یک موجودیت (محتوا - سوال/جواب ) در پایگاه داده
  • آشنایی با نحوه ی پیاده سازی برنامه بر اساس پارامترها و ایجاد راحتی بیشتر در تغیرها بعدی
  • آشنایی با نحوه ی پیاده سازی عملیات ورود و خروج کاربر (ادمین)
  • آشنایی با نحوه ی پیاده سازی قابلیت جستجو برای سایت (فرم جستجو)
  • آشنایی با منطق و نحوه ی صفحه بندی مطالب (سوالات) در برنامه های PHP
  • آشنایی با نحوه ی مدیریت سیستم بر روی رابط کاربری اصلی و عدم استفاده از پنل مدیریت
  • آشنایی با برخی ترفندهای امنیتی در پیاده سازی برنامه های PHP
  • آشنایی با نحوه ی آگاه سازی کاربران از طریق ایمیل پس از رویدادی خاص
نکته : مدت زمان ویدیوی آموزشی این جلسه بیش از 4 ساعت است . در واقع دو جلسه ی مربوط به طراحی این پروژه رو یکجا و امروز در اختیار شما قرار دادیم تا منتظر نمونید. اگر در میانه ی دیدن ویدیو خسته شدید حتما به خودتون استراحت فکری بدید . می تونید در دو مرحله ی 2 ساعته این ویدیو رو ببینید .
سوالات و پیشنهادات : سوالات و یا پیشنهادات خود رو در مورد این پروژه و یا پروژه های بعدی در بخش نظرات همین مطلب بنویسید.
این مطلب یک جلسه از کاملترین پکیج و دوره مجازی آموزش حرفه ای زبان PHP است و برای دیدن آن باید در این دوره ثبت نام کنید .
توضیحات : به جای صرف هزینه های چند صد هزارتومانی برای یادگیری زبان PHP ، تنها با 20% هزینه ی کلاس های حضوری، دوره ی کامل و حرفه ای آموزش زبان PHP را با بهترین کیفیت برای شما عزیزان برگزار می کنیم . با مشاهده ی سرفصل های این دوره جامع بودن آن را درک خواهید کرد . در انتهای دوره با آموزش انجام 3 پروژه ی کاربردی مهارت های خودتون رو به صورت کاملا عملی استفاده خواهید کرد . با انجام تمرین های مناسب، در پایان این دوره می توانید پروژه های عملی و کاربردی دلخواه را با زبان PHP انجام دهید . دی وی دی این دوره ی آموزشی پس از تکمیل، برای عزیزانی که تمایل داشته باشند ارسال خواهد شد .
:: مطالب جدید سون لرن را از طریق ایمیل دریافت کنید :

دیدگاه ها 120 دیدگاه برای این مطلب ارسال شده است.

  • ‏‏
    Syd Ali Bararsani(۱۵ اسفند ۱۳۹۴)

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

    $sql=”SELECT questions.id,questions.uname,questions.text,answers.text FROM questions INNER JOIN answers WHERE questions.id=answers.qid”;
    $result=$db->query($sql);
    while ($row = $result->fetch_assoc()) {
    echo ????
    }
    اگر یک جدول بود مشکلی نبود و بعنوان مثال با دستور echo $row[‘id] چاپ می کردم ولی حالا…

    • ‏‏
      لقمان آوند(۱۸ اسفند ۱۳۹۴)

      فیلد های select رو با کیورد as نامگذاری کنید و استفاده کنید. اینطوری مثلا :
      SELECT questions.id AS qid,questions.uname AS qUname , ...
      => echo $row['qid']

  • ‏‏
    علیرضا حاجی بابایی(۳ مرداد ۱۳۹۵)

    سلام و تشکر از دوره های عالیتون
    من هر چی سعی میکنم رابط کاربری رو باز کنم این خطا رو میده. مشکل از کجاست؟

    ( ! ) Warning: mysqli::mysqli(): in E:\wamp\www\php\25\project\inc\config.php on line 29
    Call Stack
    # Time Memory Function Location
    1 0.0025 152872 {main}( ) ..\index.php:0
    2 0.0045 163584 include_once( ‘E:\wamp\www\php\25\project\inc\actions.php’ ) ..\index.php:1
    3 0.0068 211280 include_once( ‘E:\wamp\www\php\25\project\inc\functions.php’ ) ..\actions.php:2
    4 0.0084 217912 include_once( ‘E:\wamp\www\php\25\project\inc\config.php’ ) ..\functions.php:3
    5 0.0085 219608 mysqli ( ) ..\config.php:29
    Connect failed: Accès refusé pour l’utilisateur: ‘qa_db_user’@’@localhost’ (mot de passe: OUI)

    • ‏‏
      لقمان آوند(۳ مرداد ۱۳۹۵)

      به دیتابیس نتونسته وصل شه
      دقت کنید حتما پایگاه داده رو ساخته باشید یا ایمپورت کرده باشید و یوزرش هم درست ست شده باشه

  • ‏‏
    fara php16(۲۴ دی ۱۳۹۵)

    با سلام
    من پروژه ی سیستم پاسخگویی رو اجرا کردم (از خود آقای آوند)
    و بعد از ثبت سوال با این error مواجه شدم

    Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\FCoders\Loghman Avand – PHP_SQLi\25\project\inc\functions.php on line 257

    Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\FCoders\Loghman Avand – PHP_SQLi\25\project\inc\functions.php on line 257

    Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\FCoders\Loghman Avand – PHP_SQLi\25\project\inc\functions.php on line 257

    Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\FCoders\Loghman Avand – PHP_SQLi\25\project\inc\functions.php on line 257

    در خط 255 هم $output = mysqli_real_escape_string($input); است که البته خودم sqli نوشتم قبلا sql بود.

    نتیجه :
    پیام ثبت اطلاعات نمایش داده میشه …
    وضعیت اطلاعات و تاریخ ثبت میشه اما نام – ایمیل – تلفن – سوال — رشته ی خالی است و هیچ چیز ثبت نمیشه و رکود اضافه میشه… به تعداد سوال هایی که ثبت میکنم..
    لطفا جواب بدید … نمی تونم جلو برم.

    • ‏‏
      لقمان آوند(۲۵ دی ۱۳۹۵)

      سلام
      مشکل همینه که تبدیلش کردید به sqli. چون این تابع نیاز به دو تا پارامتر داره. اون ورژن قبلی هم که با sql بوده منسوخ شده. سعی کنید با خوندن مستندات توابع mysqli به نسخه جدید تبدیل کنید

  • ‏‏

    استاد بنده نفهمیدم فرق $sql و $countSql در چی هست البته توضیح دادید اما کم توضیح دادید اگه میشود بیتشر توضیح بدید و فرق این دوتا رو بگید

    http://rozup.ir/view/2113029/888.png

    • ‏‏
      لقمان آوند(۲۰ اسفند ۱۳۹۵)

      کوئری $sql همه اطلاعات سوالات رو بهتون میده ولی $countSql فقط یه عدد (تعداد سوالات) رو بهتون میده

  • ‏‏
    حسین آقاتبار(۱۱ فروردین ۱۳۹۶)

    با سلام و خسته نباشی خدمت شما ، یک سوال داشتم اونم در مبحث صفحه بندی ،اینکه طبق این آموزش هربار برای هر صفحه با کوئری لیمیت خب صفحه بندی میشه ، اگر کل صفحات را یا محدوده بیشتری بگیریم و با js یا حالا مثلا انگولار صفحه بندی کنیم ، چطوره ؟ بهتره اونطوری؟
    با تشکر

    • ‏‏
      کیوان علی محمدی(۱۱ فروردین ۱۳۹۶)

      سلام دوست عزیز اگه تعداد صفحات رو کمتر در نظر بگیرید فقط در کل تعداد کوئری ها کمتر میشه ولی اصل خود کوئری تغییر نمیکنه. فرقی هم نداره با جی اس باشه یا همون خود php

      • ‏‏
        حسین آقاتبار(۱۲ فروردین ۱۳۹۶)

        ممنون بابت پاسخ ، بیشتر برای کمتر فشار اومدن روی دیتابیس گفتم که فک نکنم هم تأثیری داشته باشه 😕

  • نکته : برای پاسخگویی سریعتر و بهتر، بخش نظرات این مطلب مختص پرسش و پاسخ های کاربران ثبت نامی در دوره ی کاملترین پکیج و دوره مجازی آموزش حرفه ای زبان PHP است .
    اگر قبلا در این دوره ثبت نام کرده اید پس از ورود به سایت می توانید تمامی پرسش و پاسخ ها و نظرات مطرح شده ی این مطلب را مشاهده و اگر سوالی دارید در همینجا مطرح کنید.

    ورود/عضویت سریع با اکانت فیسبوک/جیمیل شما

    :: شما می توانید با استفاده از اکانت یاهو یا جیمیل خود به صورت کاملا امن، سریع و بدون نیاز به ورود اطلاعات عضو و وارد سایت شوید. در این صورت هیچ نیازی به ورود نام کاربری و رمز عبور خود نخواهید داشت و هویت شما از طریق ایمیلتان مورد تائید قرار می گیرد .
    برای استفاده از این روش باید در اکانت گوگل(جیمیل) و یا یاهوی خود لاگین باشید .
    عضویت/ ورود سریع با :
    در حال اتصال ...

    ورود به سایت

    ورود سریع با :
    در حال اتصال ...

    جستجو در سون لرن

    عبارت :
    7LearnTelegram