به سری آموزش برنامه‌نویسی شبکه اجتماعی خوش آمدید!

Welcome to The Social Media Programming Training Series!

25 بهمن 1399
به دوره آموزشی برنامه نویسی شبکه اجتماعی خوش آمدید!

آموزش برنامه نویسی MVC و شی گرای PHP کاملا پروژه محور

با سلام خدمت شما همراهان گرامی روکسو. به سری جدید عملی و کاربردی برنامه نویسی شی گرای PHP تحت عنوان آموزش ساخت شبکه اجتماعی با PHP خوش آمدید! این سری آموزشی کاملا پروژه محور بوده و می خواهیم در آن یک شبکه اجتماعی ساده و ابتدایی (مانند توییتر - فقط با قابلیت توییت متنی) بسازیم. در این پروژه تا حد ممکن موازین برنامه نویسی MVC و شی گرا رعایت خواهند شد تا شما هم با آن آشنا شوید.

قبل از شروع کار باید نکاتی را در مورد این پروژه بدانید:

  • این پروژه مناسب افراد مبتدی نیست و ما موضوعات ساده را توضیح نخواهیم داد. برای استفاده از این سری آموزشی باید با مباحث شی گرایی و زبان PHP آشنایی داشته باشید:
  • در سری آموزش ساخت شبکه اجتماعی با PHP، یک فریم ورک ساده خواهیم ساخت (صفر تا صد)! این فریم ورک متن باز خواهد بود.
  • در این سری از PHP 7 و Bootstrap 4 استفاده خواهد شد.
  • با اینکه قرار به توضیحات ابتدایی نیست اما در شروع سری و به صورت خلاصه در مورد برنامه نویسی شی گرا توضیحاتی خواهیم داد.
  • پس از ساخت فریم ورک، شروع به برنامه نویسی شبکه اجتماعی خودمان خواهیم کرد.

فریم ورکی که در سری آموزش ساخت شبکه اجتماعی با PHP قصد ساخت آن را داریم کاملا متن باز خواهد بود. همچنین کاملا بر پایه MVC بوده و از فایل htaccess. و mod-rewrite آپاچی استفاده خواهد کرد تا url های استاندارد بسازد و بر اساس همین url ها با کنترلر و ویو کار کند. این فریم ورک یک controller مرکزی خواهد داشت که بقیه controller ها به آن متصل خواهند بود و از طریق آن model ها و view ها را بارگذاری می کنند.

همچنین یک مجموعه کلاس های PDO شخصی سازی شده خواهیم ساخت و از prepared statement ها استفاده خواهیم کرد.

در مورد شبکه اجتماعی که می سازیم:

  • نام این شبکه را به صورت پیش فرض SharePost می گذاریم اما شما می توانید نام آن را کاملا تغییر دهید.
  • این شبکه اجتماعی دارای قابلیت های ثبت نام و user authentication (احراز هویت کاربر) است.
  • این شبکه اجتماعی از عملیات های CRUD برای پست ها پشتیبانی می کند.
  • از helper های هم برای redirect کردن و نمایش برخی از پیام ها استفاده می کنیم.
  • در آخر برنامه شبکه اجتماعی را روی یک هاست قرار می دهیم تا با این فرآیند هم آشنا شوید.

از آنجا که نمی خواهیم سری آموزش ساخت شبکه اجتماعی با PHP، بسیار طولانی شود عملکرد شبکه اجتماعی در حد ساده نگه داشته شده است اما با گذراندن سری می توانید خودتان آن را گسترش دهید و قابلیت های زیادی به آن اضافه کنید.

نکته: در آخر هر جلسه فایل های پروژه به صورت یک فایل فشرده در دسترس شما قرار خواهد گرفت.

نصب XAMPP و تنظیم دیتابیس

وب سایت XAMPP - آموزش ساخت شبکه اجتماعی با PHP

ما در این سری از XAMPP به عنوان سرور مجازی خود استفاده می کنیم و بهتر است که شما نیز از همین برنامه استفاده کنید اما از هر سرور مجازی دیگری مانند WAMP و LAMP نیز می توانید استفاده کنید. پس از نصب XAMPP قسمت XAMPP control panel را به صورت administrator باز کنید و با کلیک روی علامت های ضربدر کنار سرویس های Apache و MySQL آن ها را به عنوان سرویس نصب کنید. در آخر روی start مقابل هر کدام کلیک کنید تا شروع به کار کنند:

نصب Apache و MySQL به صورت سرویس (نیاز به administrator بودن دارد) - آموزش ساخت شبکه اجتماعی با PHP
نصب Apache و MySQL به صورت سرویس (نیاز به administrator بودن دارد)

حالا به درایو C بروید (محل نصب XAMPP) و پوشه های XAMPP و سپس htdocs را پیدا کنید. این مسیر، مسیر سرور شماست و فایل های پروژه را روی آن قرار می دهیم. به طور مثال در این پوشه، یک پوشه به نام test و در آن یک فایل index.php می سازیم. سپس در مرورگر خود آدرس localhost/test را وارد می کنیم. فایل index.php ما به صورت خودکار اجرا می شود.

حالا نوبت تنظیم پایگاه داده است. از مرورگر خود وارد آدرس localhost/phpmyadmin شوید و از سربرگ user accounts حساب کاربری root را پیدا کنید. همانطور که میبینید root هیچ رمز عبوری ندارد:

 آموزش ساخت شبکه اجتماعی با PHP
عبارت no جلوی ستون password یعنی این کاربر رمز عبور ندارد

از همین قسمت برای کاربر root گزینه edit privileges را زده و از سربرگ change password یک رمز عبور مناسب را انتخاب کنید. برای آسانی کار رمز عبور ما 123456 خواهد بود اما در حالت واقعی باید رمز عبور قوی و مناسبی انتخاب کنید.

نکته: پس از تنظیم رمز ممکن است به خطا برخورد کنید و دیگر نتوانید از phpmyadmin استفاده کنید. اگر چنین اتفاقی افتاد به محل نصب XAMPP رفته و به آدرس phpmyadmin>config.inc.php رفته و این فایل را باز کنید. در فایل باز شده جست و جو کنید تا عبارت زیر را پیدا کنید:

$cfg['servers'][$i]['password'] = ' ';

این عبارت معمولا در خط 22 این فایل قرار دارد. در این قسمت باید رمز عبور انتخابی خودتان را که به دیتابیس دادید وارد کنید (در پروژه ما می شود 123456):

$cfg['servers'][$i]['password'] = '123456';

فایل را ذخیره کرده و از آن خارج شوید.

ما در این پروژه از root برای توسعه استفاده می کنیم اما زمانی که بخواهیم پروژه را روی host (خدمات میزبانی) پیاده سازی کنیم حساب کاربری و رمز خود را تغییر خواهیم داد. همچنین در این پروژه از ویرایشگر VSCode به همراه افزونه های php inellisense و brackets pair colorizer و Emmet استفاده خواهیم کرد اما شما هیچ الزامی نسبت به استفاده از آن ندارید و می توانید از هر ویرایشگری که خواستید (مانند PHPStorm و ...) استفاده کنید.

در این قسمت محیط کار و شروع پروژه را آماده کرده ایم و در قسمت بعدی برخی از مباحث شی گرایی PHP را مرور خواهیم کرد. سپس وارد کدنویسی فریم ورک شخصی خودمان خواهیم شد.

تمام فصل‌های سری ترتیبی که روکسو برای مطالعه‌ی دروس سری آموزش ساخت شبکه اجتماعی توصیه می‌کند:
نویسنده شوید
دیدگاه‌های شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.