N'afficher qu'une seule entrée d'une table
Résolu
Pascal-Jr
-
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je voudrais n'afficher qu'une seule entrée d'une table SQL.
En fait ça serait pour un système d'annonce :
j'ai une liste de moto à vendre sous forme de tableau et je voudrais que si une personne clique sur le lien d'une moto tombe sur une fiche descriptive de cette moto.
Le modèle de la fiche descriptive serait une seule page pré-remplie complétée par des variables.
Mon problème :
Je ne connais pas la requête SQL permettant de n'afficher qu'une seule entrée.
En cherchant, j'ai trouvé WHERE mais je ne sais pas si l'usage est vraiment adapté dans mon cas.
Merci d'avance à tous pour votre implication.
je voudrais n'afficher qu'une seule entrée d'une table SQL.
En fait ça serait pour un système d'annonce :
j'ai une liste de moto à vendre sous forme de tableau et je voudrais que si une personne clique sur le lien d'une moto tombe sur une fiche descriptive de cette moto.
Le modèle de la fiche descriptive serait une seule page pré-remplie complétée par des variables.
Mon problème :
Je ne connais pas la requête SQL permettant de n'afficher qu'une seule entrée.
En cherchant, j'ai trouvé WHERE mais je ne sais pas si l'usage est vraiment adapté dans mon cas.
Merci d'avance à tous pour votre implication.
A voir également:
- N'afficher qu'une seule entrée d'une table
- Table ascii - Guide
- Table des matières word - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
- Mettre une seule page en paysage word - Guide
- Regrouper plusieurs feuilles excel en une seule - Guide
8 réponses
Salut,
Peux-tu nous donner ta table pour voir ce que l'on peut faire.
Sinon si j'ai bien compris, tu veux lorsque l'utilisateur clic sur le lien, il reçoit un descriptif d'une moto a vendre c'est bien ça ?
Peux-tu nous donner ta table pour voir ce que l'on peut faire.
Sinon si j'ai bien compris, tu veux lorsque l'utilisateur clic sur le lien, il reçoit un descriptif d'une moto a vendre c'est bien ça ?
Exactement.
'modele' => $_POST['modele'],
'cylindree' => $_POST['cyl'],
'km' => $_POST['km'],
'annee' => $_POST['annee'],
'prix' => $_POST['prix'],
'description' => $_POST['description'],
Je sais pas si c'est suffisant, si c'est le cas n'hésitez pas à me demander.
'modele' => $_POST['modele'],
'cylindree' => $_POST['cyl'],
'km' => $_POST['km'],
'annee' => $_POST['annee'],
'prix' => $_POST['prix'],
'description' => $_POST['description'],
Je sais pas si c'est suffisant, si c'est le cas n'hésitez pas à me demander.
Ah j'ai oublié de préciser que je suis un gros débutant en PHP/MySQL ...
Si ça peut vous aidez à comprendre ...
Si ça peut vous aidez à comprendre ...
Bonsoir,
Désolé de mon retard mais voilà quelques chose que tu va t'en ravir !
Désolé de mon retard mais voilà quelques chose que tu va t'en ravir !
<?php $requete = mysql_query ("SELECT * FROM table ORDER BY id DESC LIMIT 10"); // Changer table par ta table 10 = Le nombre de requêtes maximum while($donnees = mysql_fetch_array($requete)) { ?> Modele : <?php echo ''.$donnees['modele'].''; ?> Cylindre : <?php echo ''.$donnees['cylindree'].''; ?> Année : <?php echo ''.$donnees['annee'].''; ?> Nombre de kilomètres : <?php echo ''.$donnees['km'].''; ?> Prix : <?php echo ''.$donnees['prix'].''; ?> Description : : <?php echo ''.$donnees['description'].''; ?> <?php } ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pendant ce temps j'ai également bossé sur un script, ça ne fonctionne pas j'ai une erreur undefined index : id
Par contre, je me pose une question :
Comment j'utilise $_GET sans avoir un <form></form> pour traiter quand je clique sur mon lien ?
Je reconnais que l'idée de récupérer l'id avec ne variable est ce que je comptais faire mais je ne sais pas comment m'y prendre.
<?php try { $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=localhost;dbname=annonces', 'root', '', $pdo_options); $req = $bdd->prepare('SELECT * FROM article WHERE id = ?'); $req->execute(array($_GET['id'])); // Je sépare la variable $_GET['id'] de ma requête pour éviter les injections SQL while ($donnees = $req->fetch()) { ?> <ul> <li>Marque/Modèle : <?php echo $donnees['modele']; ?></li> <li>Cylindrée : <?php echo $donnees['cylindree']; ?></li> <li>Km : <?php echo $donnees['km']; ?></li> <li>Année : <?php echo $donnees['annee']; ?></li> <li>Prix : <?php echo $donnees['prix']; ?></li> <li>Description : <?php echo $donnees['description']; ?></li> </ul> <?php } $req->closeCursor(); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } ?>
Par contre, je me pose une question :
Comment j'utilise $_GET sans avoir un <form></form> pour traiter quand je clique sur mon lien ?
Je reconnais que l'idée de récupérer l'id avec ne variable est ce que je comptais faire mais je ne sais pas comment m'y prendre.
Ton adresse(URL) doit être du genre ...tonsite.com/afficher_fiche.php?id=15
La page afficher_fiche.php sera la page qui contiens le code suivant ...
15 c'est l'id de la moto dans ta table ...
Dans la page qui affiche les motos que tu as dans ta table, exemple afficher_motos.php
Tu fait la meme chose avec une boucle sauf que tu doit afficher juste le nom de la moto avec un lien vers sa fiche, t'aura un truc du genre ...
Donc par exemple pour la moto dont l'id est 13, le lien ressemblera a ça : afficher_fiche.php?id=13
La page afficher_fiche.php sera la page qui contiens le code suivant ...
15 c'est l'id de la moto dans ta table ...
<?php try { $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=localhost;dbname=annonces', 'root', '', $pdo_options); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $id = htmlentities($_GET['id']); $req = $bdd->prepare('SELECT * FROM article WHERE id = ?'); $req->execute(array($id)); while ($donnees = $req->fetch()) { ?> <ul> <li>Marque/Modèle : <?php echo $donnees['modele']; ?></li> <li>Cylindrée : <?php echo $donnees['cylindree']; ?></li> <li>Km : <?php echo $donnees['km']; ?></li> <li>Année : <?php echo $donnees['annee']; ?></li> <li>Prix : <?php echo $donnees['prix']; ?></li> <li>Description : <?php echo $donnees['description']; ?></li </ul> <?php } $req->closeCursor(); ?>
Dans la page qui affiche les motos que tu as dans ta table, exemple afficher_motos.php
Tu fait la meme chose avec une boucle sauf que tu doit afficher juste le nom de la moto avec un lien vers sa fiche, t'aura un truc du genre ...
....... while ($donnees = $req->fetch()) { ?> <ul> <li><a href="afficher_fiche.php?id=<?php echo $donnees['id'] ?>"><?php echo $donnees['modele']; ?></a></li> </ul> } ......
Donc par exemple pour la moto dont l'id est 13, le lien ressemblera a ça : afficher_fiche.php?id=13
Est-ce que tu veux ça :
PAGE INDEX : (nom exemple)
<a>Nom du model</a>
PAGE VOIR MODEL :
Modèle
Km
Prix
etc ...
PAGE INDEX : (nom exemple)
<a>Nom du model</a>
PAGE VOIR MODEL :
Modèle
Km
Prix
etc ...
Alors, je crois que ça devrais marcher (lis bien les commentaires):
<!-- INDEX soit index.php --> <?php // La connexion à la base de donnée $requete = mysql_query ("SELECT * FROM table ORDER BY id DESC LIMIT 10"); // Changer table par ta table 10 = Le nombre de requêtes maximum while($donnees = mysql_fetch_array($requete)) { ?> <a href="ventes.php?id=<?php echo''.$donnees['id'].''; ?>" action="ventes.php?=<?php echo''.$donnees['id'].''; ?>">Modele : <?php echo ''.$donnees['modele'].''; ?></a> <!-- Ventes = ta page ou tu verra le descriptif--> <?php } ?> <!-- PAGE avec de descriptif soit ventes.php--> <?php // La connexion à la base de donnée $ids = mysql_real_escape_string(htmlspecialchars($_GET['id'])); $retour = mysql_query("SELECT * FROM table WHERE id='" . $ids . "' ORDER BY id ASC"); // Changer table par ta table while ($donnees = mysql_fetch_array($retour)) { ?> <ul> <li>Marque/Modèle : <?php echo $donnees['modele']; ?></li> <li>Cylindrée : <?php echo $donnees['cylindree']; ?></li> <li>Km : <?php echo $donnees['km']; ?></li> <li>Année : <?php echo $donnees['annee']; ?></li> <li>Prix : <?php echo $donnees['prix']; ?></li> <li>Description : <?php echo $donnees['description']; ?></li> </ul> <?php } ?>