first commit
This commit is contained in:
@@ -0,0 +1,136 @@
|
||||
# Tugas WebGIS — PHP & Leaflet
|
||||
|
||||
Kumpulan tugas WebGIS berbasis PHP + MySQL, dijalankan menggunakan **XAMPP** (Apache + MySQL).
|
||||
|
||||
---
|
||||
|
||||
## Cara Menjalankan
|
||||
|
||||
### 1. Prasyarat
|
||||
- [XAMPP](https://www.apachefriends.org/) sudah terinstall
|
||||
- Apache dan MySQL sudah aktif (buka XAMPP Control Panel → klik **Start** pada keduanya)
|
||||
|
||||
### 2. Letakkan folder project
|
||||
Salin folder `tugas/` ke dalam direktori `htdocs` milik XAMPP:
|
||||
|
||||
| OS | Path htdocs |
|
||||
|---------|------------------------------------|
|
||||
| Windows | `C:\xampp\htdocs\tugas\` |
|
||||
| Linux | `/opt/lampp/htdocs/tugas/` |
|
||||
| macOS | `/Applications/XAMPP/htdocs/tugas/`|
|
||||
|
||||
Struktur yang diharapkan:
|
||||
```
|
||||
htdocs/
|
||||
└── tugas/
|
||||
├── 01/
|
||||
│ ├── index.php
|
||||
│ └── spbu_map.sql
|
||||
├── 02/
|
||||
│ ├── index.php
|
||||
│ └── webgis_db.sql
|
||||
├── 03/
|
||||
│ ├── index.php
|
||||
│ ├── pontianak.js
|
||||
│ ├── pontianak.json
|
||||
│ └── us-states.js
|
||||
└── 04/
|
||||
├── index.php
|
||||
└── spbu_map.sql
|
||||
```
|
||||
|
||||
### 3. Import database (untuk tugas yang menggunakan database)
|
||||
|
||||
Buka **phpMyAdmin** di `http://localhost/phpmyadmin`, lalu import file SQL:
|
||||
|
||||
| Tugas | File SQL | Database |
|
||||
|-------|-------------------|------------|
|
||||
| 01 | `01/spbu_map.sql` | `spbu_map` |
|
||||
| 02 | `02/webgis_db.sql`| `webgis_db`|
|
||||
| 04 | `04/spbu_map.sql` | `spbu_map` |
|
||||
|
||||
> Tugas 03 **tidak memerlukan database** — data sudah ada di file `.js` dan `.json`.
|
||||
|
||||
Cara import via phpMyAdmin:
|
||||
1. Buka `http://localhost/phpmyadmin`
|
||||
2. Klik tab **Import** di menu atas
|
||||
3. Pilih file `.sql` yang sesuai
|
||||
4. Klik **Go / Kirim**
|
||||
|
||||
Atau bisa juga melalui MySQL CLI:
|
||||
```bash
|
||||
mysql -u root -p < tugas/01/spbu_map.sql
|
||||
mysql -u root -p < tugas/02/webgis_db.sql
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Daftar Tugas
|
||||
|
||||
### Tugas 01 — SPBU Map Pontianak
|
||||
**URL:** `http://localhost/tugas/01/index.php`
|
||||
**Database:** `spbu_map`
|
||||
|
||||
Peta interaktif SPBU di Pontianak menggunakan Leaflet.js. Fitur:
|
||||
- Tambah SPBU dengan klik pada peta (isi nama, nomor WA, status 24 jam)
|
||||
- Marker berwarna: **hijau** = buka 24 jam, **merah** = tidak 24 jam
|
||||
- Drag marker untuk pindah lokasi (otomatis tersimpan)
|
||||
- Hapus data SPBU
|
||||
- Popup dengan info detail dan link WhatsApp
|
||||
|
||||
---
|
||||
|
||||
### Tugas 02 — WebGIS Jalan dan Parsil Tanah
|
||||
**URL:** `http://localhost/tugas/02/index.php`
|
||||
**Database:** `webgis_db`
|
||||
|
||||
WebGIS untuk manajemen data spasial jalan dan parsil tanah. Fitur:
|
||||
- Gambar **polyline** (jalan) dan **polygon** (parsil tanah) langsung di peta
|
||||
- Undo titik saat menggambar
|
||||
- CRUD atribut: nama, status jalan (Nasional/Provinsi/Kabupaten), status kepemilikan (SHM/HGB/HGU/HP)
|
||||
- Edit geometri (seret titik untuk ubah bentuk)
|
||||
- Kalkulasi otomatis panjang jalan (meter) dan luas tanah (m²)
|
||||
- Legenda warna per status
|
||||
|
||||
---
|
||||
|
||||
### Tugas 03 — Peta Kepadatan Penduduk Pontianak
|
||||
**URL:** `http://localhost/tugas/03/index.php`
|
||||
**Database:** Tidak diperlukan
|
||||
|
||||
Peta choropleth kepadatan penduduk per kecamatan di Pontianak menggunakan data GeoJSON lokal. Fitur:
|
||||
- Visualisasi gradasi warna berdasarkan kepadatan penduduk
|
||||
- Data koordinat UTM (Zone 49N) dikonversi ke WGS84 via Proj4js
|
||||
- Info panel saat hover kecamatan
|
||||
- Legenda kepadatan
|
||||
|
||||
---
|
||||
|
||||
### Tugas 04 — SPBU Map (Extended)
|
||||
**URL:** `http://localhost/tugas/04/index.php`
|
||||
**Database:** `spbu_map` (sama dengan Tugas 01)
|
||||
|
||||
Versi lanjutan dari Tugas 01 dengan fitur tambahan pada tampilan dan fungsionalitas peta SPBU Pontianak.
|
||||
|
||||
---
|
||||
|
||||
## Konfigurasi Database
|
||||
|
||||
Semua file PHP menggunakan koneksi default XAMPP:
|
||||
|
||||
```php
|
||||
$conn = new mysqli("localhost", "root", "", "nama_database");
|
||||
```
|
||||
|
||||
Jika password MySQL Anda berbeda dari default (kosong), ubah parameter ketiga sesuai password Anda pada masing-masing file `index.php`.
|
||||
|
||||
---
|
||||
|
||||
## Teknologi yang Digunakan
|
||||
|
||||
- **PHP** — backend & CRUD database
|
||||
- **MySQL** — penyimpanan data spasial
|
||||
- **Leaflet.js** — library peta interaktif
|
||||
- **Leaflet-Editable** — edit geometri di peta (Tugas 02)
|
||||
- **Proj4js** — konversi proyeksi koordinat (Tugas 03)
|
||||
- **OpenStreetMap** — tile layer peta dasar
|
||||
Reference in New Issue
Block a user