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 :

Problème de requête d'affichage


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut Problème de requête d'affichage
    Bonjour,

    J'ai deux tables dans ma base de données un concernant le chemin des images et l'autre les rubriques
    ci-dessous la structures des deux tables :


    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
     
    --
    -- Structure de la table `info_photo`
    --
     
    CREATE TABLE IF NOT EXISTS `info_photo` (
      `NUM` int(11) NOT NULL AUTO_INCREMENT,
      `COMMENT1` varchar(255) DEFAULT NULL,
      `PHOTO1` varchar(255) DEFAULT NULL,
      `PICTO1` varchar(255) DEFAULT NULL,
      `Rub_ID` smallint(6) DEFAULT NULL,
      PRIMARY KEY (`NUM`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
     
    --
    -- Structure de la table `rubrique`
    --
     
    CREATE TABLE IF NOT EXISTS `rubrique` (
      `Rub_ID` smallint(6) NOT NULL AUTO_INCREMENT,
      `Rub_Name` varchar(80) NOT NULL,
      `Rub_Desc` tinytext,
      `Rub_Date` date DEFAULT NULL,
      `Rub_Time` time DEFAULT NULL,
      PRIMARY KEY (`Rub_ID`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
    Les photos sont stockés dans un dossier selon la catégorie, j'avais un problème d'upload au début avec votre aide j'ai pu corrigé et résoudre le problème.

    Maintenant le problème qui se pose c'est au niveau de la récupération des photo selon un menu déroulant. J'ai modifié le script original afin de faire correspondre à mes besoins mais voila c'est pas trop fameux le résultat
    ci-dessous le script pour l'affichage :
    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
     
    <?php
    // connexion a la base de données
       include("../fonction/connexion.php");
    // FONCTION de redimensionnement "a l affichage"
       include("../fonction/fctaffichimage.php");
    // -----------------------------------------------------------------------------------------------------
    // La base de données (MABASE) avec une table (MATABLE)
    // La table doit contenir (au moins) les champs suivants :
    // - NUM      (INT - 11 - auto-incremente - NotNull)
    // - COMMENT1 (VARCHAR - 255 - Null)
    // - PHOTO1   (VARCHAR - 255 - Null))
    // - PICTO1   (VARCHAR - 255 - Null)
    // Important : conserver le champ COMMENT1, il est nécessaire en mode AJOUTER
    // -----------------------------------------------------------------------------------------------------
    // mettre le nom de la table dans une variable :
       $table = 'info_photo';
       $tabler = 'rubrique';
    // REMARQUE : on peut utiliser ce fichier pour PLUSIEURS TABLES (de même structure)
    // $table = $_GET['CAT'];
    // (préciser le nom de la table a l'appel du fichier : MONFICHIER-LISTE.php?CAT=MATABLE)
     
    // sélection de toutes les fiches de la table
       $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table['Rub_ID'].' = '.$tabler['Rub_ID'].' ORDER BY NUM DESC'; 
       $result = mysql_query($query)  or die('Erreur SQL ! '.$query.'<br/>'.mysql_error());
       $result = mysql_fetch_assoc($query);
       $Rub_Name = $result['Rub_Name'];
    // -----------------------------------------------------------------------------------------------------
    // Les photos et pictos sont stockés dans un dossier déprotège en écriture
       $chemincourt = "../repimages/".$Rub_Name."/";
    // -----------------------------------------------------------------------------------------------------
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset= UTF-8" />
        <title>MONFICHIER-LISTE.php</title>
    </head>
    <body><center>
    <div>
       <?php echo 'TABLE '.$table; ?><br/>
       <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=AJOUTER">AJOUTER NOUVEAU</a>
    </div>
    <div>     
     
       <?php
    // formulaire de sélection
    echo '<form action="monfichier-list.php" enctype="multipart/form-data" method="post">';
    echo '<select name="frm_select_rubrique">';
    $Selected = 0;
    while ($row = mysql_fetch_array($result)){
    	if($Selected == 0){
    		echo '<option value="'.$row['Rub_ID'].'" selected="selected">'.$row['Rub_Name'].'</option>';
    		$Selected = 1;
    	} else {
    		echo '<option value="'.$row['Rub_ID'].'">'.$row['Rub_Name'].'</option>';
    	}
    }
    echo '</select>';
    echo '<input type="submit" value="Go"/>';
    echo '</form>';
    ?>
    <table border="1">
       <tr>
    <?php
    // -----------------------------------------------------------------------------------------------------
    // AFFICHAGE tant qu'il y a des fiches
    while ($val = mysql_fetch_array($result)) 
    { ?>
        <td>
    		<?php if ($val['PICTO1'] != "") { ?>
             <img alt="" <?php fctaffichimage($chemincourt.$val['PICTO1'], 100, 100) ?>>
          <?php } ?>
    	  <?php echo $val['COMMENT1']; ?><br/>
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=MODIFIER&NUM=<?php echo $val['NUM']; ?>">
          MODIFIER</a>&nbsp;
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=SUPPRIMER&NUM=<?php echo $val['NUM']; ?>">
          Supprimer</a><br/>
     
        </td>
    <?php
    } // fin while
    // -----------------------------------------------------------------------------------------------------
    ?>
       </tr>      
    </table>
    </div>
    </center></body></html>
    <?php // libération de la ressource et déconnexion
    mysql_free_result($result);
    ?>
    j'ai ce message d'erreur qui est généré sur ma page
    Erreur SQL ! SELECT * FROM info_photo,rubrique WHERE i = r ORDER BY NUM DESC
    Unknown column 'i' in 'where clause'
    Je comprends pas pourquoi il trouve cette valeur i pour Rub_ID

    Je vous remercie de votre aide

    Runcafre91

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Bonjour,

    ta requête devrait ressembler à

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM table1, table2 where table1.id = table2.id

    essaye :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC';

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    Bonjour,

    ta requête devrait ressembler à

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM table1, table2 where table1.id = table2.id
    essaye :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC';
    Re,

    Merci de votre aide cela a résolu une partie du problème j'ai du retiré le fetch assoc car cela me posais un problème.

    Actuellement lorsque je choisi une catégorie et que je valide j'ai une erreur
    404 page introuvable
    Ci-dessous le code après correction la je vois pas trop d’où cela peux parvenir
    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
     
     
     
    <?php
    // connexion a la base de données
       include("../fonction/connexion.php");
    // FONCTION de redimensionnement "a l affichage"
       include("../fonction/fctaffichimage.php");
    // -----------------------------------------------------------------------------------------------------
    // La base de données (MABASE) avec une table (MATABLE)
    // La table doit contenir (au moins) les champs suivants :
    // - NUM      (INT - 11 - auto-incremente - NotNull)
    // - COMMENT1 (VARCHAR - 255 - Null)
    // - PHOTO1   (VARCHAR - 255 - Null))
    // - PICTO1   (VARCHAR - 255 - Null)
    // Important : conserver le champ COMMENT1, il est nécessaire en mode AJOUTER
    // -----------------------------------------------------------------------------------------------------
    // mettre le nom de la table dans une variable :
       $table = 'info_photo';
       $tabler = 'rubrique';
    // REMARQUE : on peut utiliser ce fichier pour PLUSIEURS TABLES (de même structure)
    // $table = $_GET['CAT'];
    // (preciser le nom de la table a l'appel du fichier : MONFICHIER-LISTE.php?CAT=MATABLE)
     
    // sélection de toutes les fiches de la table
     
       $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC'; 
       $result = mysql_query($query)  or die('Erreur SQL ! '.$query.'<br/>'.mysql_error());
       $Rub_Name = $result['Rub_Name'];
    // -----------------------------------------------------------------------------------------------------
    // Les photos et pictos sont stockes dans un dossier déprotège en écriture
       $chemincourt = "../repimages/".$Rub_Name."/";
    // -----------------------------------------------------------------------------------------------------
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset= UTF-8" />
        <title>MONFICHIER-LISTE.php</title>
    </head>
    <body><center>
    <div>
       <?php echo 'TABLE '.$table; ?><br/>
       <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=AJOUTER">AJOUTER NOUVEAU</a>
    </div>
    <div>     
     
       <?php
    // formulaire de sélection
    echo '<form action="monfichier-list.php" enctype="multipart/form-data" method="post">';
    echo '<select name="frm_select_rubrique">';
    $Selected = 0;
    while ($row = mysql_fetch_array($result)){
    	if($Selected == 0){
    		echo '<option value="'.$row['Rub_ID'].'" selected="selected">'.$row['Rub_Name'].'</option>';
    		$Selected = 1;
    	} else {
    		echo '<option value="'.$row['Rub_ID'].'">'.$row['Rub_Name'].'</option>';
    	}
    }
    echo '</select>';
    echo '<input type="submit" value="Go"/>';
    echo '</form>';
    ?>
    <table border="1">
       <tr>
    <?php
    // -----------------------------------------------------------------------------------------------------
    // AFFICHAGE tant qu'il y a des fiches
    while ($val = mysql_fetch_array($result)) 
    { ?>
        <td>
    		<?php if ($val['PICTO1'] != "") { ?>
             <img alt="" <?php fctaffichimage($chemincourt.$val['PICTO1'], 100, 100) ?>>
          <?php } ?>
    	  <?php echo $val['COMMENT1']; ?><br/>
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=MODIFIER&NUM=<?php echo $val['NUM']; ?>">
          MODIFIER</a>&nbsp;
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=SUPPRIMER&NUM=<?php echo $val['NUM']; ?>">
          Supprimer</a><br/>
     
        </td>
    <?php
    } // fin while
    // -----------------------------------------------------------------------------------------------------
    ?>
       </tr>      
    </table>
    </div>
    </center></body></html>
    <?php // liberation de la ressource et déconnexion
    mysql_free_result($result);
    ?>
    Merci de votre aide

    Runcafre91

  4. #4
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    tu as un fichier monfichier-list.php ?

    quelle est l'url dans ta barre d'adresse quand tu as la 404 ?

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    tu as un fichier monfichier-list.php ?

    quelle est l'url dans ta barre d'adresse quand tu as la 404 ?
    Re,

    l'url de ma page est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    http://localhost/monsite/vue/monfichier-list.php
    Les valeurs de mon formulaire a priori n'est pas envoyé

    Merci de votre aide

    Runcafre91

  6. #6
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Comment est structuré ton site ?

    si tu as une erreur 404, c'est normal que t’aies pas les valeurs de ton formulaire.

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    Comment est structuré ton site ?

    si tu as une erreur 404, c'est normal que tu'aies pas les valeurs de ton formulaire.
    ci-joint en pièce jointe la structure de mon site pour l'instant c'est en local

    runcafre91

  8. #8
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    dans ton arborescence tu as un monfichier-liste.php

    alors que tu appelles monfichier-list.php

  9. #9
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    dans ton arborescence tu as un monfichier-liste.php

    alors que tu appelles monfichier-list.php
    Re,

    Oui en effet c'est une petite faute d'inattention

    J'ai modifié le script de cette manière (afin de voir ce qui est envoyé dans l'url j'ai placé un get dans mon formulaire qui sera remplacé par un POST par la suite)
    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
     
     
    <?php
    // connexion a la base de donnees
       include("../fonction/connexion.php");
    // FONCTION de redimensionnement "a l affichage"
       include("../fonction/fctaffichimage.php");
    // -----------------------------------------------------------------------------------------------------
    // La base de donnees (MABASE) avec une table (MATABLE)
    // La table doit contenir (au moins) les champs suivants :
    // - NUM      (INT - 11 - auto-incremente - NotNull)
    // - COMMENT1 (VARCHAR - 255 - Null)
    // - PHOTO1   (VARCHAR - 255 - Null))
    // - PICTO1   (VARCHAR - 255 - Null)
    // Important : conserver le champ COMMENT1, il est necessaire en mode AJOUTER
    // -----------------------------------------------------------------------------------------------------
    // mettre le nom de la table dans une variable :
       $table = 'info_photo';
       $tabler = 'rubrique';
    // REMARQUE : on peut utiliser ce fichier pour PLUSIEURS TABLES (de meme structure)
    // $table = $_GET['CAT'];
    // (preciser le nom de la table a l'appel du fichier : MONFICHIER-LISTE.php?CAT=MATABLE)
     
    // sélection de toutes les fiches de la table
     
       $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC'; 
       $result = mysql_query($query)  or die('Erreur SQL ! '.$query.'<br/>'.mysql_error());
     
     
    // -----------------------------------------------------------------------------------------------------
    // Les photos et pictos sont stockes dans un dossier deprotege en ecriture
        $Rub_ID = $_POST['frm_select_rubrique'];
    	$sql = mysql_query("SELECT * FROM rubrique WHERE Rub_ID = '".$Rub_ID."'"); 
    	$rubrique = mysql_fetch_assoc($sql);
     
        $Rub_Name = $rubrique['Rub_Name'];
     
     
       $chemincourt = "../repimages/".$Rub_Name."/";
    // -----------------------------------------------------------------------------------------------------
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset= UTF-8" />
        <title>MONFICHIER-LISTE.php</title>
    </head>
    <body><center>
    <div>
       <?php echo 'TABLE '.$table; ?><br/>
       <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=AJOUTER">AJOUTER NOUVEAU</a>
    </div>
    <div>     
     
       <?php
    // formulaire de selection
    echo '<form action="monfichier-liste.php" enctype="multipart/form-data" method="get">';
    echo '<select name="frm_select_rubrique">';
    $Selected = 0;
    while ($row = mysql_fetch_array($result)){
    	if($Selected == 0){
    		echo '<option value="'.$row['Rub_ID'].'" selected="selected">'.$row['Rub_Name'].'</option>';
    		$Selected = 1;
    	} else {
    		echo '<option value="'.$row['Rub_ID'].'">'.$row['Rub_Name'].'</option>';
    	}
    }
    echo '</select>';
    echo '<input type="submit" value="Go"/>';
    echo '</form>';
     
    ?>
    <table border="1">
       <tr>
     
    <?php
     
    // -----------------------------------------------------------------------------------------------------
    // AFFICHAGE tant qu'il y a des fiches
    while ($val = mysql_fetch_array($result)) 
    { ?>
        <td>
    		<?php if ($val['PICTO1'] != "") { ?>
             <img alt="" <?php fctaffichimage($chemincourt.$val['PICTO1'], 100, 100) ?>>
          <?php } ?>
    	  <?php echo $val['COMMENT1']; ?><br/>
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=MODIFIER&NUM=<?php echo $val['NUM']; ?>">
          MODIFIER</a>&nbsp;
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=SUPPRIMER&NUM=<?php echo $val['NUM']; ?>">
          Supprimer</a><br/>
     
        </td>
    <?php
    } // fin while
    // -----------------------------------------------------------------------------------------------------
    ?>
       </tr>      
    </table>
    </div>
    </center></body></html>
    <?php // liberation de la ressource et deconnexion
    mysql_free_result($result);
    ?>
    Par contre j'ai ce message d'erreur qui apparaît (voir capture écran

    Merci de votre aide

    Runcafre91

  10. #10
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if isset( $_POST['frm_select_rubrique'])
    {
    $Rub_ID = $_POST['frm_select_rubrique'];
    }
    si tu utilises la méthode get

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if isset( $_GET['frm_select_rubrique'])
    {
    $Rub_ID = $_GET['frm_select_rubrique'];
    }

  11. #11
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Re,

    J'ai fais un test avec POST et GET, toujours le même souci les données ne s'affichent pas

    J'ai réorganiser un tout petit peu mon code question de pratique voir ci-dessous
    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
     
    <?php
    // connexion a la base de données
       include("../fonction/connexion.php");
    // FONCTION de redimensionnement "a l affichage"
       include("../fonction/fctaffichimage.php");
    // -----------------------------------------------------------------------------------------------------
    //------------------------------------------------------------------------------------------------------
    // Les photos et pictos sont stockes dans un dossier déprotège en écriture
    //partie qui doit récupérer le numéro de la rubrique et l'associé au nom de la rubrique afin de récupérer les photo du dossier
     
        if (isset($_GET['frm_select_rubrique']))
    		{
    		$Rub_ID = $_GET['frm_select_rubrique'];
    		}
    	$sql = mysql_query("SELECT * FROM rubrique WHERE Rub_ID = '".$Rub_ID."'"); 
     
    	$rubrique = mysql_fetch_assoc($sql);
     
        $Rub_Name = $rubrique['Rub_Name'];
     
       $chemincourt = "../repimages/".$Rub_Name."/";
     
    // -----------------------------------------------------------------------------------------------------
    // -----------------------------------------------------------------------------------------------------
    // mettre le nom de la table dans une variable :
       $table = 'info_photo';
       $tabler = 'rubrique';
    // REMARQUE : on peut utiliser ce fichier pour PLUSIEURS TABLES (de même structure)
    // $table = $_GET['CAT'];
    // (preciser le nom de la table a l'appel du fichier : MONFICHIER-LISTE.php?CAT=MATABLE)
     
    // sélection de toutes les fiches de la table
     
       $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC'; 
       $result = mysql_query($query)  or die('Erreur SQL ! '.$query.'<br/>'.mysql_error());
     
     
    // -----------------------------------------------------------------------------------------------------
     
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset= UTF-8" />
        <title>MONFICHIER-LISTE.php</title>
    </head>
    <body><center>
    <div>
       <?php echo 'TABLE '.$table; ?><br/>
       <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=AJOUTER">AJOUTER NOUVEAU</a>
    </div>
    <div>     
     
       <?php
    // formulaire de sélection
    echo '<form action="monfichier-liste.php" enctype="multipart/form-data" method="get">';
    echo '<select name="frm_select_rubrique">';
    $Selected = 0;
    while ($row = mysql_fetch_array($result)){
    	if($Selected == 0){
    		echo '<option value="'.$row['Rub_ID'].'" selected="selected">'.$row['Rub_Name'].'</option>';
    		$Selected = 1;
    	} else {
    		echo '<option value="'.$row['Rub_ID'].'">'.$row['Rub_Name'].'</option>';
    	}
    }
    echo '</select>';
    echo '<input type="submit" value="Go"/>';
    echo '</form>';
     
    ?>
    <table border="1">
       <tr>
     
    <?php
     
    // -----------------------------------------------------------------------------------------------------
    // AFFICHAGE tant qu'il y a des fiches
    while ($val = mysql_fetch_array($result)) 
    { ?>
        <td>
    		<?php if ($val['PICTO1'] != "") { ?>
             <img alt="" <?php fctaffichimage($chemincourt.$val['PICTO1'], 100, 100) ?>>
          <?php } ?>
    	  <?php echo $val['COMMENT1']; ?><br/>
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=MODIFIER&NUM=<?php echo $val['NUM']; ?>">
          MODIFIER</a>&nbsp;
          <a href="MONFICHIER-FORM.php?CAT=<?php echo $table; ?>&TRAITER=SUPPRIMER&NUM=<?php echo $val['NUM']; ?>">
          Supprimer</a><br/>
     
        </td>
    <?php
    } // fin while
    // -----------------------------------------------------------------------------------------------------
    ?>
       </tr>      
    </table>
    </div>
    </center></body></html>
    <?php // libération de la ressource et déconnexion
    mysql_free_result($result);
    ?>
    J'ai plus de message d'erreur mais rien ne s'affiche
    dans la barre d'adresse j'ai bien l’URL sélectionné

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    http://localhost/monsite/vue/monfichier-liste.php?frm_select_rubrique=2

    Merci de votre aide

    Runcafre91

  12. #12
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Quand tu fais un

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "SELECT * FROM rubrique WHERE Rub_ID = '".$Rub_ID."'";

    ça te renvoie quoi ?

  13. #13
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    Quand tu fais un

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "SELECT * FROM rubrique WHERE Rub_ID = '".$Rub_ID."'";

    ça te renvoie quoi ?
    Ci-dessous l'erreur que me donne ma requête:


    Notice: Undefined variable: Rub_ID in E:\wamp\www\monsite\vue\monfichier-liste.php on line 15
    Resource id #6

  14. #14
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    tu as bien ta var dans l'url ?

    si tu fais


    ça doit renvoyer un tableau avec frm_select_rubrique comme clé et 2 comme valeur et donc tu devrais avoir $rub_id à 2...

  15. #15
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    tu as bien ta var dans l'url ?

    si tu fais


    ça doit renvoyer un tableau avec frm_select_rubrique comme clé et 2 comme valeur et donc tu devrais avoir $rub_id à 2...
    Re j'ai bien un tableau qui est renvoyé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    http://localhost/monsite/vue/monfichier-liste.php?frm_select_rubrique=2
     
     Array ( [frm_select_rubrique] => 2 )

  16. #16
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    if (isset($_GET['frm_select_rubrique']))
    		{
    		$Rub_ID = $_GET['frm_select_rubrique'];
    		}
    	echo "SELECT * FROM rubrique WHERE Rub_ID = '".$Rub_ID."'";

    devrait t'afficher

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM rubrique WHERE Rub_ID = '2'

  17. #17
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    if (isset($_GET['frm_select_rubrique']))
    		{
    		$Rub_ID = $_GET['frm_select_rubrique'];
    		}
    	echo "SELECT * FROM rubrique WHERE Rub_ID = '".$Rub_ID."'";

    devrait t'afficher

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM rubrique WHERE Rub_ID = '2'
    Bonsoir,

    En fais sans le test ci-dessous lorsque je sélectionne dans mon menu déroulant la catégorie et que je valide par la suite j'ai bien le numéro de la rubrique qui apparaît
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM rubrique WHERE Rub_ID = '2'
    Mais le problème pose toujours pour récupérer le nom de la rubrique et le chemin vers les photos

    Runcafre91

  18. #18
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Bonsoir,

    un et donne quoi ?

  19. #19
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par syl2095 Voir le message
    Bonsoir,

    un et donne quoi ?
    re,

    J'ai fais un echo sur ma requête et un print_r sur $rubrique et sur le $chemincourt ci-dessous les résultats

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
      SELECT * FROM rubrique WHERE Rub_ID = '2'
    Array ( [Rub_ID] => 2 [Rub_Name] => Nature ) 
    ../repimages/Nature/

    J'ai les bons éléments mais voilà rien à l'affichage à moins que cela vient de ma seconde requête
    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
     
     
    / mettre le nom de la table dans une variable :
       $table = 'info_photo';
       $tabler = 'rubrique';
    // REMARQUE : on peut utiliser ce fichier pour PLUSIEURS TABLES (de meme structure)
    // $table = $_GET['CAT'];
    // (preciser le nom de la table a l'appel du fichier : MONFICHIER-LISTE.php?CAT=MATABLE)
     
    // sélection de toutes les fiches de la table
     
       $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC'; 
       $result = mysql_query($query)  or die('Erreur SQL ! '.$query.'<br/>'.mysql_error());
     
     
    // -----------------------------------------------------------------------------------------------------

  20. #20
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    pareil un petit

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $query = 'SELECT * FROM '.$table.','.$tabler.' WHERE '.$table.'.Rub_ID = '.$tabler.'.Rub_ID ORDER BY NUM DESC'; 
     
    echo $query;
    et exécuter la requête dans phpmyadmin

Discussions similaires

  1. Problèmes de requêtes (affichage)
    Par Moxostoma dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/10/2009, 09h21
  2. Problème requête d'affichage d'une liste
    Par mLk92 dans le forum Requêtes
    Réponses: 3
    Dernier message: 14/01/2007, 11h17
  3. Problème de requètes concurentes
    Par Emmanuel.G dans le forum XMLRAD
    Réponses: 3
    Dernier message: 08/08/2003, 16h51
  4. Réponses: 2
    Dernier message: 16/07/2003, 14h40
  5. Problème dans requête avec count()
    Par BadFox dans le forum Requêtes
    Réponses: 3
    Dernier message: 08/07/2003, 18h02

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