IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Mise à jour PHP chez gandi -> Fonctionnalité du site qui ne fonctionne plus


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Artisan
    Inscrit en
    Novembre 2014
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Artisan
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 46
    Par défaut Mise à jour PHP chez gandi -> Fonctionnalité du site qui ne fonctionne plus
    Bonjour
    je viens vers vous car j'ai chercher j'ai des semblant de réponse avec mes recherches mais aucun n'a fonctionné, je suis une bille definitivement. Peux etre que quelqu'un pourra m'aider.
    Version php gandi : PHP Version 5.6.30-0+deb8u1

    Ma page sert a afficher le nombre de connecté ainsi que les pseudos dans une section du site.
    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    <?php
     // Connexion à MySQL assuree par le script parent
     
    // -------
     // ETAPE 1 : on supprime toutes les entrées dont le timestamp est plus vieux que 15 minutes
     // Cette etape doit etre en premier car evite que si personnes ne navigue sur le site les timestamp_15min
     //ne sont pas supprimes et donc si le meme joueur se reconnecte le lendemain 
     //la duree de jeu est comptee comme une nuit enfin c complique merde
     // On stocke dans une variable le timestamp qu'il était il y a 5 minutes :
     $timestamp_15min = time() - (60 * 15); // 60 * 15 = nombre de secondes écoulées en 15 minutes
     mysql_query("DELETE FROM `connectes` WHERE timestamp < '". $timestamp_15min."'");
     
     
     // ETAPE 2 : 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 * FROM connectes WHERE id='".$joueur->plouc_id."' LIMIT 1");
     $deja_connecte = mysql_num_rows($retour);
     if (($deja_connecte == 0) AND ($joueur->pseudo_plouc !='LEKING')) 
    // L'ip ne se trouve pas dans la table, et le plouc en question nest pas ladmin, on va l'ajouter
     {
        $sql_ajout_connecte= "INSERT INTO connectes (ip,id,pseudo,xp,timestamp) VALUES('".$_SERVER['REMOTE_ADDR']."','".$joueur->plouc_id."','".$joueur->pseudo_plouc."','".$joueur->plouc_xp."' ,'".time()."')";
        mysql_query($sql_ajout_connecte) or die(mysql_error());
     }
     elseif (($deja_connecte != 0) AND ($joueur->pseudo_plouc !='LEKING')) 
     	// L'ip se trouve déjà dans la table, on met juste à jour le timestamp et l'xp et le pseudo
     	//si l'ip est deja dans la table, incrémente le temps de jeu du MEMBRE
     {
     	$timestamp_connecte = mysqli_result($retour,0,timestamp);
     	//-debug echo $timestamp_connecte;
     	$temps_en_plus = time() - $timestamp_connecte;
         mysql_query("UPDATE connectes SET timestamp='".time()."', pseudo='".$joueur->pseudo_plouc."' ,xp='".$joueur->plouc_xp."', ip='".$_SERVER['REMOTE_ADDR']."' WHERE id='".$joueur->plouc_id."'") or die(mysqli_error());
        $sql_tps_connection = "UPDATE membres SET `temps_de_jeu` = `temps_de_jeu` + ".$temps_en_plus." WHERE id='".$joueur->plouc_id."'";
        $sql_tps_connection= mysql_query($sql_tps_connection) or die(mysql_error());
        //-debug echo 'temps de connection est augment&eacute; de '.$temp;
     }
     
     
     // -------
     // 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 connectes");
     $nb_connectes = mysql_fetch_array($retour);
     
     ?>
    Merci vraiment merci si vous pouvez m'aider.
    Il semblerait que MYSQL_QUERY soit obsolete mais sur le reste du site cela ne pose pas de probleme alors j'ai un doute sur la fonctionnalité.
    Merci

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    quelle est la ligne qui ne fonctionne plus ?

  3. #3
    Membre éclairé
    Inscrit en
    Janvier 2007
    Messages
    439
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 439
    Par défaut
    Bonjour

    effectivement mysql_query est obsoletes et ne marchera plus du tout bientôt en fonction des hébergeurs

    c'est assez simple mysqli maintenant voilà la doc :

    http://php.net/manual/fr/book.mysqli.php

  4. #4
    Membre Expert
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Par défaut
    Pour passer facilement de mysql à mysqli sans avoir à reprendre tout le code.

    Jette un coup d'oeil là https://www.developpez.net/forums/d1...-mysql-mysqli/

    Comme l'hébergeur est en 5.6 si tu utilises ce que j'ai posté il faudra renommer les fonctions mysql en x_mysql.

    ATTENTION : Toutes les fonctions mysql ne sont pas présentes. A tester en local avant toute chose bien évidemment.

  5. #5
    Membre averti
    Homme Profil pro
    Artisan
    Inscrit en
    Novembre 2014
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Artisan
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 46
    Par défaut
    CHanger en x_mysql mais rien n'a change sniff

  6. #6
    Membre Expert
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Par défaut
    Mais encore ? Il faut donner des précisions.
    Tu as des messages d'erreur ?
    As tu mis des traces pour voir où ça passe et où ça ne passe pas ?

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/03/2016, 13h03
  2. Mise a Jour PHP sur Gandi
    Par cazteam dans le forum Linux
    Réponses: 0
    Dernier message: 16/04/2013, 18h50
  3. mise à jour exe chez client - etat
    Par chapeau_melon dans le forum WinDev
    Réponses: 9
    Dernier message: 19/03/2008, 16h17
  4. Mise à jour PHP sur Apache
    Par metfan dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 19/07/2007, 10h12
  5. [Avancé]Mise à jour automatique chez les utilisateurs
    Par Claythest dans le forum Langage
    Réponses: 10
    Dernier message: 13/04/2007, 12h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo