MySQL incrémente une valeur de 2 au lieu de 1

aureb09 Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   -  
aureb09 Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
Voilà un petit soucis simple mais plutôt étrange... !

J'ai créer un petit script sur une page d'accueil permettant d'ajouter pour chaque jour, le nombre de visiteurs :
$date_ajd = date("Y-m-d");

$req_date=$bdd->query("SELECT * FROM stats_visits WHERE date = '".$date_ajd."' ");
$data_date = $req_date->fetch();
$req_date->closeCursor();

if(!isset($data_date['date'])){
 $req = $bdd->query("INSERT INTO stats_visits (date, visites) VALUES ('".$date_ajd."', '1')");
}
else{
 $total_visits=$data_date['visites']+1;
 $req = $bdd->query("UPDATE stats_visits SET visites = '".$total_visits."' WHERE id = '".$data_date['id']."'");
}


Problème : Si la date n'existe pas dans la BDD, j'ai bien une nouvelle ligne qui apparaît, mais la valeur de la colonne 'Visites' vaut 2 alors que dans mon code ci-dessus, j'ai bien indiqué que je souhaitais ajouter la valeur 1 !
De même, si la date existe, au lieu de changer la valeur à 2 pour la 2éme visite, la colonne vaut 4, puis 6, puis 8 etc.

J'ai vérifier les valeurs des variables
$data_date['visites']
et
$total_visits
afin de savoir si elle s'incrémentait bien de 1 comme je le voulais et c'est bien le cas !

Avez-vous une idée d'ou peut venir ce +2 qui s'ajoute au lieu de +1 ?

Merci d'avance
A voir également:

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour
Comlence par mettre un die après ton if et regarde ce que ca donne en bdd
Si c'est bon.. c'est que ton script est sûrement appelé une seconde fois ailleurs dans ton site.

2
aureb09 Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   2
 
Bonjour, merci ! J'ai donc testé et il s'agit d'un fichier JS qui fait cela : il s'agit d'un script pour un slider
0