A modern web-based gaming platform built with PHP and Oracle Database, featuring a digital game store, user authentication, shopping cart functionality, and payment processing.
ORON is a comprehensive gaming platform that allows users to browse, purchase, and manage their digital game collection. The platform features a modern, responsive design with secure user authentication, shopping cart functionality, and integrated payment processing through Midtrans.
![]() |
![]() |
|---|---|
| Store Extensive catalog with real-time search and filters |
Game Detail Full pricing, description, and discount display |
![]() |
![]() |
|---|---|
| Shopping Cart Add/remove games, manage quantities, IDR pricing |
Midtrans Payment Secure checkout via multiple methods |
- Personal Library: Access to purchased games
- Game Management: Organize and manage game collection
- Purchase History: Track all transactions and purchases
- reCAPTCHA Protection: Bot protection on login forms
- Password Hashing: Secure password storage using PHP's password_hash()
- SQL Injection Prevention: Prepared statements with Oracle database
- Session Security: Secure session management
- Input Validation: Comprehensive input sanitization
- User Registration: Secure account creation with validation
- Login System: Password-protected authentication with reCAPTCHA
- Password Recovery: Secure password reset functionality
- Profile Management: User profile and account settings
- Session Management: Secure session handling
- PHP 7.4+: Server-side scripting language
- Oracle Database: Primary database system
- Composer: Dependency management
- HTML5: Semantic markup
- CSS3: Modern styling with custom design system
- JavaScript: Interactive functionality
- Font Awesome: Icon library
- Swiper.js: Carousel and slider functionality
- Midtrans: Payment gateway integration
- Google reCAPTCHA: Bot protection
- Google Fonts: Typography (Lemon Milk font family)
{
"midtrans/midtrans-php": "^2.6",
"vlucas/phpdotenv": "^5.6",
"google/recaptcha": "^1.3"
}Before running this project, ensure you have:
- PHP 7.4 or higher
- Oracle Database (XE or higher)
- Oracle Instant Client (for PHP Oracle extension)
- Composer (for dependency management)
- Web Server (Apache/Nginx)
- PHP Extensions:
oci8(Oracle database extension)curljsonmbstring
git clone <repository-url>
cd PBL_Oroncomposer install- Create an Oracle database instance
- Import the database schema from
assets/databases/ - Configure database connection in
.envfile
Create a .env file in the root directory:
DB_USERNAME=your_oracle_username
DB_PASSWORD=your_oracle_password
MIDTRANS_SERVER_KEY=your_midtrans_server_key
MIDTRANS_CLIENT_KEY=your_midtrans_client_key
RECAPTCHA_SITE_KEY=your_recaptcha_site_key
RECAPTCHA_SECRET_KEY=your_recaptcha_secret_keyConfigure your web server to point to the project root directory and ensure PHP has access to the Oracle extension.
PBL_Oron/
├── assets/ # Static assets
│ ├── databases/ # Database files
│ ├── images/ # General images
│ ├── storeImg/ # Product images
│ └── reset.css # CSS reset
├── features/ # Core application features
│ ├── cart/ # Shopping cart functionality
│ ├── connection/ # Database connection
│ ├── history/ # Transaction history
│ ├── library/ # User game library
│ ├── login/ # Authentication system
│ ├── pages/ # Static pages
│ ├── process/ # Payment processing
│ ├── profile/ # User profile management
│ └── store/ # Game store functionality
├── Styling/ # Frontend assets
│ ├── css/ # Stylesheets
│ ├── images/ # UI images
│ └── JS/ # JavaScript files
├── vendor/ # Composer dependencies
├── composer.json # PHP dependencies
└── README.md # This file
The application connects to Oracle Database using the configuration in features/connection/connection.php. Ensure your Oracle instance is running and accessible.
Midtrans payment gateway is configured in the cart and process files. Update the API keys in your .env file for production use.
Google reCAPTCHA is used for bot protection. Configure your site and secret keys in the .env file.
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.



