Cara melaksanakan sistem pengundian mudah menggunakan MySQL dan Ruby
Sistem pengundian ialah aplikasi dalam talian yang biasa digunakan untuk mengumpul pendapat pengguna tentang sesuatu isu atau topik. Dalam artikel ini, kami akan memperkenalkan cara menggunakan pangkalan data MySQL dan bahasa pengaturcaraan Ruby untuk melaksanakan sistem pengundian yang mudah.
Pertama, kita perlu menyediakan persekitaran. Pastikan anda telah memasang pangkalan data MySQL dan mempunyai persekitaran pengaturcaraan Ruby. Jika ia belum dipasang, anda boleh memuat turunnya dari laman web rasmi dan ikut arahan untuk memasangnya.
Seterusnya, kita perlu mencipta pangkalan data. Buka terminal MySQL atau gunakan alat antara muka grafik (seperti PhpMyAdmin) untuk mencipta pangkalan data kosong bernama "voting_system". Buat jadual bernama "undi" di bawah pangkalan data ini untuk menyimpan maklumat pengundian. Jadual hendaklah mengandungi medan berikut:
Jalankan yang berikut Kenyataan SQL dalam MySQL untuk mencipta jadual:
CREATE TABLE votes ( id INT PRIMARY KEY AUTO_INCREMENT, question TEXT, option1 TEXT, option2 TEXT, option1_votes INT DEFAULT 0, option2_votes INT DEFAULT 0 );
Seterusnya, mari gunakan Ruby untuk menyambung ke pangkalan data dan melaksanakan fungsi sistem pengundian. Pertama, kita perlu memasang permata pemacu MySQL Ruby. Jalankan arahan berikut dalam baris arahan untuk memasang:
gem install mysql2
Kemudian, cipta fail Ruby, seperti "voting_system.rb", dan gunakan kod berikut untuk menyambung ke pangkalan data MySQL:
require 'mysql2' # 创建数据库连接 client = Mysql2::Client.new(:host => "localhost", :username => "root", :password => "your-password", :database => "voting_system") # 添加投票 def add_vote(question, option1, option2) query = "INSERT INTO votes (question, option1, option2) VALUES ('#{question}', '#{option1}', '#{option2}')" client.query(query) puts "投票问题:#{question},选项1:#{option1},选项2:#{option2},已添加" end # 获取投票信息 def get_votes query = "SELECT * FROM votes" result = client.query(query) result.each do |row| puts "投票ID: #{row['id']}" puts "问题: #{row['question']}" puts "选项1: #{row['option1']}" puts "选项1票数: #{row['option1_votes']}" puts "选项2: #{row['option2']}" puts "选项2票数: #{row['option2_votes']}" puts " " end end # 投票 def vote(vote_id, option) query = "UPDATE votes SET #{option}_votes = #{option}_votes + 1 WHERE id = #{vote_id}" client.query(query) puts "投票ID:#{vote_id},选项:#{option},已记录" end # 示例代码 add_vote("你喜欢吃水果吗?", "喜欢", "不喜欢") get_votes vote(1, "option1") get_votes
Dalam kod contoh di atas, kami telah menentukan beberapa kaedah untuk melaksanakan fungsi sistem pengundian. Kaedah "add_vote" digunakan untuk menambah soalan undian dan pilihan pada pangkalan data, kaedah "get_votes" digunakan untuk mendapatkan semua maklumat pengundian dalam pangkalan data, dan kaedah "undi" digunakan untuk merekodkan pilihan pengundian pengguna.
Simpan dan jalankan fail "voting_system.rb", anda akan melihat maklumat undian dicetak pada konsol, dan data pengundian akan dikemas kini.
Melalui langkah di atas, kami berjaya melaksanakan sistem pengundian mudah menggunakan pangkalan data MySQL dan bahasa pengaturcaraan Ruby. Anda boleh mengubah suai dan melanjutkan kod seperti yang diperlukan, seperti menambah lebih banyak pilihan, statistik undian, dsb. Harap artikel ini membantu anda!
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan sistem pengundian mudah menggunakan MySQL dan Ruby. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!