π Project Description#
Renta SV is a web platform developed to facilitate the management and search of rental properties in El Salvador. This project demonstrates my skills in backend development with PHP and MySQL database management.
π οΈ Technologies Used#
- Backend: PHP 7.4+
- Database: MySQL
- Frontend: HTML5, CSS3, JavaScript
- Tools: XAMPP, phpMyAdmin
- Design Pattern: MVC (Model-View-Controller)
β¨ Main Features#
For Users#
- π Advanced Search: Filters by location, price, and property type
- π± Responsive Design: Adaptable to all devices
- π Property Gallery: Detailed view with multiple images
- π Contact Form: Direct communication with owners
For Administrators#
- π Admin Panel: Complete property management
- π Dashboard: Visit and inquiry statistics
- βοΈ Complete CRUD: Create, read, update, and delete properties
- π₯ User Management: Access and permission control
π‘ Implemented Solutions#
Security#
// SQL injection prevention
$stmt = $connection->prepare("SELECT * FROM properties WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();
Query Optimization#
- Indexes on frequently searched fields
- Pagination for improved performance
- Cache for frequent results
π Project Structure#
RentaSV/
βββ controllers/
β βββ PropertyController.php
β βββ UserController.php
βββ models/
β βββ Property.php
β βββ User.php
βββ views/
β βββ properties/
β βββ admin/
βββ config/
β βββ database.php
βββ public/
βββ css/
βββ js/
βββ images/
π― Key Learnings#
- MVC Architecture: Complete implementation of Model-View-Controller pattern
- Web Security: Data validation, SQL injection prevention
- Session Management: Authentication and authorization system
- Database Optimization: Efficient queries and normalization
π Future Features#
- Integration with interactive maps
- Online payment system
- Real-time chat between tenants and owners
- RESTful API for mobile application
πΈ Screenshots#
Project screenshots are available in the project folder
π Project Links#
π GitHub Repository#
This project was developed as part of my backend web development training, demonstrating competencies in PHP, MySQL, and web application architecture.