come va? Dopo anni e anni di assenza ho deciso di ritornare a divertirmi con GM, quindi ho deciso di rifare un salto da voi (ho notato che purtroppo i sopravvissuti sono pochi

Ma andiamo al sodo:
Stavo cercando di creare un sistema di daily bonus per un piccolo gioco che sto creando, ma non essendo molto ferrato sul php/musql sto avendo qualche difficoltà.
Questo è il mio codice attuale:
Codice: Seleziona tutto
<?php
// dati accesso database
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "dailybonus";
// Create connection
$mysqli = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($mysqli->connect_error) {
die("Connessione fallita");
}
if(isset($_GET["idgiocatore"])) echo $_GET["idgiocatore"]."<br>"; // echo per debug personale
// Controllo se il giocatore è gia presente nel database, o se è il suo primo login in assoluto
$check = $mysqli->query('SELECT * FROM bonus WHERE idgiocatore = "'.$_GET["idgiocatore"].'"');
// Se è il suo primo login
if($check->num_rows == 0) {
echo "Primo login del giocatore!<br>";
// Inserisco il suo id e la data/ora corrente nel database
$now = new DateTime();
$update = $mysqli->query('INSERT INTO bonus (idgiocatore,ultimoaccesso) VALUES ("'.$_GET["idgiocatore"].'","'.date_format($now, 'd-m-Y H:i:s').'")'); // provato a togliere now();
// Se non ci sono errori restituisco "true" per l'assegnazione del bonus
if ($update) {
echo "true";
// Altrimenti restituisco l'errore
} else { die("ERRORE");}
} else {
// Altrimenti se il giocatore è già presente nel database
$now = new DateTime();
$resetTime = new DateTime();
date_time_set($resetTime, 12, 00, 00);
$a = $mysqli->query('SELECT ultimoaccesso FROM bonus WHERE idgiocatore = "'.$_GET["idgiocatore"].'"');
$lastLogin = new DateTime((string)$a);
echo "LastLogin: " . date_format($lastLogin, 'd-m-Y H:i:s') . "<br>";
echo "Reset time: " . date_format($resetTime, 'd-m-Y H:i:s') . "<br>";
echo "time: " . date_format($now, 'H') . "<br>";
if ($resetTime < $now) {
echo "ok1<br>";
if ($resetTime < $lastLogin) {
echo "ok2";
}
}
$update = $mysqli->query('UPDATE bonus SET ultimoaccesso=NOW() WHERE idgiocatore="'.$_GET["idgiocatore"].'"');
if ($update) {
echo "Aggiornato";
} else { die("ERRORE");}
}
$mysqli->close();
?>
Purtroppo peró così la pagina non funziona, perchè ho problemi nella comparazione delle date.
Sapete darmi qualche consiglio a riguardo?
Grazie!
