BELEDİYE TALEP TAKİP SİSTEMİ
Stajyer Proje Dokümanı
Ham PHP + MariaDB
Proje süresi Yaklaşık 5-6 hafta
Geliştirici 2 stajyer
Amaç PHP ve SQL öğrenerek çalışan bir web
sistemi geliştirmek
1. Projenin Konusu
Belediyeye gelen istek ve şikâyetlerin kaydedildiği, ilgili birime gönderildiği ve
sonuçlandırılana kadar takip edildiği basit bir web uygulaması yapılacaktır.
Örnek talepler:
Yolda çukur bulunması
Çöp konteynerinin dolu olması
Parkta kırık bank bulunması
Sokak lambasının çalışmaması
Su kaçağı görülmesi
Zabıta ile ilgili bir bildirim yapılması
Bu sistem SAYSİS'ten tamamen bağımsız olacaktır. Ayrı bir klasörde ve ayrı bir MariaDB
veritabanında çalışacaktır.
2. Projenin Amacı
PHP ile sayfa oluşturmayı öğrenmek
Formlardan veri almayı öğrenmek
MariaDB'ye kayıt eklemek, listelemek ve güncellemek
Kullanıcı girişi ve oturum mantığını öğrenmek
İki kişi olarak Git üzerinden ortak çalışmak
Başlangıcı ve sonu belli, çalışan bir proje ortaya çıkarmak
3. Kullanılacak Teknolojiler
Konu Kullanılacak araç
Programlama dili PHP 8 veya üzeri
Veritabanı MariaDB veya MySQL
Arayüz HTML, CSS ve Bootstrap, [Link] (harita
kütüphanesi)
Tarayıcı tarafı Basit JavaScript
Veritabanı bağlantısı PDO
Kod paylaşımı Git
Laravel, Symfony, CodeIgniter veya başka bir framework kullanılmayacaktır. Proje ham
PHP ile geliştirilecektir.
4. Sistemde Olacak Kullanıcılar
Kullanıcı türü Yapabilecekleri
Yönetici Kullanıcı, birim ve kategori ekleyebilir. Tüm
talepleri görebilir.
Kayıt personeli Yeni talep oluşturabilir ve talepleri
listeleyebilir.
Birim personeli Kendisine gönderilen talepleri görebilir ve
durumunu değiştirebilir.
5. Talep Durumları
Bir talep aşağıdaki sıraya göre ilerleyebilir:
Durum Anlamı
Yeni Talep sisteme yeni kaydedildi.
Birime Gönderildi İlgili belediye birimi seçildi.
İşlemde Talep üzerinde çalışma başladı.
Tamamlandı Talep çözüldü.
Reddedildi Talep gerekçesi yazılarak kapatıldı.
6. Yapılacak Ekranlar
6.1 Giriş Ekranı
Kullanıcı adı ve parola alanı bulunacak.
Doğru bilgiler girilirse ana sayfa açılacak.
Yanlış girişte anlaşılır bir hata gösterilecek.
6.2 Ana Sayfa
Toplam talep sayısı
Yeni talep sayısı
İşlemdeki talep sayısı
Tamamlanan talep sayısı
6.3 Yeni Talep Ekranı
Alan Zorunlu mu?
Talep başlığı Evet
Kategori Evet
Mahalle Evet
Açıklama Evet
Öncelik Evet
Fotoğraf Hayır
6.4 Talep Listesi
Talepler tablo halinde gösterilecek.
Talep numarası, başlık, kategori, mahalle, durum ve tarih görünecek.
Duruma ve kategoriye göre filtre yapılabilecek.
Bir talebe tıklanınca detay sayfası açılacak.
6.5 Talep Detay Ekranı
Talebin tüm bilgileri gösterilecek.
İlgili belediye birimi seçilebilecek.
Talebin durumu değiştirilebilecek.
Yapılan işlem için kısa bir açıklama yazılabilecek.
6.6 Yönetim Ekranları
Kullanıcı ekleme ve pasife alma
Belediye birimi ekleme
Talep kategorisi ekleme
Mahalle ekleme
7. Veritabanında Olacak Tablolar
Tablo Ne tutacak?
users Sisteme giriş yapan kullanıcılar
departments Belediye birimleri
categories Talep kategorileri
neighborhoods Mahalleler
requests Ana talep kayıtları
request_notes Taleplere yazılan işlem notları
7.1 requests Tablosunda Olması Gereken Alanlar
Alan Açıklama
id Kayıt numarası
request_no BLD-2026-0001 gibi talep numarası
title Talebin kısa başlığı
category_id Kategori
neighborhood_id Mahalle
department_id İlgili belediye birimi
description Talep açıklaması
priority Düşük, normal, yüksek
status Yeni, işlemde, tamamlandı gibi
created_by Kaydı oluşturan kullanıcı
created_at Oluşturulma tarihi
updated_at Son değişiklik tarihi
8. Temel Kurallar
Talep numarası sistem tarafından otomatik oluşturulacaktır.
Talep başlığı, kategori, mahalle ve açıklama boş bırakılamaz.
Tamamlanan talepte sonuç açıklaması yazılması zorunludur.
Reddedilen talepte ret nedeni yazılması zorunludur.
Kullanıcı parolaları düz yazı olarak saklanmayacaktır.
Veritabanı işlemlerinde PDO kullanılacaktır.
Kullanıcıdan gelen değerler SQL cümlesine doğrudan eklenmeyecektir.
Gerçek vatandaş bilgisi kullanılmayacaktır.
9. İki Stajyerin Görev Paylaşımı
Stajyer 1 Stajyer 2
Veritabanı tablolarını hazırlama HTML ve Bootstrap sayfalarını hazırlama
Giriş ve oturum sistemi Talep ekleme formu
Talep ekleme ve güncelleme PHP kodları Talep listeleme ve detay sayfası
Kullanıcı ve birim işlemleri Ana sayfa sayaçları ve filtreler
Veritabanı sorguları Hata mesajları ve görünüm düzenlemeleri
Görevler tamamen ayrılmayacaktır. Her iki stajyer de diğerinin yaptığı bölümü
inceleyecek ve proje sonunda tüm sistemi genel olarak anlatabilecektir.
10. Basit Çalışma Planı
Hafta Yapılacak iş
1. Hafta PHP, HTML, form ve PDO örnekleri;
veritabanı tabloları
2. Hafta Giriş sistemi ve ana sayfa
3. Hafta Yeni talep ekleme ve talep listesi
4. Hafta Talep detay, birime gönderme ve durum
değiştirme
5. Hafta Yönetim ekranları, filtreler ve hata
düzeltmeleri
6. Hafta Test, düzenleme, kullanım anlatımı ve
sunum
11. Projenin Tamamlanmış Sayılması İçin
Kullanıcı sisteme giriş yapabilmelidir.
Yeni talep eklenebilmelidir.
Eklenen talepler listelenebilmelidir.
Talep detayları görüntülenebilmelidir.
Talep bir belediye birimine gönderilebilmelidir.
Talep durumu değiştirilebilmelidir.
Kategori, mahalle, birim ve kullanıcı tanımları yapılabilmelidir.
Yanlış ve boş girişlerde anlaşılır hata verilmelidir.
Veritabanı kurulum dosyası teslim edilmelidir.
Kurulum adımlarını anlatan kısa bir README dosyası bulunmalıdır.
12. Teslim Edilecekler
Projenin tüm PHP, HTML, CSS ve JavaScript dosyaları
Veritabanını oluşturan SQL dosyası
Örnek kullanıcı ve örnek talepler
Kısa kurulum açıklaması
Kısa kullanıcı açıklaması
Projenin 5-10 dakikalık sunumu
13. Son Not
Bu projede amaç çok gelişmiş bir sistem yapmak değildir. Amaç; düzenli,
anlaşılır ve çalışan bir PHP projesi geliştirmektir. Önce temel işlemler doğru
şekilde tamamlanmalı, daha sonra zaman kalırsa yeni özellik eklenmelidir.