Incrémentation MYSQL

Répondre
manu56
le 26/01/2006 à 00:19
manu56
Salut !
j'ai encore un soucis que je ne comprends vraiment pas ...

UPDATE `forum_sujet` SET visite=visite+1 WHERE `sujet_id`='15'

L'effet attendu serait biensur l'incrémentation de la valeur de visite de 1. Lorsque je vais dans phpmyadmin tout se déroule correctement mais lorsque je l'éxécute via mon script il m'incrément de 2 !!!
J'ai biensur vérifié que je n'éxécutais pas la requete en double et je ne pige vraiment pas le problème...

Merci de votre aide :=)
LA GLOBULE
le 26/01/2006 à 00:39
LA GLOBULE
Tu n'utiliserais pas un 'confirm' en javascript sur un <a href> ?
Ou un truc du genre ?

Si oui, met bien un return false sur ton onclick, sinon, il est executé deux fois.

Si ca n'a rien à voir, montre nous ton code.
manu56
le 26/01/2006 à 00:57
manu56
euh non pas de confirm ni de js ...

Sinon mon code est plutot long donc ca vaut p/E pas le coup que je le mette en entier si ?!

J'utilise une fonction pour exécuter ma requete, quand je met en commentaire l'appel de ma fonction dans mon code il n'y a plus d'incrémentation donc je ne l'ai pas appelée deux fois.

Sinon voici le code de ma fonction :

function compteur_visite_sujet($id_sujet) {
global $table_forum_sujet;
global $base;

$base->query_execute("UPDATE `".$table_forum_sujet."` SET visite=visite+1 WHERE `sujet_id`='".protege($id_sujet)."'","compteur_visite_sujet()");
}

Mais je ne vois rien de particulier la non plus ...
manu56
le 26/01/2006 à 11:40
manu56
C'est à ne rien y comprendre, aujourd'hui tout marche correctement ... je n'ai pourtant rien changé ...
Bzh
le 26/01/2006 à 17:57
Bzh
Atf !!! Les sauts d'humeurs de monsieur le dauphin !!!! smiley
manu56
le 30/01/2006 à 00:40
manu56
Bah en faite des fois ca marche, des fois non ...
Je pense que c'est plutot une connerie de ma pars qu'un problème du pti dauphin :s
manu56
le 23/03/2006 à 14:58
manu56
Salut,
Désolé de remettre ca sur le tapis mais bon encore le même soucis ...

Donc mon ancien script qui ne fonctionnait pas bien fonctionne normalement dans aucun changement et ma dernière requete d'incrémentation double aussi l'incrémentation.

Je n'y comprend vraiment plus rien smiley

On ne peut pas pourtant pas se planter sur ca !
mysql_query("UPDATE compteur_forum_sujet SET nb_message=nb_message+1 WHERE id_sujet='".protege($id_sujet)."'") or die (mysql_error());

Qaund je test la requete sur phpmyadmin, tout marche nickel et je suis certain de ne pas exécuter la requete en double !
C'est vraiment C** comme truc, ca me fait mal de buter sur un truc comme ca et pas envie de faire deux requetes pour ca ^^

J'ai essayer de locké le temps de l'update ca change rien ...

Si je met mon champ en FLOAT et que je fais +(0.5)ca marche mais je pige vraiment rien ...

Merci de votre aide :d
LupusMic
le 23/03/2006 à 17:09
LupusMic
Tu as essayé de loguer les requêtes ?

Quelle version de MySQL utilises-tu ?
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
zebden
le 23/03/2006 à 17:20
zebden
Lu,

Essaie de virer cette requête et execute la page, si ca incrémente, c'est que tu as forcement un doublon quelquepart.

Sinon donne nous le code de ta page, sur le wall. Ou comme dis Lupus, regarde les logs si tu as.
zebdinou pour les intimes / Blog : http://www.zebden.fr
Répondre
LoadingChargement en cours