BLP205
WEB PROGRAMMING II
- Semester
- 3
- Type
- Zorunlu
- Theory / Practice / Lab
- 3 / 1 / 0
- ECTS
- 5
- Level of study
- Ön Lisans
- Mode of study
- Birinci Öğretim
- Instructor
- Öğr. Gör. Osman Doğuş GÜLGÜN
- Prerequisite courses
- Web Programlama I
- Internship status
- Yok
Course objectives
Bu dersin amacı, öğrencilere dinamik web uygulamaları geliştirme konusunda gerekli olan sunucu taraflı programlama becerilerini kazandırmaktır. Öğrencilerin PHP dili ile dinamik içerik üretmeleri, veritabanı bağlantısı kurarak veri işleyebilmeleri ve kullanıcı etkileşimli, güvenli web sistemleri tasarlayabilmeleri hedeflenmektedir. Ayrıca, oturum yönetimi, form doğrulama ve veritabanı işlemleri gibi ileri düzey web geliştirme konularının uygulamalı olarak öğrenilmesi amaçlanmaktadır.
Course content
Bu derste dinamik web sayfalarının geliştirilmesine yönelik sunucu taraflı programlama konuları ele alınmaktadır. PHP programlama dili ile değişkenler, diziler, fonksiyonlar, dosya işlemleri, form verilerinin işlenmesi ve oturum yönetimi gibi konular uygulamalı olarak işlenmektedir. Ayrıca, MySQL veritabanı bağlantısı kurma, veri ekleme, silme, güncelleme ve listeleme işlemleri detaylı biçimde ele alınır. Kullanıcı doğrulama sistemleri (login-register), güvenlik önlemleri (SQL Injection, XSS'e karşı korunma), form validasyonu, basit içerik yönetim sistemleri (CMS) ve küçük ölçekli proje geliştirme konularına da yer verilir.
Resources
Web Tasarımı ve Web Programlama - A'dan Z'ye Yeni Nesil Tekniklerle Her Yönüyle Html Javascript Programlama Css 3 Başlangıçtan İleri Seviye Php Kobiler İçin Php İle Online Satış Sitesi Beyaz Şapkalı Seo
Other recommended points
Öğrencilerin Web Programlama I dersini başarıyla tamamlamış olmaları beklenmektedir. Derste aktif olarak kod yazılacağından, öğrencilerin kendi bilgisayarlarında XAMPP, WAMP, Laragon gibi bir yerel sunucu yazılımı kurmaları önerilir. PHP, MySQL ve veritabanı mantığı hakkında temel düzey bilgi sahibi olmak öğrenme sürecini hızlandıracaktır. Uygulama ve proje temelli ilerleyen bu ders için düzenli pratik yapmak büyük önem taşır. Öğrencilerin, PHP dökümantasyonları (https://www.php.net/) ve MySQL belgeleri gibi çevrimiçi kaynaklardan da faydalanmaları tavsiye edilir.
Learning outcomes
- 1 Öğrenci, PHP programlama dili ile dinamik web sayfaları geliştirebilir.
- 2 Öğrenci, MySQL veritabanı ile bağlantı kurarak veri ekleme, güncelleme, silme ve listeleme işlemlerini gerçekleştirebilir.
- 3 Öğrenci, kullanıcı giriş/doğrulama sistemleri (login/register) gibi temel oturum yönetimi uygulamalarını geliştirebilir.
- 4 Öğrenci, form verilerini güvenli bir şekilde işleyerek veri bütünlüğünü ve güvenliğini sağlayabilir.
- 5 Öğrenci, sunucu taraflı programlama tekniklerini kullanarak küçük ölçekli bir web uygulaması (mini proje) geliştirebilir.
Weekly topics
| Week 1 | Dersin tanıtımı, dinamik web kavramı, sunucu-istemci ilişkisi |
|---|---|
| Week 2 | PHP’ye giriş: Değişkenler, veri türleri, operatörler |
| Week 3 | PHP’de kontrol yapıları (if-else, switch), döngüler (for, while) |
| Week 4 | PHP fonksiyonları, dizi işlemleri ve form verisi alma (GET-POST) |
| Week 5 | Form işlemleri, input kontrolü ve form validasyonu |
| Week 6 | Dosya işlemleri (okuma-yazma), include/require kullanımı |
| Week 7 | Veritabanı kavramı, MySQL’e giriş, tablo oluşturma |
| Week 8 | PHP ile MySQL bağlantısı: Veri ekleme, güncelleme, silme, listeleme |
| Week 9 | Kullanıcı giriş sistemi (login-register), oturum (session) yönetimi |
| Week 10 | Cookie kullanımı ve kullanıcı bilgilerinin saklanması |
| Week 11 | Basit içerik yönetim sistemi (CMS) geliştirme temelleri |
| Week 12 | Güvenlik: SQL Injection, XSS, form güvenliği önlemleri |
| Week 13 | Mini proje geliştirme: Bireysel veya grup çalışması |
| Week 14 | Proje sunumları ve genel değerlendirme |
Assessment
Yarıyıl (Yıl) İçi Etkinlikleri
- Ara Sınav %100
Yarıyıl (Yıl) Sonu Etkinlikleri
- Yarıyıl Sonu Sınavı %100
Yarıyıl(yıl) içi etkinliklerin ve yarıyıl(yıl) sonu sınavının başarı notuna katkısı
- Yarıyıl (Yıl) İçi Etkinlikleri %40
- Yarıyıl (Yıl) Sonu Etkinlikleri %60
ECTS workload
| Event | Number | Duration (hours) | Total (hours) |
|---|---|---|---|
| Ara Sınav | 1 | 1 | 1 |
| Ara Sınav İçin Bireysel Çalışma | 1 | 14 | 14 |
| Bireysel Çalışma | 14 | 5 | 70 |
| Derse Katılım | 14 | 3 | 42 |
| Final Sınavı | 1 | 1 | 1 |
| Final Sınavı içiin Bireysel Çalışma | 1 | 24 | 24 |
| Total workload / ECTS | 152 hours · 5,07 ECTS | ||