Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
padvincenzo authored Dec 6, 2020
1 parent bac057d commit c7d92aa
Show file tree
Hide file tree
Showing 3 changed files with 89 additions and 75 deletions.
4 changes: 4 additions & 0 deletions code.js
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,10 @@ function estrai_numero() {
$.ajax({url: 'server_estrai.php', success: function(result) {
if(result == "terminata") {
mostraMessaggio("La partita è già terminata, non puoi estrarre altri numeri.")

} else if(result == "noGiocatori") {
mostraMessaggio("Non ci sono più giocatori attivi, la partita è terminata.")

} else {
var obj = JSON.parse(urldecode(result))
if(obj.numero != 0) {
Expand Down
158 changes: 84 additions & 74 deletions server_estrai.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,112 +26,122 @@
if(isset($idserver)) {

// Il server è ancora attivo?
$query = mysqli_query($dbh, "select * from ".PREFIX."server where idserver = '$idserver' and terminato is false");
$query = mysqli_query($dbh, "select * from ".PREFIX."server where idserver = '$idserver' and terminato is false and offlimits = false;");

if(mysqli_num_rows($query) == 1) {

$risposta = array(
"numero" => 0,
"stato" => "ok",
"vincite" => array("n" => 0,
"premio" => "",
"user" => array()));
// Nessun giocatore --> Partita terminata
$query = mysqli_query($dbh, "select count(*) n from ".PREFIX."utente where privato is null and uscito is null and idserver = '$idserver';");
if((mysqli_fetch_array($query))["n"] == "0") {

// Quali numeri non sono ancora stati estratti?
$query = mysqli_query($dbh, "select n.idnumero from ".PREFIX."numero n left join (select e.idnumero from ".PREFIX."estrarre e where e.idserver = '$idserver')t1 on n.idnumero = t1.idnumero where t1.idnumero is null");
$numeri = array();
mysqli_query($dbh, "update ".PREFIX."server set offlimits = true where idserver = '$idserver';");
echo "noGiocatori";

$n = mysqli_num_rows($query) - 1;
} else {

if($n > 0) {
while($cicle = mysqli_fetch_array($query)) {
$numeri[] = $cicle['idnumero'];
}
$risposta = array(
"numero" => 0,
"stato" => "ok",
"vincite" => array("n" => 0,
"premio" => "",
"user" => array()));

// Ne scelgo uno random
$numero_estratto = $numeri[rand(0, $n)];
// Quali numeri non sono ancora stati estratti?
$query = mysqli_query($dbh, "select n.idnumero from ".PREFIX."numero n left join (select e.idnumero from ".PREFIX."estrarre e where e.idserver = '$idserver')t1 on n.idnumero = t1.idnumero where t1.idnumero is null;");
$numeri = array();

mysqli_query($dbh, "insert into ".PREFIX."estrarre (idserver, idnumero) values ('$idserver', '$numero_estratto');");
$n = mysqli_num_rows($query) - 1;

$risposta["numero"] = $numero_estratto;
}
if($n > 0) {
while($cicle = mysqli_fetch_array($query)) {
$numeri[] = $cicle['idnumero'];
}

if($n == 0) {
mysqli_query($dbh, "update ".PREFIX."server set terminato = true where idserver = '$idserver';");
$risposta["stato"] = "terminata";
}
// Ne scelgo uno random
$numero_estratto = $numeri[rand(0, $n)];

/* CONTROLLA LE VITTORIE */
mysqli_query($dbh, "insert into ".PREFIX."estrarre (idserver, idnumero) values ('$idserver', '$numero_estratto');");

// Il prossimo premio è ..?
$query = mysqli_query($dbh, "select p.idpremio, p.testo from ".PREFIX."premio p left join (select v.idpremio from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."vincere v where u.idserver = s.idserver and v.idutente = u.idutente and s.idserver = $idserver group by v.idpremio)t1 on t1.idpremio = p.idpremio where t1.idpremio is null order by p.idpremio asc limit 1;");
$risposta["numero"] = $numero_estratto;
}

$next = 2;
$risposta["vincite"]["premio"] = "Ambo";
if($n == 0) {
mysqli_query($dbh, "update ".PREFIX."server set terminato = true where idserver = '$idserver';");
$risposta["stato"] = "terminata";
}

if($cicle = mysqli_fetch_array($query)) {
$next = $cicle['idpremio'] + 1;
$risposta["vincite"]["premio"] = $cicle['testo'];
}
/* CONTROLLA LE VITTORIE */

if($next <= 5) { // Fino alla cinquina
// Il prossimo premio è ..?
$query = mysqli_query($dbh, "select p.idpremio, p.testo from ".PREFIX."premio p left join (select v.idpremio from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."vincere v where u.idserver = s.idserver and v.idutente = u.idutente and s.idserver = $idserver group by v.idpremio)t1 on t1.idpremio = p.idpremio where t1.idpremio is null order by p.idpremio asc limit 1;");

// Il tombolone ha vinto il premio?
if($query = mysqli_fetch_array(mysqli_query($dbh, "select u.idutente, n.cartella, n.riga from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."estrarre e, ".PREFIX."numero n where u.idserver = s.idserver and e.idserver = s.idserver and e.idnumero = n.idnumero and u.nick = 'Tombolone' and s.idserver = $idserver group by n.cartella, n.riga having count(n.idnumero) = $next;"))) {
$next = 2;
$risposta["vincite"]["premio"] = "Ambo";

$idutente = $query['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ($idutente, ".($next-1).");");
$risposta["vincite"]["n"] = 1;
$risposta["vincite"]["user"][] = "Tombolone";
if($cicle = mysqli_fetch_array($query)) {
$next = $cicle['idpremio'] + 1;
$risposta["vincite"]["premio"] = $cicle['testo'];
}

// Qualcuno ha vinto il premio?
$query = mysqli_query($dbh, "select u.idutente, u.nick from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."avere a, ".PREFIX."cartella c, ".PREFIX."comporre k, ".PREFIX."numero n, ".PREFIX."estrarre e where u.idserver = s.idserver and a.idutente = u.idutente and a.idcartella = c.idcartella and k.idcartella = c.idcartella and k.idnumero = n.idnumero and e.idnumero = n.idnumero and e.idserver = s.idserver and u.uscito is null and s.idserver = $idserver group by u.idutente, k.riga having count(n.idnumero) = $next");
if($next <= 5) { // Fino alla cinquina

$risposta["vincite"]["n"] = $risposta["vincite"]["n"] + mysqli_num_rows($query);
while($win = mysqli_fetch_array($query)) {
$next--;
$idutente = $win['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ('$idutente', '$next');");
$risposta["vincite"]["user"][] = $win['nick'];
}
// Il tombolone ha vinto il premio?
if($query = mysqli_fetch_array(mysqli_query($dbh, "select u.idutente, n.cartella, n.riga from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."estrarre e, ".PREFIX."numero n where u.idserver = s.idserver and e.idserver = s.idserver and e.idnumero = n.idnumero and u.nick = 'Tombolone' and s.idserver = $idserver group by n.cartella, n.riga having count(n.idnumero) = $next;"))) {

} else { // Per la tombola
$idutente = $query['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ($idutente, ".($next-1).");");
$risposta["vincite"]["n"] = 1;
$risposta["vincite"]["user"][] = "Tombolone";
}

$tombola = false;
// Qualcuno ha vinto il premio?
$query = mysqli_query($dbh, "select u.idutente, u.nick from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."avere a, ".PREFIX."cartella c, ".PREFIX."comporre k, ".PREFIX."numero n, ".PREFIX."estrarre e where u.idserver = s.idserver and a.idutente = u.idutente and a.idcartella = c.idcartella and k.idcartella = c.idcartella and k.idnumero = n.idnumero and e.idnumero = n.idnumero and e.idserver = s.idserver and u.uscito is null and s.idserver = $idserver group by u.idutente, k.riga having count(n.idnumero) = $next");

// Il tombolone ha fatto tombola?
if($query = mysqli_fetch_array(mysqli_query($dbh, "select u.idutente, n.cartella, n.riga from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."estrarre e, ".PREFIX."numero n where u.idserver = s.idserver and e.idserver = s.idserver and e.idnumero = n.idnumero and u.nick = 'Tombolone' and s.idserver = $idserver group by n.cartella having count(n.idnumero) = 15;"))) {
$risposta["vincite"]["n"] = $risposta["vincite"]["n"] + mysqli_num_rows($query);
while($win = mysqli_fetch_array($query)) {
$next--;
$idutente = $win['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ('$idutente', '$next');");
$risposta["vincite"]["user"][] = $win['nick'];
}

$idutente = $query['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ($idutente, 5);");
$risposta["vincite"]["n"] = 1;
$risposta["vincite"]["user"][] = "Tombolone";
$tombola = true;
}
} else { // Per la tombola

// Qualcuno ha fatto tombola?
$query = mysqli_query($dbh, "select u.idutente, u.nick from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."avere a, ".PREFIX."cartella c, ".PREFIX."comporre k, ".PREFIX."numero n, ".PREFIX."estrarre e where u.idserver = s.idserver and a.idutente = u.idutente and a.idcartella = c.idcartella and k.idcartella = c.idcartella and k.idnumero = n.idnumero and e.idnumero = n.idnumero and e.idserver = s.idserver and u.uscito is null and s.idserver = $idserver group by u.idutente having count(n.idnumero) = 15;");
$tombola = false;

$risposta["vincite"]["n"] = $risposta["vincite"]["n"] + mysqli_num_rows($query);
while($win = mysqli_fetch_array($query)) {
$idutente = $win['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ('$idutente', 5);");
$risposta["vincite"]["user"][] = $win["nick"];
$tombola = true;
}
// Il tombolone ha fatto tombola?
if($query = mysqli_fetch_array(mysqli_query($dbh, "select u.idutente, n.cartella, n.riga from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."estrarre e, ".PREFIX."numero n where u.idserver = s.idserver and e.idserver = s.idserver and e.idnumero = n.idnumero and u.nick = 'Tombolone' and s.idserver = $idserver group by n.cartella having count(n.idnumero) = 15;"))) {

if($tombola) {
$idutente = $query['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ($idutente, 5);");
$risposta["vincite"]["n"] = 1;
$risposta["vincite"]["user"][] = "Tombolone";
$tombola = true;
}

// Qualcuno ha fatto tombola?
$query = mysqli_query($dbh, "select u.idutente, u.nick from ".PREFIX."utente u, ".PREFIX."server s, ".PREFIX."avere a, ".PREFIX."cartella c, ".PREFIX."comporre k, ".PREFIX."numero n, ".PREFIX."estrarre e where u.idserver = s.idserver and a.idutente = u.idutente and a.idcartella = c.idcartella and k.idcartella = c.idcartella and k.idnumero = n.idnumero and e.idnumero = n.idnumero and e.idserver = s.idserver and u.uscito is null and s.idserver = $idserver group by u.idutente having count(n.idnumero) = 15;");

$risposta["vincite"]["n"] = $risposta["vincite"]["n"] + mysqli_num_rows($query);
while($win = mysqli_fetch_array($query)) {
$idutente = $win['idutente'];
mysqli_query($dbh, "insert into ".PREFIX."vincere (idutente, idpremio) values ('$idutente', 5);");
$risposta["vincite"]["user"][] = $win["nick"];
$tombola = true;
}

if($tombola) {

// Qualcuno ha fatto tombola, la partita termina
mysqli_query($dbh, "update ".PREFIX."server set terminato = true where idserver = '$idserver';");
$risposta["stato"] = "terminata";
}

// Qualcuno ha fatto tombola, la partita termina
mysqli_query($dbh, "update ".PREFIX."server set terminato = true where idserver = '$idserver';");
$risposta["stato"] = "terminata";
}

echo urlencode(json_encode($risposta));
}

echo urlencode(json_encode($risposta));

} else {
echo "terminata";
}
Expand Down
2 changes: 1 addition & 1 deletion style.css
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ div#ultimi div {
height: 7vw;
line-height: 7vw;
font-size: 4vw;
margin: auto;
margin: 0 0.5vw;
text-align: center;
vertical-align: middle;
box-shadow: 0 3px 6px 0 rgba(0,0,0,0.5), 0 3px 6px 0 rgba(0,0,0,0.4);
Expand Down

0 comments on commit c7d92aa

Please sign in to comment.