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

Langage PHP Discussion :

Bugs inexplicables après passage sous un hébergeur


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Passionné d'informatique
    Inscrit en
    Mars 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Passionné d'informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2014
    Messages : 19
    Par défaut Bugs inexplicables après passage sous un hébergeur
    Bonsoir,

    Cela fait maintenant 2 jours que je n'arrive pas à régler ce problème :

    Je dev un topsite , j'ai afficher le classement sur mon poste en local , nickel sa fonctionne , mais quand je met mon site online sur craym.eu J'ai des soucis

    J'obtiens cela mème après passage sous pdo :

    http://king-rpg.com/alpha/top.php?game=Dofus&limit=0-25

    Alors qu'avant y'avait tous le classement de la catégorie Dofus

    et là

    http://king-rpg.com/alpha/out.php?id=759



    Sa redirigeais correctement avant en local


    Voilà mon code source de la page qui affiche le classement

    PS : Je débute en php


    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    <?php
    $limit=mysql_real_escape_string($_GET['limit']);
    $game=mysql_real_escape_string($_GET['game']);
    // Je me connecte à ma base de données
    $base = mysql_connect (''.$host.'', ''.$username.'', ''.$pass.'');
    mysql_select_db (''.$db.'', $base);
    // Définition de la variable qui délimite les items    
    switch ($limit) { 
        case "0-25"; 
                    $k=0;
            $l=25;
            break; 
        case "26-50"; 
            $k=26;
            $l=50;
            break; 
        case "51-75"; 
            $k=51;
            $l=75;
            break;
        case "76-100"; 
            $k=76;
            $l=100;
            break;        
        case "101-125"; 
            $k=101;
            $l=125;
            break;        
        case "126-150"; 
            $k=101;
            $l=125;
            break;
        case "151-175"; 
            $k=101;
            $l=125;
            break;
        case "176-200"; 
            $k=101;
            $l=125;
            break;                
        default;     
            $k=0;
            $l=25;
            break;     
    } 
    $result = mysql_query("SELECT * FROM top Where game='".$game."' ORDER BY point DESC LIMIT  $k,$l  ") 
    or die(mysql_error());  
    // J'initialise une variable à 1
    switch ($limit) { 
        case "0-25"; 
    $i=1;
            break; 
        case "26-50"; 
    $i=26;
            break; 
        case "51-75"; 
    $i=51;
            break;
        case "76-100"; 
    $i=76;
            break;        
        case "101-125"; 
    $i=101;
            break;        
        case "126-150"; 
    $i=126;
            break;
        case "151-175"; 
    $i=151;
            break;
        case "176-200"; 
    $i=176;
            break;                
        default;     
            $k=0;
            $l=25;
            break;     
    } 
    // Exécution du sql en fonction du paramètre passé dans l'url
     $resultat = mysql_query("select * FROM top WHERE game= '$game' ORDER BY point DESC LIMIT  $k,$l  ");
    while($ligne = mysql_fetch_array($resultat)){
    // Récupération des informations concernants le serveur
       $name=$ligne['name'];
       $web=$ligne['web'];
       $video=$ligne['video'];
       $text=$ligne['text'];
       $annonce=$ligne['annonce'];
       $point=$ligne['point'];
       $nb_clic=$ligne['nb_clic'];   
       $logo=$ligne['logo'];     
       $url=$ligne['rewr'];     
       $id=$ligne['id'];
    ?>
      <div class="ja-box-left" style="width: 100%;">
                            <div class="module">
                <div>
                    <div>
                        <div>
                                                        <h3><strong><?php echo $i++;?>/</strong> <a style="color:black;" href="out.php?id=<?php echo $id; ?>"><?php echo reduireChaineCar($name, 30);?> </a><font style="float:right; padding-right:5px;">Intérêt : <?php echo $nb_clic; ?></font><font style="float:right; padding-right:5px;"><b>Votes</b> : <font style="color:red;"><?php echo $point; ?></font></font></h3>
                                                        <img src="<?php echo $logo; ?>" style="width:410px; height:65px;">
                                                <ul class="latestnews">
        <p><?php echo reduireChaineCar(htmlentities(strip_tags($text)), 300);?></p>
    </ul>                    </div>
                    </div>
                </div>
            </div>
              </div>
    <?php
    } 
        /* Fonction qui réduit le nombre de charactères */
        function reduireChaineCar($chaine, $nb_car, $delim='...') {
          $length = $nb_car;
          if($nb_car<strlen($chaine)){
          while (($chaine{$length} != " ") && ($length > 0)) {
           $length--;
          }
          if ($length == 0) return substr($chaine, 0, $nb_car) . $delim;
           else return substr($chaine, 0, $length) . $delim;
          }else return $chaine;
        }
      /* Fin de ma fonction */
    ?>

    Voilà mon code source de la page qui redirige

    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
    44
    <?php
    // Inclusion de fichier de configuration
    include('config.inc.php');
    @$id=mysql_real_escape_string($_GET['id']);
    // Je me connecte à ma base
    $base = mysql_connect (''.$host.'', ''.$username.'', ''.$pass.'');
    mysql_select_db (''.$db.'', $base);
    // Ta requête (ta question)
    $sql = "SELECT * FROM top WHERE id='$id'";
    // Son résultat (réponse à ta qestion)
    $resultat=mysql_query($sql);
    // Eventuellement le nombre de réponse à ta question
    $reponse=mysql_num_rows($resultat); 
    if ($reponse==null){
    echo 'Impossible de vous rediriger vers la fiche serveur ...';
    }
    else{
    $resultat = mysql_query("select * FROM top WHERE id= '$id'");
        while($ligne = mysql_fetch_array($resultat)){
       $annonce=$ligne['annonce'];
       $serv_id=$ligne['id'];
       $name=$ligne['name'];
       $text=$ligne['text'];
       $web=$ligne['web'];
       $point=$ligne['point'];
       $game=$ligne['game'];
       $logo=$ligne['logo'];
       $video_id=$ligne['video'];
       $clic=$ligne['nb_clic'];
       $url=$ligne['rewr'];
            }
    $click=$clic+1;        
    //Création du SQL
    $sql = "UPDATE top SET nb_clic = '$click' WHERE id = '$id' ";
      // on insère les informations du formulaire dans la table
        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
       if (!$sql) { 
               echo  'Problème lors de la connexion à la base de données .';
        }
        else{
        header('Location: viewserv.php?site='. $url);
         }
    }
    ?>

    Merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je ne vois pas trop pourquoi tu nous parles de PDO.

    Ton problème n'est inexplicable que dans la mesure ou tu n'as rien debuggé encore.
    La première chose à faire est d'afficher et de contrôler tes requêtes dans phpmyadmin :

    Par exemple simplement sur le deuxième code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql = "SELECT * FROM top WHERE id='$id'";
    echo $sql;

    Au passage, ne mets pas des apostrophes partout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $base = mysql_connect (''.$host.'', ''.$username.'', ''.$pass.'');
    mysql_select_db (''.$db.'', $base);
    =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $base = mysql_connect ($host,$username,$pass);
    mysql_select_db ($db, $base);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Passionné d'informatique
    Inscrit en
    Mars 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Passionné d'informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2014
    Messages : 19
    Par défaut
    J'ai afficher la query sql sa m'affiche cela -->

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM top WHERE id=''

  4. #4
    Membre émérite
    Homme Profil pro
    Touche à tout informatique autodidacte
    Inscrit en
    Janvier 2007
    Messages
    811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Touche à tout informatique autodidacte

    Informations forums :
    Inscription : Janvier 2007
    Messages : 811
    Par défaut
    Bonjour,
    avec
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $id=mysql_real_escape_string($_GET['id']);
    echo $id;
    Qu'est ce que ça donne?

    Je soupçonne une histoire de variables super-globales.

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Continue le debugage et fais le bien en accédant à http://king-rpg.com/alpha/out.php?id=759
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sql = "SELECT * FROM top WHERE id='$id'";
    echo $sql;
    var_dump($id);
    var_dump($_GET);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre averti
    Homme Profil pro
    Passionné d'informatique
    Inscrit en
    Mars 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Passionné d'informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2014
    Messages : 19
    Par défaut
    Citation Envoyé par kabkab Voir le message
    Bonjour,
    avec
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $id=mysql_real_escape_string($_GET['id']);
    echo $id;
    Qu'est ce que ça donne?

    Je soupçonne une histoire de variables super-globales.
    Sa affiche rien du tout alors que j'ai fais passer sa dans l'url-->

    http://king-rpg.com/alpha/out.php?id=759

  7. #7
    Membre averti
    Homme Profil pro
    Passionné d'informatique
    Inscrit en
    Mars 2014
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France

    Informations professionnelles :
    Activité : Passionné d'informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2014
    Messages : 19
    Par défaut
    Rebonsoir

    Pouvez-vous m'expliquer cela j'ai remplacer

    ca $id=mysql_real_escape_string($_GET['id']); par $id=htmlentities($_GET['id']);et sa marche xD

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Si ton id est une entier, c'est intval() qu'il faudrait utiliser.

    Pour le reste, enlève les @ de ton code, on en saura peut être plus.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [AC-2010] problème sous 2010 après passage de 2003
    Par electrosat03 dans le forum VBA Access
    Réponses: 4
    Dernier message: 27/11/2012, 19h49
  2. Explorer.exe qui bug après passage au SP3 de XP
    Par d2r2280 dans le forum Windows XP
    Réponses: 8
    Dernier message: 06/05/2009, 10h52
  3. Perte du hostname après reboot sous debian
    Par byloute dans le forum Administration système
    Réponses: 1
    Dernier message: 19/01/2006, 15h50
  4. Problème après "passage" en xhtml1.0
    Par Becafuel dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 16/12/2005, 14h19
  5. Réponses: 1
    Dernier message: 28/10/2005, 09h37

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