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 :

affichage dans un tableau php


Sujet :

PHP & Base de données

  1. #1
    Membre éprouvé
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Par défaut affichage dans un tableau php
    bonjour,
    voila j ai créer un script pour qu 'il affiche les marque des imprimantes et leur série exemple brother est afficher a coter jet d'encre, ruban,toner laser cela fonctionne exemple hp lui ne met afficher a cote que jet d'encre, toner laser mais voila quand je clique sur les marque il m affiche les série donc jet d encre , toner laser , ruban je ne comprend pouvez vous m aider car après il applique çà a tous les pages suivantes j ai l impression qu' il n affiche dans les pages que les caractéristiques de la marque brother la première marque.

    voici le scripts de la page:
    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
    <?php
    $description = "";
    $keywords = "";
    $subject = "";
    $title = "";
    $fakea = "";
    $menu = true;
     
    $body = '';
     
    $liste_serie = mysql_query('SELECT * FROM typserie');
     
    while( $serie = mysql_fetch_array($liste_serie) )
    {
     
    $body.='<div class="liste">
    	<div class="listeNom">';
     
    		// strtolower($variable) = renvoi le contenu de "variable" en minuscule
    		$body.='<a href="index.php?marque='.$_GET['marque'].'&amp;type='.strtolower($serie['designation_type']).'">'.$serie['designation_type'].'</a>
     
    	</div>
    	<table class="listeTableau2">
    		<tr>
    					<td><div class="Image"><img src="images/serie/'.strtolower($serie['designation_type']).'.gif"></div></td>
    		
    			<td>
    				<div class="DonneSource">
    					
    				
    						<b>Type:</b>'.$serie['designation_type'].'<br />
    						<b>Serie:</b>';
    						$liste2 = mysql_query('SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = '.$serie['id_type']);
     
    						while( $serie2 = mysql_fetch_array($liste2) )
    						{
    							$body.=' ['.$serie2['nom_serie'].']';
    						}
     
    						$body.='
    					</div>
    				</div>
    			</td>
    		</tr>
    	</table>
    </div>';
    }
    ?>
    typeserie= toner laser, ruban, jet d encre
    serie= dcp,fax,...

  2. #2
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Remplace:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $liste2 = mysql_query('SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = '.$serie['id_type']);
    Par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $chSQL="SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = " . $serie['id_type'];
    $liste2 = mysql_query($chSQL);
    echo "<br><b>Requete SQL : </b>".$chSQL."<br><b>Erreur MySQL : </b>".mysql_error()."<br><b>Lignes concernees : </b>".mysql_num_rows();
    En lisant ce que ça t'affichera, tu devrais avoir un peu plus d'infos sur ce qui se passe

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Citation Envoyé par gwinyam Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $chSQL="SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = " . $serie['id_type'];
    $liste2 = mysql_query($chSQL);
    echo "<br><b>Requete SQL : </b>".$chSQL."<br><b>Erreur MySQL : </b>".mysql_error()."<br><b>Lignes concernees : </b>".mysql_num_rows();
    Ou plus simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $chSQL="SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = " . $serie['id_type'];
    $liste2 = mysql_query($chSQL) or die ('Erreur SQL sur '.$chSQL.'<br/>'.mysql_error());
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Membre éprouvé
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Par défaut
    voila ce que cela m afficher pour moi ca n a pas beaucoup de sens:
    Warning: Wrong parameter count for mysql_num_rows() in C:\Documents and Settings\EasyPHP 2.0b1\www\suncopy\catalogue\marque.php on line 35

    Requete SQL : SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = 1
    Erreur MySQL :
    Lignes concernees :
    Warning: Wrong parameter count for mysql_num_rows() in C:\Documents and Settings\EasyPHP 2.0b1\www\suncopy\catalogue\marque.php on line 35

    Requete SQL : SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = 2
    Erreur MySQL :
    Lignes concernees :
    Warning: Wrong parameter count for mysql_num_rows() in C:\Documents and Settings\EasyPHP 2.0b1\www\suncopy\catalogue\marque.php on line 35

    Requete SQL : SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = 3
    Erreur MySQL :
    Lignes concernees :

    ci quelqu un pourra m expliquer

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 138
    Par défaut
    je voudrais bien t'aider mais je comprend pas vraiment ce que tu veux, quand tu clique sur la marque que veux-tu qui s'affiche??
    Si tu pouvais aussi nous montrer la structure de ta base de données car je pense que ton problème viens de la requête

  6. #6
    Membre éprouvé
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Par défaut base
    voila j ai mit une image dans les piece joint du mcd de la base en espereant que cela vous aidera.

  7. #7
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Il y a une petite erreur de ma part ici:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $chSQL="SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = " . $serie['id_type'];
    $liste2 = mysql_query($chSQL);
    echo "<br><b>Requete SQL : </b>".$chSQL."<br><b>Erreur MySQL : </b>".mysql_error()."<br><b>Lignes concernees : </b>".mysql_num_rows($liste2);
    Teste avec ça et avec le code de Celira sinon.

  8. #8
    Membre éprouvé
    Inscrit en
    Janvier 2008
    Messages
    1 159
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 159
    Par défaut
    voila j ai essayer et cela ma donner ceci:

    Requete SQL : SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = 1
    Erreur MySQL :
    Lignes concernees : 7
    Requete SQL : SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = 2
    Erreur MySQL :
    Lignes concernees : 6
    Requete SQL : SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = 3
    Erreur MySQL :
    Lignes concernees : 5

  9. #9
    Membre émérite
    Avatar de Montor
    Homme Profil pro
    Autre
    Inscrit en
    Avril 2008
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Avril 2008
    Messages : 879
    Par défaut Plus d'info
    Bonjour
    je n'ai pas compris votre probleme svp peut tu m'envoyer un exemple et champs de chaque table ok !!!!!!!

  10. #10
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2007
    Messages : 121
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "...ON id_serie = idS WHERE..."
    Quand je vois ca je me demande comment mysql ne peut il pas y voir une erreur...les guillemets qu'ils soient simples ou doubles, c'est pas pour faire joli :p.

    m'enfin prou le reste, je n'ai pas compris ton probleme ni ce que tu voulais.

  11. #11
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Il n'y a absolument pas besoin des guillemets simples ou doubles sous MySQL. Tout comme le ; final. A moins d'être en ligne de commande pour ce dernier ";"

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 138
    Par défaut
    Mais je comprend pas pourquoi tu te complique la vie a faire une jointure pareil...
    De plus j'ai l'impression que tu as une erreur de modélisation....

  13. #13
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Essaie de redéfinir clairement, ton objectif de la façon la plus claire et la plus détaillée possible.
    Idem pour ce que tu obtiens à l'heure actuelle, sans l'affichage de debug que je t'ai proposé.


    Je crois qu'aucun d'entre nous n'a vraiment saisi ce que tu veux.

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 138
    Par défaut
    Citation Envoyé par gwinyam Voir le message
    Essaie de redéfinir clairement, ton objectif de la façon la plus claire et la plus détaillée possible.
    Idem pour ce que tu obtiens à l'heure actuelle, sans l'affichage de debug que je t'ai proposé.


    Je crois qu'aucun d'entre nous n'a vraiment saisi ce que tu veux.
    Tu as raison ça va nous permettre d'y voir plus clair et donc de mieux pour l'aider

  15. #15
    Membre émérite
    Avatar de Montor
    Homme Profil pro
    Autre
    Inscrit en
    Avril 2008
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Avril 2008
    Messages : 879
    Par défaut Utiliser Dreamveaver ou autre
    J'ai utilisé Dreamveaver pour produire automatiquement de ce code
    remplacer

    $liste2 = mysql_query('SELECT nom_serie FROM serie INNER JOIN associer ON id_serie = idS WHERE id_typeS = '.$serie['id_type']);

    par

    $query_liste2 =sprintf("SELECT nom_serie FROM serie, associer WHERE id_typeS = %s AND id_serie = idS", $serie['id_type']);
    $liste2 = mysql_query($query_liste2);

    vous avez deux table "serie, associer" il faut déclarer $query_liste

  16. #16
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2007
    Messages : 121
    Par défaut
    Citation Envoyé par gwinyam Voir le message
    Il n'y a absolument pas besoin des guillemets simples ou doubles sous MySQL. Tout comme le ; final. A moins d'être en ligne de commande pour ce dernier ";"
    Quand il s'agit d'une chaine de caractère, c'est obligatoire car même si ca marche une fois c'est "un coup de chance"(j'y crois pas en fait), mysql m'a souvent(en fait a chaque fois que j'ai oublié de les mettre...) refusé l'absence de guillemets.
    Ce n'est autorisé que pour les noms de champs, table et autres objets mysql.

  17. #17
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Ah oui effectivement. Pour les chaînes de caractères, je suis entièrement d'accord avec toi. Je croyais que tu parlais justement des tables, colonnes et autres objets.
    Petit quiproquo involontaire, désolé

Discussions similaires

  1. Affichage d'un script python dans un tableau php
    Par Taylor08 dans le forum Langage
    Réponses: 4
    Dernier message: 21/02/2014, 10h15
  2. [SQL-Server] Affichage / récupération champ text dans un tableau php
    Par jeeps64 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 20/07/2011, 14h30
  3. Réponses: 18
    Dernier message: 22/02/2006, 14h53
  4. Problème d'affichage dans un tableau
    Par claralavraie dans le forum ASP
    Réponses: 13
    Dernier message: 21/12/2005, 15h45
  5. [débutant]problèmes d'affichage dans un tableau
    Par Hastur dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 16/08/2005, 12h00

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