A PHP-based hotel price tracking, analysis, and reporting application.
- Authentication flow (login + verification code)
- Dashboard
- Price analysis
- Reporting
- Notifications
- Hotel text/property management
- Admin-only user management
- Middleware-based access control
- PHP
- Composer autoload
- PDO
- Custom router (
App\Core\Route) - Middleware (
App\Middleware\AuthMiddleware) - Frontend: HTML/CSS/JavaScript (including charts)
public/→ app entry point (index.php)app/Controller/→ controllersapp/Models/→ database/model layerviews/→ UI templatesvendor/→ Composer dependenciesapp/cron/→ cron scripts
Defined in public/index.php:
/→Sign\SignController@index/verify-code→Sign\SignController@verifyCode
Authenticated routes:
/main→Front\MainController@index/priceanalyze→Front\PriceAnalyzeController@index/report→Front\ReportController@index/hoteltext→Front\HotelTextController@index/notifications→Front\NotificationsController@index
Authenticated + admin only:
/users→Front\UsersController@index
- Clone the repository.
- Install dependencies:
composer install
- Configure your web server document root to
public/. - Configure PHP/database settings.
- Start the application.
Use MAMP/Apache/Nginx and serve through public/index.php.
Example daily job at 12:00:
0 12 * * * /Applications/MAMP/bin/php/php8.3.14/bin/php "/Users/hunterlion/Documents/Belgeler - Çınar MacBook Air/Documents/OtelFiyatRaporlama/app/cron/priceupdate.php" >> "/Users/hunterlion/Documents/Belgeler - Çınar MacBook Air/Documents/OtelFiyatRaporlama/app/logs/priceupdate_cron.log" 2>&1
If no route matches:
- HTTP 404
- Response:
404 - Sayfa Bulunamadı
Session is started in public/index.php via session_start().