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 :

Erreur code mysql et php


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 19
    Par défaut Erreur code mysql et php
    Bonjour, sur ce lien http://ctertrais.free.fr les carrés s'affiche normalement mais en plusieurs fois ce que je cherche c'est a comprendre pourquoi ils s'affcihent plusieurs fois.Je viens de remarquer qu'il s'affiche autant de fois qu'il y a de numéros de casse dans ma requête mysql. Comment faire pour que chaque numéros s'affiche une seule fois?En tout il doit y avoir 100 carrés avec des numéro allant de 1 à 100.

    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
    <center><h1>Winer coins</h1></center>
    <?php include "config.php" ;?>
    <style>
    div{
      display:inline-block;
      vertical-align:top;
    }
    </style>
    <div style="height:1000px;width:1200px;"> <?php
     
     
    $i=0;
    $a=1;
    while($i<100) {
    $ra= mysql_query("SELECT numero FROM carre WHERE color=1");
    while($r = mysql_fetch_array( $ra )){
    if($a != $r['numero']){
     ?><a href="http://ctertrais.free.fr/buy.php?id=<?php echo $a;?>"><div id="<?php echo $a;?>"style="margin-bottom:10px;width: 72px; height:72px; background: url('img/carrevide.png');"><?php echo $a;?></div></a> <?php
      }
      else{
      ?><a href="http://ctertrais.free.fr/buy.php?id=<?php echo $a;?>"><div id="<?php echo $a;?>"style="margin-bottom:10px;width: 72px; height:72px; background: url('img/carreplein.png');"><?php echo $a;?></div></a><?PHP
    }}
      $i=$i+1;
      $a=$a+1;
    }
    ?></div>

  2. #2
    Membre émérite Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Par défaut
    Bonjour,

    Soit tu fais un select distinct :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT distinct(numero) FROM carre WHERE color=1
    Soit tu as besoin des infos pour chaque carré et dans ce cas tu pars sur le même traitement, mais tu mets une variable lastValue, à chaque ligne de BD tu mets lastValue = currentValue à la fin, mais tu fais d'abord un if(currentValue != lastValue) echo '</div>' pour fermer le carré précédent.

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 19
    Par défaut
    J'ai utilisé le premier choix mais ça me met ça http://ctertrais.free.fr

    Bonc le second cas je ne comprends pas!! Merci de m 'expliquer s'il vous plait comme je dois le mettre dans mon code?

  4. #4
    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
    Mets tout tes résultats dans un tableau et contrôle après pour chaque case.
    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
    <center><h1>Winer coins</h1></center>
    <?php include "config.php" ;?>
    <style>
    div{
      display:inline-block;
      vertical-align:top;
    }
     
    .carrevide {
    	margin-bottom:10px;
    	width: 72px;
    	height:72px;
    	background: url('img/carrevide.png');
    }
     
    .carreplein {
    	margin-bottom:10px;
    	width: 72px;
    	height:72px;
    	background: url('img/carreplein.png');
    }
    </style>
    <div style="height:1000px;width:1200px;">
    <?php  
     
    $ra= mysql_query("SELECT numero FROM carre WHERE color=1");
    while($r = mysql_fetch_array( $ra )){
      $result[$ra['numero']] = TRUE;
    }
     
    for ($i = 0; $i < 100; $i++) {
    	if(isset($result[$a])){
    		$class = 'carrevide';
    	}
    	else {
    		$class = 'carreplein';
    	}
     
     echo '<a href="http://ctertrais.free.fr/buy.php?id=' . $i . '"><div id="' . $a . '" class="' . $class . '">' . $a . '</div></a>';
    }
    ?>
    </div>
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 19
    Par défaut
    ça ne marche pas dsl!!!
    Mais l'idée de théocrite marche mais j aimerais bien qui'il me montre le second choix car je ne comprend pas!!

  6. #6
    Membre émérite Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Par défaut
    Pourquoi elle ne marche pas la solution de sabotage ? Elle est bien propre et tout, c'est juste que tu ne fais pas l'effort de comprendre...

    La grosse différence entre ce qu'il propose et ce que je propose c'est que je pars de ton code et je fais du quick and dirty dessus alors qu'il propose la solution la plus propre disponible, qui te demande donc de réfléchir une seconde pour intégrer ton code dedans.

    Je pense que tu devrais regarder un peu les cours de PHP que tu peux trouver ici avant de te lancer parce que là c'est pas gagné...


    Tu récupères de ta base de données des valeurs.

    Sabotage propose :
    • Pour chaque ligne de la bd, mets dans un tableau true pour la clé associé (numéro de case)
    • on dessine le tableau à partir du tableau clé => booléen


    Pour ma part :
    • On récupère les clés de case uniques
    • on écrit une case par ligne


    Ou
    • On récupère tout
    • Pour la ligne 1, on ouvre une case qu'on ne ferme pas
    • pour les lignes suivantes, si la clé est la même on ne ferme pas, et on passe
    • si la clé est différente on ferme, puis on ouvre une autre case
    • une fois la boucle finie on ferme la case


    La pire solution est la dernière (celle qui t'attire le plus), mon autre solution est intermédiaire, et celle de sabotage est propre.

  7. #7
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 19
    Par défaut
    Ok je prends la methode de sabotage mais

    faut ajouter quoi a son code?

    Sabotage je comprends pas ta methode

  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
    Etant donné que tu n'as pas dit ce qui ne marchait pas / ce que ça donnait, difficile de te répondre.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 19
    Par défaut
    Je souhaite que la page affiche 100 carrés certain sont jaune(c'est à dire que leur numéro n'est pas dans la base de données)ou certain sont rouge(c'est à dire que leur numéro est dans la base de donnée).

    Ce que je souhaite c'est que il y ait un carré par chiffre soit 100 carré et pas plus de 100.

    Ici est le probleme http://ctertrais.free.fr/ipn.php



    Merci de m'aider J'ai fait un nouveau code dite moi
    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
    <center><h1>Winer coins</h1></center>
    <?php include "config.php" ;?>
    <style>
    div{
      display:inline-block;
      vertical-align:top;
    }
    </style>
    <?php
     
    $ra= mysql_query("SELECT numero FROM carre WHERE color=1");
    while ($x = mysql_fetch_assoc($ra)) {
    $x[numéro]=true;
    }
    $a=1;
    $i=0;
    while($i<100){
    if(isset($x[$i])){
     
    echo ?> <a href="http://ctertrais.free.fr/buy.php?id=<?php echo $a;?>"><div id="<?php echo $a;?>"style="margin-bottom:10px;width: 72px; height:72px; background: url('img/carreplein.png');"><?php echo $a;?></div></a>   <?php
    }
    else
    {
    ?><a href="http://ctertrais.free.fr/buy.php?id=<?php echo $a;?>"><div id="<?php echo $a;?>"style="margin-bottom:10px;width: 72px; height:72px; background: url('img/carrevide.png');"><?php echo $a;?></div></a><?php
    }
    $i=$i+1;
    $a=$a+1;
    }
     
     
     
    ?>

  10. #10
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 19
    Par défaut
    aidez moi svp

  11. #11
    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
    Étant donné que tu ne lis rien de ce qu'on te dit, on ne peut pas t'aider.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. code erreur 1030 :: Mysql
    Par lthomasjet dans le forum MySQL
    Réponses: 1
    Dernier message: 04/08/2008, 15h46
  2. [PHP-JS] erreur code sur condition ?
    Par pascale86 dans le forum Langage
    Réponses: 2
    Dernier message: 04/12/2007, 13h25
  3. [PHP-JS] erreur code php
    Par fati31 dans le forum Langage
    Réponses: 12
    Dernier message: 20/06/2007, 11h15
  4. erreur de requete sous php mais pas sous mysql
    Par kenny49 dans le forum Requêtes
    Réponses: 21
    Dernier message: 28/06/2006, 17h36
  5. Erreur connexion MySQL-PHP
    Par specialfox dans le forum Installation
    Réponses: 3
    Dernier message: 27/09/2005, 20h47

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