İHSAN MERMERCİ MESLEKİ VE TEKNİK ANADOLU LİSESİ

BİLİŞİM TEKNOLOJİLERİ ALANI - WEB TABANLI UYGULAMA GELİŞTİRME DERSİ

1. DÖNEM 2. UYGULAMA SINAVI YÖNERGESİ

Aşağıdaki yönergeyi eksiksiz takip ediniz. Metin sınav dokümanından birebir alınmıştır.

Sınav Dosyaları ve Teslim Bilgileri
  • Sınav yönergesini https://websinav.ihmtal.com/sinav.docx adresinden indirebilirsiniz.
  • Sınav klasörünü kendi adınız soyadınız ve numaranız ile isimlendirin.
  • Sınav sonunda oluşturmuş olduğunuz veritabanını dışa aktar seçeneği ile indirip, sınav klasörünüze ekleyiniz.
  • Sınavınız bittiğinde Winrar veya Winzip programları ile sıkıştırarak teslim edin.
Web Sitesi Yönergesi
  • Web siteniz bir blog sitesidir ve Anasayfa, Hakkımızda, Blog Yazıları, İletişim sayfalarından oluşmaktadır, tema olarak https://websinav.ihmtal.com/blogy.zip adresindeki veya https://bootstrapmade.com/blogy-bootstrap-blog-template/ adresindeki temayı kullanınız.
  • Web sitenizde size ait sizin tasarımınız olan bir logo kullanınız, logo dosyaları web sitesi header bölümünde png, browser sekmesinde ise ico uzantılı kullanılmalıdır.
  • Web sitenizde blog yazıları için, iletişim için, hakkımda sayfası için tablolar, okunma ve beğeni verileri için tablolar oluşturulacaktır, tablolardaki alanlar aşağıda gösterilmiştir.
Veritabanı Tabloları
Tablo: blogs
Alan adı Açıklama
id -
header Başlık için
summary Blog Özeti
content Blog yazısı içeriği
image Blog Resmi
author Blog Yazarı
category Blog yazısının kategorisi
likecount Beğeni Sayısı
readcount Okunma Sayısı
status Blog yazı durumu: taslak, yayında, yayından kaldırıldı
timestamp Create ve Update tarihleri için
Tablo: abouts
Alan adı Açıklama
id -
header Başlık için
content Hakkımda yazısı içeriği
image Hakkımda Resmi
status Aktif, Pasif
timestamp Create ve Update tarihleri için
Tablo: contacts
Alan adı Açıklama
id -
name Adı Soyadı
email Email kurallarına uygun olacak
phone Telefon (telefon mask kullanılacak)
subject Konu (Max 30 Karakter)
message Mesaj içeriği max 500 karakter
status Mesaj durumu: okunmadı, okundu, cevaplandı
timestamp Create ve Update tarihleri için
Tablo: likes
Alan adı Açıklama
id -
blog_id Blog yazısının id si
user_ip Beğenen kullanıcın ip si
timestamp Create ve Update tarihleri için
Tablo: reads
Alan adı Açıklama
id -
blog_id Blog yazısının id si
user_ip Okuyan kullanıcın ip si
timestamp Create ve Update tarihleri için
Sayfa Gereksinimleri
  • Veritabanı tabloları oluşturulduktan sonra en az 100 adet blog yazısı dumy data olarak üretilecektir, hakkımda sayfası için ilgili tablo alanlarını web sitenize uygun bir hakkımda metni, başlığı, resmi veri olarak eklenmelidir ve hakkımızda sayfasında bu veriler gösterilmelidir.
  • Web sitesinde size verilen temayı kullanarak oluşturduğunuz tüm sayfalar eksiksiz ve Türkçe olmalıdır anlamlı veri içermelidir.
  • Anasayfada en çok okunan 20 blog yazısı listelenmeli, ayrıca kategoriler listelenmeli ve her kategoride kaç adet blog yazısı olduğu gösterilmelidir, kullanıcı kategoriyi tıkladığında o kategoride yazılmış blog yazılarını listelenmiş olarak görebilmelidir.
  • Anasayfada gösterilen blog yazılarının okunma ve beğeni sayıları yazım tarihi, kategorisi ve yazarı gösterilecektir, blog yazılarının başlıklarına, görseline veya özetine tıklandığında blog yazısının detay sayfasına gidilmelidir.
  • Blog Yazıları sayfasında ise sağda arama ve altında kategoriler, kategorilere ait blog yazıları adetleri gösterilecek, solda ise son 10 blog yazısı listelenecektir, kullanıcı herhangi bir blog yazısına tıkladığında o kategorideki tüm blog yazıları 10 adet olacak şekilde sayfalanarak gösterilecektir (Pagination). Blog Yazılarının listelenmesinde blog görseli, başlık, özet metni, yazar, tarih, okunma ve beğeni sayıları gösterilecektir.
  • Blog yazılarındaki Yazara tıklandığında o yazarın yazdığı tüm blog yazıları son yazdığı blog yazısından başlanarak 10 adet olacak şekilde sayfalanarak listelenmelidir, ayrıca bu sayfada bu yazarın toplam beğeni sayısı, toplam okunma sayısı, toplam blog yazısı adeti de gösterilmelidir.
  • Blog detay sayfasında ise blog yazısını tüm bilgileri gösterilecek okunma sayısı kullanıcının ip si alınarak tekrar etmeyecek şekilde artırılacaktır, Beğeni butonu ile yine kullanıcı ip si alınarak beğeni artılacak veya azaltılacaktır (AJAX).
  • Yine Blog Detay sayfasında o kategorideki en çok okunan blog yazılarından 5 adet blog yazısı sayfada kullanıcıya listelenecektir.
İletişim Sayfası ve Form Kuralları
  • Menüde bulunan iletişim sayfasından ziyaretçi iletişim formunu doldurarak mesaj gönderebilecektir, mesaj gönderilirken aşağıdaki durumlar dikkate alınacaktır.
  • İletişim sayfasındaki formda bulunan tüm alanlar eksiksiz doldurulmak zorundadır.
  • Telefon alanına sadece telefon türünde veri girişi yapılabilecektir.
  • Form eksiksiz doldurulduktan sonra gönder butonu ile mesaj veritabanındaki "contacts" tablosuna kayıt edilecek ve ziyaretçi bilgilendirilecektir.
  • Olası hata durumlarında kullanıcı bilgilendirilecektir.
Önemli: Aktif olan sayfa uygun şekilde menüde gösterilmelidir.
Not: Teslim edilmeyen, eksik teslim edilen, yanlış teslim edilen sınavlardan öğrenci sorumludur. Sınav açık kaynak olduğu için detaylar önemlidir.
Puanlama

Toplam 150 Puandır, alabileceğiniz maksimum puan 100 puandır. (150 puan alan öğrenciye 1 performans notu 100 olarak verilir)

Veritabanı Tabloları Dumy Datalar Anasayfa Hakkımda İletişim Blog Yazıları Blog Detay Okunma Sayısı Beğeni Sayısı Yazarın Bilgileri Kategoriler Tasarım Menü Toplam
10 10 15 10 15 15 15 10 15 15 10 5 5 150