Click here for English README.
Bu projede Laravel 8 ile online bir quiz sistemi kurulmuştur. İki adet kullanıcı tipi vardır:
- admin: Bu kullanıcı quizler oluşturabilir, düzenleyebilir, silebilir ve quizlere sorular ekleyebilir. Bununla beraber normal kullanıcı tipinin yaptığı her işlemi admin kullanıcılarda yapabilmektedir.
- normal: Bu kullanıcılar sitede aktif olan ve son katılım tarihi geçmemiş quizlere katılabilir, kendi derecesine görebilir, doğru/yanlış yaptığı soruları inceleyip bu sorular diğer kullanıcıların yüzdelik olarak doğru cevap verilme oranını görebilir.
Projenizin yerel makinenizde çalışabilmesi için PHP, Laravel, MySQL, Composer ve NPM kurulu olmalıdır. Aşağıda kurulum için gerekli linkler listelenmiştir:
- PHP kurulumu için:
https://www.php.net/manual/tr/install.php
- Laravel kurulumu için:
https://laravel.com/docs/8.x/installation
- MySQL kurulumu için:
https://dev.mysql.com/doc/mysql-installation-excerpt/5.7/en/
- Composer kurulumu için:
https://getcomposer.org/download/
- NPM kurulumu için:
https://www.npmjs.com/get-npm
İlk olarak projeyi klonlayın veya dosyaları .zip
olarak indirip dizine çıkarınız. Klonlamak için:
git clone https://github.com/fatihes1/online-quiz-project-laravel.git
Proje dizinini açınız ve gerekle Node modüllerini kurmak için aşağıdaki komut satırını çalıştırın:
npm i
Composer paketleri kurmak ve güncellemek için aşağıdaki kodları komut satırına sırayla giriniz:
composer install
composer update
Veri tabanı oluşturma işlemi için öncelikle proje dizininde bulunan .env
dosyasını düzenlemek üzere açınız ve DB_PASSWORD
değişkenine MySQL şifrenizi atayın. Ardından localhost/phpmyadmin
adresine giderek quiz
adında bir veri tabanı oluşturun. Bu aşamadan sonra izleyebileceğiniz iki yol bulunmaktadır.
- Proje dizininde bulunan
SQL_FILE_HERE
klasöründekiquiz.sql
dosyasını oluşturduğunuz veri tabanında içeri aktarabilirsiniz.
veya
- komut satırında
php artisan migrate
komutunu çalıştırabilirsiniz.
Son olarak projeyi sunucuda çalıştırmak için aşağıdaki kodu komut satırında çalıştırınız.
php artisan serve
Tüm bu işlemlerin sonrasında proje 127.0.0.1/8000
veya localhost:8000
adresinde çalışacaktır.
Model-View-Controller (MVC), yazılım mühendisliğinde kullanılan bir mimari desendir. Kullanıcıya yüklü miktarda verinin sunulduğu karmaşık uygulamalarda veri ve gösterimin soyutlanması esasına dayanır. Böylece veriler (İngilizce: model) ve kullanıcı arayüzü (İngilizce: view), birbirini etkilemeden kontrolcü (İngilizce: controller) adı verilen ara bileşenle veri gösterimi, kullanıcı etkileşiminden veri erişimi ve iş mantığını çıkarma suretiyle çözümlenmektedir.
Bildiğiniz üzere PHP dilinin içerisinde kullanıcıların işlerini kolaylaştıran ve güvenlik açısından destek sağlayan birçok framework bulunur. ”Web Sanatçılarının PHP Framework’ü” sloganıyla Laravel bu framework yapılarında ilk sıralarda gelir. Web uygulamaları geliştirilirken büyük bir kullanım oranına sahiptir.
Laravel ile projelerimizin hazırlanmasını hızlandırıp, çok zaman harcadığınız işlemleri kolayca yapabilirsiniz. Örneğin oturum yönetimi, caching ve kullanıcı doğrulama gibi işlemleri kolayca hazırlayabilirsiniz.
Açık kaynak kodlu bir framework olan MVC yapısıyla zenginleştirilmiştir. Daha fazla bilgi için, tıklayınız.
Laravel Jetstream, önceki sürümlerde bulunan mevcut Laravel UI iskelesini geliştirir. Oturum açma, kayıt, e-posta doğrulama, iki faktörlü kimlik doğrulama, oturum yönetimi, Laravel aracılığıyla API desteği ve ekip yönetimi dahil olmak üzere yeni projeler için bir başlangıç noktası sağlar. Daha fazla bilgi için, tıklayınız
Bootstrap, HTML, CSS ve JavaScript ile yazılmış kullanışlı, yeniden kullanılabilir kod parçalarından oluşan dev bir koleksiyondur. Ayrıca, geliştiricilerin ve tasarımcıların hızla tam olarak duyarlı web siteleri oluşturmasını sağlayan bir frameworktür. Daha fazla bilgi için, tıklayınız
Dünyada en çok kullanılan JavaScript kütüphanesi olan JQuery'in amacı JavaScript dilini internet üzerinden kolayca kullanılabilmeyi sağlayan ücretsiz ve açık kaynaklı bir teknoloji sunmaktır.
JQuery'nin sağladığı en büyük avantajlardan biri tutarlı bir şekilde bütün tarayıcılarda çalışmasıdır, bu sebeple tüm ortamlarda rahatlıkla kullanılabilme imkanı sunmaktadır.
Daha fazla bilgi için, tıklayınız
MySQL bir ilişkisel veri tabanı olarak, 1995 yılında kullanıma sürülen en popüler açık kaynaklı ilişkisel veri tabanı yönetim sisteminden biridir.Güçlü bir veri tabanı yönetim sistemi olan MySQL veri tabanı gerektiren hemen hemen her ortamda rahatlıkla kullanılabilir. Ama özellikle web sunucularında en çok kullanılan veritabanıdır, asp, php gibi birçok web programlama dili ile kullanılabilir.
Daha fazla bilgi için, tıklayınız
Fatih Es
Beni aşağıdaki platformlardan takip edebilirsiniz.