Cara menggunakan star rating html

Saya sangat baru dalam teknologi web dan ini pada dasarnya adalah proyek berjangka yang sedang dikerjakan oleh tim saya. Kami sedang mengerjakan situs ulasan makanan.

Sampai sekarang, saya tidak begitu yakin bagaimana menerapkan sistem peringkat bintang 5 yang sederhana. Apakah saya seharusnya menggunakan bahasa sisi server seperti PHP atau bahasa sisi klien seperti Javascript (w/JQuery). Melihat sekeliling nampaknya JQuery lebih cocok untuk ini? Atau apakah itu kombinasi keduanya?

Apa yang saya cari sejauh fungsionalitas berjalan adalah:

  • Bintang-bintang menyala ketika mouse melayang
  • Halaman tidak harus dimuat ulang ketika Sebuah bintang diklik (tidak benar-benar diperlukan)
  • Semacam rata-rata ditampilkan di samping bintang-bintang .__
  • Rating harus disimpan di suatu tempat di database MySQL (Apakah ini ide yang bagus?)

Saya benar-benar minta maaf jika pertanyaannya terdengar kabur dan bodoh, saya tidak punya banyak petunjuk tentang cara menerapkan ini dan saya sudah mencoba googling. Jika Anda memiliki pertanyaan tentang itu, beri tahu saya.

Terima kasih banyak.

Bintang menyala ketika mouse melayang
Ada tutorial yang brilian di web untuk merancang sistem peringkat bintang 5: http://rog.ie/blog/css-star-rater . Ini murni CSS, jadi tidak perlu Javascript.

Halaman tidak harus dimuat ulang saat bintang diklik (tidak benar-benar diperlukan)
Ajax adalah teman Anda, yang saya lakukan adalah memiliki <a class="one_star" href="javascript: submitRating(1, 5)"> di mana <a> mewakili bintang dan fungsi submitRating() menggunakan Ajax untuk mengirimkan peringkat saya (1/5) ke server, server menyimpan peringkat (dan menetapkan pengguna yang memberikan peringkat) dan menghitung ulang peringkat rata-rata baru dan mengirimkan hasilnya kembali dalam format JSON.

Semacam rata-rata ditampilkan di sebelah bintang
Mudah. Tulis skrip SQL yang, berdasarkan id produk, mengambil jumlah dari nilai rata-rata (yaitu 1/5 + 2/5 + 4/5, dll), bagi (jumlah) dengan jumlah total memberi peringkat dan mengalikannya dengan 100. Kembali nilai ke server, dan dari server kembali ke klien. 

Peringkat harus disimpan di suatu tempat di database MySQL (Apakah ini ide yang bagus?)
Saya menggunakan MySQL untuk ini dan berfungsi seperti pesona .... Setiap sistem DB baik-baik saja.

Bintang menyala ketika mouse melayang
Sederhana, memiliki gambar untuk bintang kuning dan gambar untuk bintang putih. Ketika sebuah bintang melayang, semua bintang di sebelah kiri memiliki "src" mereka berubah menjadi bintang kuning, semua bintang di sebelah kanan memiliki SRC mereka berubah menjadi bintang putih. 

Halaman tidak dimuat ulang saat bintang diklik
Lihatlah ke Ajax/XHR
http://en.wikipedia.org/wiki/Ajax_(programming)
Petunjuk: Miliki file .php yang disebut vote.php, dan berikan padanya ID makanan Anda dan peringkat yang diberikan oleh pengguna.

Semacam rata-rata ditampilkan di antara bintang-bintang
Sebagian besar situs web hanya menampilkan bintang 0%, 50%, dan 100% ... pengguna tidak akan benar-benar panik jika mereka tidak mendapatkan 'presisi yang tepat' 

Peringkat harus disimpan dalam database MySQL
Setiap sistem basis data baik-baik saja. Tapi ya, Anda mungkin ingin menggunakan database SQL untuk ini

Untuk memiliki kontrol klik-bintang yang bagus, ya Anda perlu javascript. Jadi, Anda harus melakukan jQuery.

Ya, Anda ingin menyimpan barang di basis data. Anda bisa menggunakan PHP dan MySQL untuk itu.

Mengingat ini adalah tugas kelas, itu banyak untuk diimplementasikan. Pertimbangkan untuk menyontek dengan menggunakan CMS yang ada. Drupal secara khusus memiliki fungsionalitas yang mirip dengan apa yang Anda minta. Anda tidak perlu belajar banyak tentang Drupal, cukup beli buku "Using Drupal". Bab 4 akan menunjukkan cara:

... buat situs web ulasan produk komunitas, dengan ... dan modul Fivestar yang menyediakan widget penilaian.

Drupal berbasis PHP dan menggunakan MySQL sebagai databasenya, sehingga sepertinya cocok dengan tujuan Anda. Mungkin perlu sedikit waktu untuk menjalankan Drupal ... tetapi kemudian Anda bisa membuka bab 4 dengan cepat.

Jika guru bersikeras Anda menulis kode, Drupal adalah open source dan mudah untuk menambahkan modul khusus.

Kombinasi JS dan PHP adalah caranya (jika PHP adalah bahasa sisi-server yang Anda pilih). JQuery adalah cara yang baik untuk dengan mudah menerapkan semacam sistem yang dibintangi, saya pernah mengembangkan ini untuk salah satu situs saya yang kemudian saya hapus. Itu adalah hal sederhana yang memiliki acara onrollover terkait dengan 5 gambar. Ketika diklik, jika "id 4", itu akan mengirimkannya sebagai suara pengguna menggunakan fungsi .post () jQuery ke skrip PHP yang mencatat pengguna dan mencatat suara dalam database MySQL jika mereka belum memilih.