Partage
  • Partager sur Facebook
  • Partager sur Twitter

erreur dans mon script

connecté.php

    5 juin 2006 à 17:55:00

    Bonjour à tous
    J'ai une erreur dans mon script connecté.php que je n'arrive pas à corriger.
    Voici le fichier en question
    <?php

    require "conf.php3"; //Commme d'ab
    mysql_connect("$sql_serveur","$sql_login","$sql_pass");
    mysql_select_db("$sql_bdd"); //Comme d'ab


    // -------
    // ETAPE 1 : on vérifie si l'IP se trouve déjà dans la table
    // Pour faire ça, on n'a qu'à compter le nombre d'entrées dont le champ "ip" est l'adresse ip du visiteur
    $retour = mysql_query('SELECT COUNT(ip) AS nbre_entrees FROM temp WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
    $donnees = mysql_fetch_array($retour);
    if ($donnees['nbre_entrees'] == 0) // L'ip ne se trouve pas dans la table, on va l'ajouter
            {
                if (!isset($_SESSION['membre'])) //Le code pour verifier qu'une session existe
                            {
                            mysql_query('INSERT INTO temp VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\', "visiteur", "0", ' . time() . ')') OR die(mysql_error());   
                            }
                    else //Si oui
                            {
                            $pseudo = $_SESSION['membre'];
                            $rang = $_SESSION['access'];
                                                    $idrang = $_SESSION['idmembre'];
                                                    mysql_query('INSERT INTO temp VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\', "'.$pseudo.'", "'.$rang.'", ' . time() . ')') OR die(mysql_error());   
                     
                            }
            }
            else // L'ip se trouve déjà dans la table, on met juste à jour le timestamp
            {
                    $pseudo = $_SESSION['membre'];
            $rang = $_SESSION['access'];
                    $idrang = $_SESSION['idmembre'];
                   
                    mysql_query('UPDATE temp SET timestamp=' . time() . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
                    mysql_query('UPDATE temp SET pseudo=' . $pseudo . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
                    mysql_query('UPDATE temp SET rang=' . $rang . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
            }

    // -------
    // ETAPE 2 : on supprime toutes les entrées dont le timestamp est plus vieux que 5 minutes

    // On stocke dans une variable le timestamp qu'il était il y a 5 minutes :
    $timestamp_5min = time() - (30 * 1); // 60 * 5 = nombre de secondes écoulées en 5 minutes
    mysql_query('DELETE FROM temp WHERE timestemp < ' . $timestamp_5min);

    // -------
    // ETAPE 3 : on compte le nombre d'ip stockées dans la table. C'est le nombre de visiteurs connectés
    $retour = mysql_query('SELECT COUNT(*)AS nbre_entrees FROM temp');
    $donnees = mysql_fetch_array($retour);


    // Ouf ! On n'a plus qu'à afficher le nombre de connectés !
    $verif = mysql_num_rows($retour);
    if ($verif < 2)
    {
    $visiteur = "visiteur";
    }
    else
    {
    $visiteur = "visiteurs";
    }
    echo '<hr/>' . $donnees['nbre_entrees'] . ''.$visiteur.'<br/>';
    echo 'membres connectés :';
            $membres = query('SELECT * FROM temp where id_membres != "visiteur"');
            while($connecté = mysql_fetch_array($membres))
            {
            if ($connecté['rang']=='administrateur')
                    {
                    $membre = '<p class="administrateur">"'.$connecté['id_membres'].'"</p>';
                    }
                    else
                    {
                    if ($connecté['rang']=='modérateur')
                            {
                            $membre = '<p class="modérateur">"'.$connecté['id_membres'].'"</p>';
                            }
                            else
                            {
                            $membre = '<p class="membre">"'.$connecté['id_membres'].'"</p>';
                            }
                    }
           
            $membre = $connecté['id_membres'];
            echo $membre;
            }
    echo '<hr/>';

    ?>


    Voila maintenant l'adresse ou l'on peut voir ce que donne le fichier
    www.dubs07.xooit.net
    regarder le bas de la page vous verrez l'erreur
    Quelqu'un pourrez t'il m'aider?
    :)

    Merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      5 juin 2006 à 20:29:42

      je ne vois pas l'erreur ...
      problème résolu ?
      • Partager sur Facebook
      • Partager sur Twitter
        5 juin 2006 à 20:36:19

        Ouaouh, oui...
        Postes-nous l'erreur renvoyée, s'il y en a une, ou le fonctionnement défaillant...
        • Partager sur Facebook
        • Partager sur Twitter
          5 juin 2006 à 21:32:20

          En fait il n'y a pas d'erreur mais au bout d'un moment on prend la session d'un autre membre connecté.

          Jene sais pas si j'ai été trés clair
          lol
          :)
          • Partager sur Facebook
          • Partager sur Twitter
            5 juin 2006 à 21:50:35

            session_start();
            session_destroy();
            unset($_SESSION);

            C'ets un système comme celui-ci que j'utilise: je renouvelle la session à chaque nouvelle page, en plus, en utilisant le phph_sess_id.
            • Partager sur Facebook
            • Partager sur Twitter

            erreur dans mon script

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown