Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan kapsamlı bir ASP.NET web uygulaması geliştirme ve veritabanı tasarımı eğitimidir.
- Video, "Haberler Dibi" adlı bir haber sitesi örneği üzerinden adım adım ilerlemektedir. İçerik, veritabanı tasarımı (sayfalar, haberler, haber yorumları ve kullanıcılar tabloları), kullanıcı kayıt sistemi oluşturma, şifre şifreleme teknikleri, ASP.NET web uygulaması projesi oluşturma, master page ve içerik sayfası ekleme, yönetici paneli oluşturma ve veritabanından sayfa içeriğini görüntüleme işlemlerini kapsamaktadır.
- Eğitim boyunca MD5 şifreleme algoritması, tek yönlü şifreleme yöntemleri, güvenlik önlemleri (saldırganlardan korunma) ve repeater data source kullanarak veritabanından sayfa içeriğini görüntüleme gibi teknik konular detaylı olarak ele alınmaktadır. Ayrıca, kullanıcı yönetimi, şifre sıfırlama ve genel ayarlar gibi pratik uygulamalar da gösterilmektedir.
- 00:18Veritabanı Oluşturma
- Yeni bir veritabanı oluşturmak için "create database haberler" komutu kullanılır.
- Veritabanı oluşturulduktan sonra tablolar oluşturulabilir.
- 00:52Sayfalar Tablosu
- Sayfalar tablosu için "create table sayfalar" komutu kullanılır.
- Tabloda sayfa id (int primary key), sayfa başlığı (varchar 255), sayfa içeriği (text), aktif (bit), silindi (bit) ve sıra (int) alanları bulunur.
- Alt açılır menü varsa "üst ayd" alanı da eklenebilir.
- 02:14Haberler Tablosu
- Haberler tablosu için "create table haberler" komutu kullanılır.
- Tabloda haber id (int primary key), haber başlığı (varchar 255), haber içeriği (text), aktif (bit), silindi (bit) ve sıra (int) alanları bulunur.
- Haberlerde mutlaka eklenme tarihi (datetime) ve güncelleme tarihi (datetime) alanları tutulmalıdır.
- 04:21Haber Yorumları Tablosu
- Haber yorumları tablosu için "create table haber yorumları" komutu kullanılır.
- Tabloda yorum id (int primary key), yorum içeriği (text), aktif (bit), silindi (bit) ve eklenme tarihi (datetime) alanları bulunur.
- Yorumun hangi habere ait olduğunu belirtmek için "haber id" alanı kullanılır.
- 07:03Kullanıcılar Tablosu
- Kullanıcılar tablosu için "create table kullanıcılar" komutu kullanılır.
- Tabloda kullanıcı id (int), kullanıcı adı (varchar), gerçek ad (varchar), soyad (varchar), aktif (bit), silindi (bit) ve yetkili (bit) alanları bulunur.
- Kullanıcıların son giriş tarihi, aktif mi bağlı mı durumu ve şifre sıfırlama linki gibi alanlar da eklenebilir.
- 12:23Genel Ayarlar Tablosu
- Genel ayarlar tablosu için "create table genel bilgiler" komutu kullanılabilir.
- Tabloda sitenin başlığı, alt bilgileri, sosyal medya hesapları gibi bilgiler tutulabilir.
- Bu bilgiler sabit yazmak yerine veritabanından çekmek daha doğrudur.
- 14:11Veritabanı Tabloları ve İçerik Ekleme
- İletişim sayfasında mesajlar tablosu tutulabilir veya iletişim sayfası direkt e-posta adreslerine bağlanabilir.
- Resimlerin aktiflendiği ve silindiği durumlar için tablolar oluşturulabilir.
- Haber tablosu oluşturulup, haber içerikleri, sıra numaraları ve "üst üste tuttur" alanları eklenebilir.
- 16:25Yorum ve Kullanıcı Kayıtları
- Haberlere örnek yorumlar eklenebilir ve yorumların onaylanıp onaylanmadığı, silinip silinmediği ve eklenme tarihleri belirlenebilir.
- Kullanıcı kayıtları için e-posta adresi, kullanıcı adı, parola, ad, soyad ve yönetici statüsü gibi alanlar oluşturulabilir.
- E-posta adresi ile giriş yapmanın kullanıcı adını unutmanın riskini azalttığı ve benzersiz olması gerektiği belirtilmiştir.
- 19:27Şifre Şifreleme ve Güvenlik
- Parola alanlarına doğrudan şifre yazmak yerine, MD5 gibi hash algoritmaları kullanılarak şifreler şifrelenmelidir.
- Hash algoritmaları tek yönlüdür, yani şifrelenmiş veriyi orijinal haline çevirmek mümkün değildir.
- Zor şifreler kullanmak önemlidir çünkü saldırganlar şifrelenmiş şifreleri bulsa bile gerçek şifreleri bulamayacaklardır.
- 22:19ASP.NET Web Uygulaması Oluşturma
- ASP.NET web uygulaması projesi oluşturulurken Framework 4.72 seçilebilir, ancak sunucuda mevcut değilse daha düşük bir sürüm kullanılabilir.
- Proje için normal kullanıcıların, yöneticilerin ve kullanıcı adı şifre ekranının görüleceği master page'ler oluşturulmalıdır.
- Master page'e bağlı bir içerik sayfası eklenmesi şarttır, aksi takdirde çalıştırılamaz.
- 25:08Haber Sitesi İçin Sayfa Oluşturma
- Haber sitesi için ana sayfa ve haberler sayfası oluşturulabilir, ayrıca haber yorumları veya haber ve haber iki ayrı sayfa da kullanılabilir.
- Haberlerin tamamı haberler sayfasında gözükür, tıklanan haber detay sayfasında görüntülenir.
- Master page kullanılarak sayfalar oluşturulabilir, ayrı sayfada yapmak nispeten daha basit olacaktır.
- 25:56Yönetici Paneli Oluşturma
- Yönetici paneli için yeni bir klasör oluşturulmalı, kullanıcılar amatör değilse rastgele karakterlerden oluşan bir klasör daha güvenlidir.
- Yönetim panelinin ismini "admin" yapmamak gerekir çünkü ilk aranan klasördür.
- Yönetim paneline master page, default page ve giriş sayfası eklenmelidir.
- 27:11Master Page ve Sayfa Yapılandırması
- Yönetim klasörüne "yönetim master" adında bir master page oluşturulmalı.
- Klasörün içinde "default" adında bir sayfa olmalı, bu klasörün varsayılan sayfası olacaktır.
- Giriş sayfası master page'e bağlı olmayacak, sadece web formu olacak.
- 30:15Şablon ve Master Page Tasarımı
- Master page'e Bootstrap teması kullanılarak tablo eklenerek yapılandırılabilir.
- Tabloda başlık, menü, içerik ve alt bilgi sütunları oluşturulabilir.
- İçerik için "content play solder" kullanılmalı ve form etiketinin içinde olmalıdır.
- 35:05Menü Oluşturma
- Master page'e menü için bir repeater eklenmeli ve farklı bir isim verilmelidir.
- Repeater'a veri kaynağı bağlanmalı ve veritabanından menü verileri çekilmelidir.
- Menüde dinamik linkler ve sabit linkler birlikte kullanılabilir.
- 40:20Veritabanından Sayfa Görüntüleme
- Repeater data source'a bağlanarak var olan bağlantı kullanılıyor.
- Sayfa görüntüleme için query string'e ana sayfanın ID'si yazılmalı ve varsayılan değer olarak da aynı ID kullanılmalı.
- Sadece ID kontrolü yeterli değil, sayfanın görüntülenebilmesi için aktif ve silindi alanlarının da kontrol edilmesi gerekiyor.
- 41:08Güvenlik Önlemleri
- Sadece ID kontrolü yeterli değil, program integer'in son değerine kadar değiştirerek silinmiş sayfaların içeriğini görüntüleyebilir.
- Silinmiş sayfaların içeriği görüntülenerek suç içerikli sayfalar hakkında yanlış bilgi yayılabilir.
- Sayfanın görüntülenebilmesi için hem aktif hem silindi alanlarının kontrol edilmesi gerekiyor.
- 42:19Repeater Item Template
- Repeater item template'inde önce üçüncü dereceden bir başlık, sonra içerik gelecek.
- İçerik için p, span veya div gibi etiketler kullanılabilir.
- Hazır tema kullanıldığı için özel tasarım kodlarına gerek duyulmuyor.
- 43:34Sayfa Görüntüleme ve Güvenlik
- Anasayfa geldi ancak menü görünmüyor çünkü yönetim panelinin altındaki default sayfasına yazılmış.
- İçerik veritabanından geldiği bir web sitesinin kullanıcı tarafı oluşturulmuş.
- Hem aktif hem silindi alanları menü ile beraber içerik görüntülerken de kontrol ediliyor.