Requête qui fonctionne à moitié
Je m'explique, en gros si le joueur n'existe pas on le crée en insérant une ligne dans la table. Pour ce faire je vérifie si le joueur est bien présent dans la table.
Et si le joueur existe je vérifie que son nombre de connexion est inférieur à 3, si c'est le cas alors j'update la ligne du joueur.
Le problème j'ai l'impression que ma ligne ne s'update pas vu que la date et l'heure ne changent pas. Ensuite j'ai l'impression que j'insère ma ligne avec un UPDATE. Bref très bizarre. Quelqu'un remarque t'il une erreur?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| <?php
$joueur = $_POST['Joueur'];
$ID_Jeu = $_POST['ID_Jeu'];
$nbConnexion = $_POST['nbConnexion'];
// on se connecte à MySQL
$db = mysql_connect('localhost','root','mysql');
// on sélectionne la base
mysql_select_db('TEST',$db);
// on vérifie l'existance du joueur dans la base
$sql = "SELECT Joueur FROM participation WHERE Joueur='".$joueur."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
// si le joueur existe
if($data['Joueur'] == $joueur) {
echo 'update ligne joueur';
$sql = "SELECT nbConnexion FROM participation WHERE Joueur='".$joueur."' AND ID_Jeu='".$ID_Jeu."'" ;
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
if($data['nbConnexion'] > 3) {
echo 'close database';
// on ferme la connexion à mysql
mysql_close($db);
}
else {
// on crée la requête SQL
echo 'UPDATE JOUEUR';
$sql = "UPDATE particpation SET nbConnexion = '".$nbConnexion."', Date_Particpation = NOW() WHERE Joueur ='".$joueur."'";
// on envoie la requête
$req = mysql_query($sql);
}
}
else {
echo 'insertion ligne joueur';
$sql = "INSERT INTO participation (Joueur, ID_Jeu, Date_Participation, nbConnexion, Number_Play_Total) VALUES ('".$joueur."', '".$ID_Jeu."', NOW(),'".$nbConnexion."', '1')";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
}
// on ferme la connexion à mysql
mysql_close($db);
?> |