Récupérer quelques données d'une table sous forme de menu

fornatus Messages postés 28 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 29 mars 2009 - 26 août 2007 à 23:33
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 - 27 août 2007 à 02:36
Bonjour j'ai créé une base de donnée de type :

CREATE TABLE `works` (
  `id` int(11) NOT NULL auto_increment,
  `titre` varchar(100) NOT NULL,
  `nature` varchar(500) NOT NULL,
  `description` text collate latin1_general_ci,
  `galerie` varchar(50) collate latin1_general_ci default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=7 ;

J'aimerais récupérer les projets sous la forme d'une liste où les projets seraient rangées par ordre décroissant

id=3
id=2
id=1

et j'aimerais aussi pouvoir choisir quel id afficher, par exemple id compris entre 1 et 5. (Je compte insérer des liens comme <li>[dossier/page.php titre]</li> entre mes différents projets contenus dans la bdd).

Si vous pouviez me donner la requête à formuler ainsi que la manière dont je pourrais afficher les infos ce serait formidable
Pour l'instant mes essais se sont tous soldés par un échec.

5 réponses

fornatus Messages postés 28 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 29 mars 2009
26 août 2007 à 23:37
J'ai oublié de préciser que je ne désire pas afficher les id mais le nom des projets contenu dans le champ 'titre'.
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
27 août 2007 à 00:07
Salut

SELECT ... FROM works ORDER BY id;

tu devrais lire phpdebutant

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0
fornatus Messages postés 28 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 29 mars 2009
27 août 2007 à 00:26
En fait j'aimerais inverser l'ordre des projets et pouvoir intercaler entre eux le projet id=4 et le projet id=5 ce menu : 


        <li>[dossier/index.php projet2]</li>

        <li>[projet1.php projet1Alphaville]</li>

    

Est-ce possible ?

Voici le reste du code :

    <?php
          include('menu.htm');  // Nous appelons notre menu
    ?>
   
    <?php

    $base = mysql_connect ($sql_serveur,$sql_user,$sql_passwd); 
   
    // on sélectionne la base
    mysql_select_db ($sql_bdd, $base);

        // on crée la requête SQL
        $sql = 'SELECT id, titre FROM works';

        // on envoie la requête
        $req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());

        // on fait une boucle qui va faire un tour pour chaque enregistrement
        while($data = mysql_fetch_assoc($req))
{
        // on affiche les informations de l'enregistrement en cours
        echo '<li>[view.php?id='.$data['titre'].' '.$data['id'].']</li>';

}

         // on ferme la connexion à mysql
         mysql_close();

        ?>

   
        <li>[dossier/index.php projet2]</li>
        <li>[projet1.php projet1]</li>
    
               
   
0
fornatus Messages postés 28 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 29 mars 2009
27 août 2007 à 00:29
Voici le bon code ! I DID IT ^^

    <?php

    $base = mysql_connect ($sql_serveur,$sql_user,$sql_passwd); 
   
    // on sélectionne la base
    mysql_select_db ($sql_bdd, $base);

        // on crée la requête SQL
        $sql = 'SELECT id, titre FROM works';

        // on envoie la requête
        $req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());

        // on fait une boucle qui va faire un tour pour chaque enregistrement
        while($data = mysql_fetch_assoc($req))
{
        // on affiche les informations de l'enregistrement en cours
        echo '<li>[view.php?id='.$data['id'].' '.$data['titre'].']</li>';

}

         // on ferme la connexion à mysql
         mysql_close();

        ?>

Mais je n'ai toujours pas trouvé la solution pour insérer mon menu entre les projets 4 et 5 :

        <li>[dossier/index.php projet2]</li>
        <li>[projet1.php projet1]</li>
    

Ainsi qu'afficher les projets par id décroissant...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
27 août 2007 à 02:36
Salut,

comme dit Coucou, tu devrais aller lire des tutos plutôt que venir ici

ORDER BY id DESC;
0
Rejoignez-nous