Bug inexpliquable compteur de clic
okuni
Messages postés
1325
Statut
Membre
-
okuni Messages postés 1325 Statut Membre -
okuni Messages postés 1325 Statut Membre -
Bonjour à tous,
J'ai découvert un bug sur mon site il y a peu.
j'ai une liste de données affichée avec un while.
Tout s'affiche correctement.
Il y a chaque fois un lien qui redirige vers une autre page (compteur.php)
Cette page incrémente le nombre de clic et ensuite, elle enregistre le nouveau résultat dans la base de donnée.
Mais voilà le soucis.
Une fois que j'ai cliqué sur le lien, l'incrémentation se fait correctement.
Je reviens sur la page précédente et là, soit le nombre de clic est égal à 1 (ce qui est normal (le compteur de départ est 0)) soit par magie, il m'affiche 2.
Donc voila, je ne comprend absolument pas pourquoi il incrémente de 2 mon nombre (si c'est à ce niveau du problème)
Bref, j'ai besoin d'aide.
Merci à ceux qui trouveront une solution.
J'ai découvert un bug sur mon site il y a peu.
j'ai une liste de données affichée avec un while.
Tout s'affiche correctement.
Il y a chaque fois un lien qui redirige vers une autre page (compteur.php)
Cette page incrémente le nombre de clic et ensuite, elle enregistre le nouveau résultat dans la base de donnée.
Mais voilà le soucis.
Une fois que j'ai cliqué sur le lien, l'incrémentation se fait correctement.
Je reviens sur la page précédente et là, soit le nombre de clic est égal à 1 (ce qui est normal (le compteur de départ est 0)) soit par magie, il m'affiche 2.
Donc voila, je ne comprend absolument pas pourquoi il incrémente de 2 mon nombre (si c'est à ce niveau du problème)
Bref, j'ai besoin d'aide.
Merci à ceux qui trouveront une solution.
A voir également:
- Bug inexpliquable compteur de clic
- Compteur de contractions - Télécharger - Santé & Bien-être
- Bug chromecast - Guide
- Atout clic - Télécharger - Éducatifs
- Clic molette ne fonctionne plus - Forum souris / Touchpad
- Iptv bug - Forum Box et Streaming vidéo
13 réponses
J'ai bien examiné le code, je l'ai fait tourner chez moi, il a l'air OK. Le problème doit venir d'ailleurs.
Remarque : si $titre (qui vient d'où ?) est empty, ton compteur est incrémenté sans que le nombre de clics soit affiché. S'il était à 0, quand tu reviendras, il sera à 2, ce qui est normal, et tu n'auras jamais vu le 1.
Remarque : si $titre (qui vient d'où ?) est empty, ton compteur est incrémenté sans que le nombre de clics soit affiché. S'il était à 0, quand tu reviendras, il sera à 2, ce qui est normal, et tu n'auras jamais vu le 1.
Peux-tu confirmer que le compteur ne passe jamais de 1 à 3 ni de 2 à 4, etc, seulement de 0 à 2 ?
Le fait-il souvent (à tous les coups, une fois sur 2, sur 10...) ?
comment est appelée la page qui contient ce script ( clic sur un lien, redirection automatique etc...)?
Le fait-il souvent (à tous les coups, une fois sur 2, sur 10...) ?
comment est appelée la page qui contient ce script ( clic sur un lien, redirection automatique etc...)?
Explications très claires, merci.
Il est clair (façon de parler...) que ton compteur est appelé deux fois quand le nombre de clics est à 0.
Je suppose que le code que tu as montré est dans un include de ta page index.php. Peux-tu montrer ce code ?
Ta valeur de $id ne serait-elle pas transmise involontairement comme variable de session, et conservée d'un appel à l'autre même dans id dans le GET ?
Il est clair (façon de parler...) que ton compteur est appelé deux fois quand le nombre de clics est à 0.
Je suppose que le code que tu as montré est dans un include de ta page index.php. Peux-tu montrer ce code ?
Ta valeur de $id ne serait-elle pas transmise involontairement comme variable de session, et conservée d'un appel à l'autre même dans id dans le GET ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Vu le up, mais désolé, je ne comprends pas. La seule anomalie que je vois, c'est que tu génères ta redirection sans <HTML> ni <HEAD> ni <BODY> ce qui n'est pas propre, mais n'explique rien.
Vu le up, mais désolé, je ne comprends pas. La seule anomalie que je vois, c'est que tu génères ta redirection sans <HTML> ni <HEAD> ni <BODY> ce qui n'est pas propre, mais n'explique rien.
Apparemment, le problème ne se pose que lorsque le compteur est à 0 mais ce n'est peut-être qu'une coïncidence.
C'est juste, j'avais completement oublié ce "détail" ^^"
<?php
/*Compteur de clic*/
include ('../raynal/config.php');
$id = $_GET['id'];
$result0 = mysql_query("SELECT lien,compteur FROM raynal_video_episode WHERE id='$id'");
$donnees = mysql_fetch_array($result0);
$lien = $donnees['lien'];
if (!empty($lien))
{
//On incrémente le nombre de clic
$clic = $donnees['compteur'] + 1;
//On update le nombre de clic.
$result2 = mysql_query("UPDATE raynal_video_episode SET compteur='$clic' WHERE id='$id'");
}
if (empty($titre) or empty($lien))
{
echo '<meta http-equiv=refresh content="1; URL=http://daphneed.free.fr/blizer/index.php">';
echo "Une erreur est survenue, vous allez être redirigé dans 1 seconde.<br/>";
echo "Merci de prévenir le webmaster.";
}
else
{
echo '<meta http-equiv=refresh content="0; URL='.$lien.'">';
echo 'La redirection se fera dans 1 seconde. Si ce n\'est pas le cas, <a href="'.$lien.'">cliquez ici</a>';
echo '<br/>';
echo 'Il y a eu '.$clic.' clic.';
}
?>
Merci de ton aide. :)
Effectivement, je ne sais pas pourquoi j'ai mi $titre ^^"
surement une erreur du a une maj.
Malheureusement, le bug persiste.
Effectivement, je ne sais pas pourquoi j'ai mi $titre ^^"
surement une erreur du a une maj.
Malheureusement, le bug persiste.
Je confirme, c'est seulement quand le compteur est a 0 qu'il passe directement a 2.
Et il le fait tout le temps.
On commence sur la page index.php?page=serie
La il y a le lien de redirection par exemple :
index.php?page=compteur_serie&id=154
ensuite toujours sur index.php, j'inclue le compteur (a l'aide d'un switch et de la variable $_GET['page'])
Pour terminer, la page compteur.php redirige vers le lien qui a comme id $_GET['id'] après l'incrémentation et l'enregistrement du compteur dans la base de donnée.
Et il le fait tout le temps.
On commence sur la page index.php?page=serie
La il y a le lien de redirection par exemple :
index.php?page=compteur_serie&id=154
ensuite toujours sur index.php, j'inclue le compteur (a l'aide d'un switch et de la variable $_GET['page'])
Pour terminer, la page compteur.php redirige vers le lien qui a comme id $_GET['id'] après l'incrémentation et l'enregistrement du compteur dans la base de donnée.
voila la page index.php
J'ai mi en retrait la partie concernée.
pour $id, je vois pas comment et où dans mon code, elle pourrai être enregistré dans une session.
<?php
$page = $_GET['page'];
switch($page)
{
case 'serie':
include('accueil.php');
break;
case 'ajouter_episode':
include('ajouter_episode.php');
break;
case 'ajouter_episode2':
include('ajouter_episode2.php');
break;
case 'ajouter_serie':
include('ajouter_serie.php');
break;
case 'ajouter_serie2':
include('ajouter_serie2.php');
break;
case 'perso':
include('perso.php');
break;
case 'perso2':
include('perso2.php');
break;
case 'modifier':
include('modifier.php');
break;
case 'modifier2':
include('modifier2.php');
break;
case 'modifier3':
include('modifier3.php');
break;
case 'compteur_serie':
include('compteur.php');
break;
case 'recherche':
include('recherche.php');
break;
case 'recherche2':
include('recherche2.php');
break;
default:
include ('accueil.php');
break;
}
?>
J'ai mi en retrait la partie concernée.
pour $id, je vois pas comment et où dans mon code, elle pourrai être enregistré dans une session.