Ben php bir piyango komut dosyası oluşturduk. Benim sorun şimdi bir kazanan daha sonra seçmektir. Oyuncular biletlerini aynı sayıda olması için mümkün olduğu için. Burada iki tablo yapıları ve kaynak kodu temin ediyorum.
lotto_game {
id(int)
jackpot(int)
status(varchar10)
pick_1(int)
pick_2(int)
pick_3(int)
pick_4(int)
pick_5(int)
tickets_sold(int)
winner(text)
}
lotto_picks {
lotto_id(int)
user_id(int)
choice_1(int)
choice_2(int)
choice_3(int)
choice_4(int)
choice_5(int)
ticket_status(int)
}
Bunlar benim veritabanında benim iki tablo vardır. Örnekler uğruna biz * id 1 ile 2 kullanıcılar oluşturabilir ve komut dosyası daha sonra her pick_ içine rasgele loto numaraları eklemek 'bitmiş' için 'etkin' dan lotto_game durumunu değiştirmek için varsayalım çalıştığında 2. Peki ne olur olduğunu olacak sütun.
$one = rand(1,30);
$two = rand(1,30);
$three = rand(1,30);
$four = rand(1,30);
$five = rand(1,30);
mysql_query("UPDATE `lotto_game` SET
pick_1 = '$one',
pick_2 = '$two',
pick_3 = '$three',
pick_4 = '$four',
pick_5 = '$five',
status = 'finished'
WHERE durum = 'aktif' ");
Ben itiraf edecek çok zor değildi. Ama bu amaçla sadece başlangıcıdır.
$lotto['tickets'] = mysql_query("SELECT ticket_id FROM `lotto_picks` WHERE ticket_status='valid'");
@$lotto[winners] = mysql_query("SELECT ticket_id,user_id FROM `lotto_picks` WHERE choice_1 = '$one' AND choice_2 = '$two' AND choice_3 = '$three' AND choice_4 = '$four' AND choice_5 = '$five'");
$lotto['num_tickets'] = mysql_num_rows($lotto['tickets']);
@$lotto[winner_id] = mysql_fetch_array(@$lotto[winners]);
$lotto['jackpot'] = mysql_query("SELECT jackpot FROM `lotto_game` WHERE status='active'");
$lotto['winner_jackpot'] = mysql_fetch_array($lotto['jackpot']);
$lotto['num_winners'] = mysql_num_rows($lotto['winners']);
//echo @$lotto['num_tickets'];
//echo @$lotto['num_winners'];
$winner = $lotto['num_winners'];
//echo @$lotto['winner_id']['user_id'];
$jackpot = $lotto['winner_jackpot']['jackpot'];
$id = @$lotto[winner_id][user_id];
if ($winner == 1) {
mysql_query("UPDATE `character` SET
decivers = decivers +'$jackpot'
WHERE user_id='$id'");
}
Bu ben ile geldi ne olduğunu ve gerçekten bir kazanan ile çalışmak gibi görünüyor. Ama ben nereye buradan gitmek için çözemiyorum. Bazı diziler kullanarak denedim ama hiçbir şey çalışır. Ben yapılması gerektiğini biliyorum ama bunu nasıl anlamaya olamaz.
Ben kazananlar için arama yaparken ben bir dizinin tüm kullanıcı kimliği içine koymak gerekir.
Herkes bu karıştı eğer öyleyse ekstra decivers, paradır. Bilet durum gerçekten burada önemli değil ama bilmeniz gereken ise ticket_status 'geçerli' veya 'geçersiz' ise sadece belirler