Skip to content

Latest commit

 

History

History
159 lines (114 loc) · 6.09 KB

readme-fa.md

File metadata and controls

159 lines (114 loc) · 6.09 KB

دفترچه تلفن با PHP

فارسی | English


دمو

براساس زمان UTC است.

طریقه‌ی نصب

۱. ابتدا دیتابیس خود را در mySQL بسازید.

۲. اطلاعات دیتابیس‌تان و PROJECT_URL خودتان را در فایل config.php وارد کنید.

مرحله ۳ و ۴: (به دو روش مختلف)

۳. برای افزوده‌شدن خودکار جدول‌های دیتابیس و افزودن نام کاربری و رمز عبور مدیریت، کافی‌ست /setup را اجرا کنید.

مثال: https://localhost/PHP-Phone-Book/setup

۴. پس از نصب، پوشه setup را حذف کنید.

یــا اینکه:

۳. پوشه setup را حذف کنید.

۴. فایل ‍php_phone_book.sql را در دیتابیس خود IMPORT کنید.

دراین‌صورت نام کاربری شما admin و رمز عبورتان 123 خواهد بود.

۵. دسترسی یا permission پوشه‌ی media را روی ‍777 قرار دهید.

sudo chmod -R 777 media

حالا PROJECT_URL خود را اجرا کنید:

صفحه‌ی اصلی: https://localhost/PHP-Phone-Book/

پنل مدیریت: https://localhost/PHP-Phone-Book/admin2023


موراد مورد نیاز

  • وب سرور Apache
  • دیتابیس MySQL
  • نسخه‌ی PHP بالاتر و یا مساوی با 8.2.4
  • ماژول mod-rewrite باید در Apache فعال شده باشد.
  • اکستنشن یا افرونه‌های mysqli, mysqlnd, pdo ,pdo_mysql در PHP باید فعال شده باشند.

برای چک کردن مورد بالا <?php phpinfo(); ?> را در یک فایل PHP بنویسید و اجرا کنید. PHPInfo

  • در فایل کانفیگ Apache شما باید allowOverride برای دایرکتوری root شما روی All تنظیم شده باشد..

اطلاعات برنامه

  • وب سرور: Apache
  • زبان برنامه: PHP 8.2.4
  • پارادایم برنامه: OOP
  • الگوی معماری: MVC
  • موتور قالب‌ساز: TWIG 3.0
  • دیتابیس: MySQL
  • لایسنس: MIT

موارد به‌ کار رفته شده:

  • متد پیمایش در URLها.
  • موتور قالب‌ساز Twig
  • استفاده از PDO و Prepared Statements در ارتباط با mySQL.
  • متد مدیریت خطاهای احتمالیِ .
  • استفاده از Singleton (الگوی طراحی) برای برخی از class ها.
  • پشتیبانی از سیستم چندزبانه.
  • چندین option برای کانفیک برنامه در config.php.
  • سیستم صفحه‌بندی و سیستم چیدمان دلخواه برای موارد اضافه شده.
  • سیستم captcha برای ورود (سمت کلاینت و سرور).

    دو مورد : Google reCaptcha یا Cloudflare Turnstile

  • استفاده از Bootstrap و jQuery.

راهنمایی

افزودن زبان

  1. فایل زبان خود را در پوشه‌ی lang بسازید:

    مثال: fr.php یا ar.php که باید مثل فایلlang/fa.php توسعه دهید .

  2. در html صفحه‌های خود، زبان تازه را اضافه کنید.
<div class="changeLanguage">
     <button id="fr">Fr</button>
     <button id="en">En</button>
</div>
<!-- و همچنین نگاه کنید به:
 .changeLanguage click function
 در:
 view/assets/js/app.js و backend.js  -->

راه حل‌ها

فعال کردن ماژول mod_rewrite

دستور کامند زیر را اجرا کنید:

$ sudo a2enmod rewrite

تنظیم allowoverride روی All

ویرایش فایل کانفیگ Apache:

دستور کامند زیر را برای ورود به دایرکتوری apache خود اجرا کنید:

$ cd /etc/apache2

سپس دستور کامند زیر را برای ورود به محیط ویرایش فایل کانفیگ، اجرا کنید:

$ sudo nano apache2.conf

بگردید و خطوط زیر را پیدا کنید:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

و به شکل زیر تغییر دهید:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>
  • دایرکتوری روت شما /var/www/ است.

  • همانطور که می‌بینید فقط AllowOverride None به AllowOverride All تبدیل شده است.

برای ذخیره کلیدهای Ctrl + o و سپس برای خروج Ctrl + x را بفشارید.

سپس، دستور کامند زیر را برای راه‌اندازی دوباره‌ی Apache اجرا کنید:

$ sudo systemctl restart apache2

(بیشتر بدانید: Apache mod_rewrite module)


Linkedin: ramoures
E-mail: ramoures@gmail.com