Compteur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Compteur

Re: Compteur

par Benji861905 » 07 nov. 2013, 18:44

Merci, voila le bon code:
<?php
 
    $id = (isset($_GET['id'])) ? abs(intval($_GET['id'])) : 0;
    // ouverture de connexion mysql
    $usr = '...';
    $db = '...';
    $pwd = '...';
    $host = '...';
 
    mysql_connect($host, $usr, $pwd);
    mysql_select_db($db);
 
    $req = sprintf("UPDATE liens SET compteur=(compteur +1) WHERE id='%d';",$id);
 
    if (mysql_query($req))
    {
        // compteur incrémenté, on récupère l'URL et on envoie la page
        $req_url = sprintf("SELECT url FROM liens WHERE id='%d';",$id);
 
        $url = mysql_query($req_url);
                if (mysql_num_rows($url) == 1)
        {
            $data = mysql_fetch_array($url);
			header("Location: http://".$data['url']);
        };
    };
        var_dump($id, $req, $req_url, $url);
    mysql_close( );
?>

Re: Compteur

par Benji861905 » 06 nov. 2013, 22:33

Il y a bien quelque chose dans $url
Image

Il n'y a pas de fonctions html avant mon code comme tu peur le voir :)

Re: Compteur

par Mazarini » 06 nov. 2013, 10:07

Hypothèse 1 : tu ne passes pas par l'appel de la fonction header()
Hypothèse 2 : $url ne contient pas ce qu'il faut.

edit :
Hypothèse 3 : cf sirakawa
Mais je parie sur l'hypothèse 2

Re: Compteur

par sirakawa » 06 nov. 2013, 10:02

Le manuel dit :"N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichages PHP. Une erreur très classique est de lire un fichier avec include ou require, et de laisser des espaces ou des lignes vides, qui produiront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards."

Compteur

par Benji861905 » 05 nov. 2013, 23:47

Mon code de compteur compte le nombre de clique mais ne redirige pas... HELP svp
<?php
 
    $id = (isset($_GET['id'])) ? abs(intval($_GET['id'])) : 0;
    // ouverture de connexion mysql
    $usr = '...';
    $db = '...';
    $pwd = '...';
    $host = '...';
 
    mysql_connect($host, $usr, $pwd);
    mysql_select_db($db);
     
    $req = sprintf("UPDATE liens SET compteur=(compteur +1) WHERE id='%d';",$id);
 
    if (mysql_query($req))
    {
        // compteur incrémenté, on récupère l'URL et on envoie la page
        $req_url = sprintf("SELECT url FROM liens WHERE id='%d';",$id);
 
        $url = mysql_query($req_url);
		if (mysql_num_rows($url) == 1);
        {
            header("Location : ".$url);
        };
    };
	var_dump($id, $req, $req_url, $url);
    mysql_close( );
?>