LA GLOBULE

Inscris le 25/09/2002 à 10:40
  • Site web
  • Nombre de sujets
    47
  • Nombre de messages
    8 345
  • Nombre de commentaires
    142
  • Nombre de news
    8 346
  • Niveau en PHP
    Excellent

Ses derniers messages sur les forums

LA GLOBULE
le 15/02/2008 à 22:08
Problème d'enregistrement du bonus, flash, php, msql
Si j'ai bien compris, un truc de ce genre la quoi :

<?php
$score = 46;
$bonus = 12;

$jeu = 'jeu 1';
$joueur = 'toto';

$sql_old_score = "SELECT score FROM table WHERE jeu = '".mysql_escape_string($jeu)."' AND joueur = '".mysql_escape_string($joueur)."'";
$req_old_score = mysql_query($sql_old_score) or die (mysql_error());

if (mysql_num_rows($req_old_score) == 0) {
$sql_insert = "INSERT INTO table (jeu, joueur, score, bonus)
VALUES ('".mysql_escape_string($jeu)."', '".mysql_escape_string($joueur)."', '".intval($score)."', '".intval($bonus)."')";
$req_insert = mysql_query($sql_insert) or die (mysql_error());
}
else {
$old_data = mysql_fetch_assoc($req_old_score);

if ($old_data['score'] <= $score) {
$sql_update = "UPDATE table SET bonus = '".intval($bonus)."', score = '".intval($score)."' WHERE jeu = '".mysql_escape_string($jeu)."' AND joueur = '".mysql_escape_string($joueur)."'";
$req_update = mysql_query($sql_update) or die (mysql_error());
}
}
?>

La, ca modifie le score ET le bonus que si et seulement si le nouveau score est supérieur ou égal à l'ancien score.

Par contre, je ne sais pas si c'est ce que tu veux, car ton explication est encore un peu floue :

C'est la que ça ne veux pas enregistrer le bonus, car le score est pas plus haut.

Ne pas enregistrer le bonus, ca j'ai compris, mais dans ce cas précis, est ce que le score est modifié ? ou non ? (dans mon exemple, je ne le modifie pas)
LA GLOBULE
le 15/02/2008 à 21:48
Nombre de sessions ouvertes??
Si tu veux compter le nombre exact de sessions ouvertes, la méthode change suivant le handler de session que tu utilises :
- système de fichier : tu comptes le nombre de fichiers de session
- base de données : tu fais une requête SQL qui compte le nombre d'entrées

Sinon, tu peux aussi faire comme dans le comment faire "afficher le nombre de connectés sur un site".
LA GLOBULE
le 15/02/2008 à 11:33
Problème Mail
A mon avis, tu ne nous montres pas le bon code.

En effet, l'erreur que tu nous pastes, c'est typiquement l'erreur qui résulte de l'utilisation d'un mysql_fetch_array sur un mysql_query qui n'a pas retourné une ressource MySQL.

Or dans ton code, tu as bien un or die sur ton mysql_query, donc le die aurait du se faire et pas le mysql_query.

Mais bref, ton problème se situe au niveau de ta requete SQL, elle n'est pas bonne, parce que tu n'échappes pas les chaines de caractères que tu injectes dedans.

Pour cela, utilise la fonction mysql_escape_string.
LA GLOBULE
le 14/02/2008 à 23:21
Problème d'enregistrement du bonus, flash, php, msql
Applique toi à l'écrit, parce que la, on ne comprend pas ce que tu souhaites obtenir, donc ce n'est pas évident de t'aider.

En effet :

Si par contre le joeur fait un plus gros score, alors les bonus en plus seron enregistrer.
...
Mais j'arrive pas a placer correctement le Bonus pour qu'il soit pris en compte quand le score est quand même plus petit.


Dans quel cas le bonus est il prit en compte ?
Et est ce que le bonus s'ajoute au score final ?

PS : faire un UPDATE est plus simple que de faire un DELETE puis un INSERT.
LA GLOBULE
le 14/02/2008 à 20:16
Include : toujours partir de la même racine relative.
Quel est le rapport avec le domaine ? Les include se fondent sur le système de fichier du serveur. Donc si tu colles un chemin absolu, ca fonctionnera tout le temps, peu importe le domaine.
LoadingChargement en cours