CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[PHP]Lien pour chaque entrée d'une table

Legendsnake
Legendsnake
Niveau 10
28 avril 2009 à 15:11:39

Bonjour tout le monde.
J'ai fait une base de donnée (vente d'outils informatique) afin d'afficher son contenu sur mon site. Mais y a un truc que j'arrive pas à faire, c'est d'attribuer à chaque entrée son propre lien afin de pouvoir voire la description détaillée de chaque produit séparément.
Pour que vous compreniez mieux mon problème, je veux que par exemple l'article "souris" a un lien vers sa propre page, l'article "carte graphique" a aussi un lien pour sa propre page dédiée à lui aussi.
Comme le cas suivant.
https://www.jeuxvideo.comm/recherche/0-metal%20gear.htm
https://www.jeuxvideo.com/cheats/trucs-et-astuces-playstation-3-ps3-a.htm

__________________________________________________
_______________________

On m'avait dit qu'il fallait le faire l'ID alors je me suis lancé sur les tests et même avec ça j'ai échoué et j'ai un lien commun à tous avec un beau message d'erreur bien sûr quand je clique dessus.

Voilà les scripts.

__________________________________________________
____
Page: Produit.php
<?php
include("Mise_en_page.php");
mysql_connect("localhost", "root", "");
mysql_select_db("projetphp");

$reponse = mysql_query("SELECT * FROM jeux_video WHERE quantité_disponible > 50")or die(mysql_error());

$retour = mysql_query("SELECT COUNT(*) AS nbre_entrees FROM jeux_video");
$valeur = mysql_fetch_array($retour);

while ($donnees = mysql_fetch_array($reponse) )
{
?>
<p>
<strong>Jeu</strong> : <a href="detail.php?value=ID"><?php echo $donnees['nom']; ?><a><br /> //Le lien sur chaque entrée pour nous envoyer à la fin à une page spécifique à chaque entrée
Prix <?php echo $donnees['prix']; ?> dinars !<br />
Ce jeu fonctionne sur <?php echo $donnees['console']; ?> et il reste <?php echo $donnees['quantité_disponible']; ?> exemplaires en stock<br />
Ma petite description sur <?php echo $donnees['nom']; ?> : <em><?php echo $donnees['commentaires']; ?></em>
</p>
<?php
}

mysql_close();
?>

__________________________________________________
__________
Page: detail.php
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("projetphp");
mysql_query("SELECT *
FROM jeux_video
WHERE id=$_GET['value']")or die(mysql_error());
mysql_close();
?>

:merci d'avance pour votre aide

Legendsnake
Legendsnake
Niveau 10
28 avril 2009 à 15:16:33

Désolé pour le code, le revoilà mieux présenté.

Page: Produit.php

<?php

include("Mise_en_page.php");

mysql_connect("localhost", "root", "");

mysql_select_db("projetphp");

$reponse = mysql_query("SELECT * FROM jeux_video WHERE quantité_disponible > 50")or die(mysql_error());

$retour = mysql_query("SELECT COUNT(*) AS nbre_entrees FROM jeux_video");

$valeur = mysql_fetch_array($retour);

while ($donnees = mysql_fetch_array($reponse) )

{

?>

<p>

<strong>Jeu</strong> : <a href="detail.php?value=ID"><?php echo $donnees['nom']; ?><a><br /> //Le lien sur chaque entrée pour nous envoyer à la fin à une page spécifique à chaque entrée

Prix <?php echo $donnees['prix']; ?> dinars !<br />

Ce jeu fonctionne sur <?php echo $donnees['console']; ?> et il reste <?php echo $donnees['quantité_disponible']; ?> exemplaires en stock<br />

Ma petite description sur <?php echo $donnees['nom']; ?> :
<em><?php echo $donnees['commentaires']; ?></em>

</p>

<?php
}

mysql_close();

?>

Page: detail.php

<?php

mysql_connect("localhost", "root", "");

mysql_select_db("projetphp");

mysql_query("SELECT *

FROM jeux_video

WHERE id=$_GET['value']")or die(mysql_error());

mysql_close();

?>

:merci:

deepblue
deepblue
Niveau 16
28 avril 2009 à 18:34:17

1- donne la structure de ta table
2- WHERE id=$_GET['value'] -> en plus d'être sans buggé, permet de faire de l'injection sql (et ça peut faire très très mal)
3- Il y a un magnifique outil en php qui est pdo, c'est bien de s'y mettre ( http://wall.deblan.fr/1240936468/php/1/ )

Legendsnake
Legendsnake
Niveau 10
28 avril 2009 à 18:49:28

Merci deep, je vais voire.

Sinon j'ai résolu mon problème en faisant celà

Page detail.php

<?php

mysql_connect("localhost", "root", "");
mysql_select_db("projetphp");

$sql = 'SELECT * FROM jeux_video WHERE id = ' . $_GET['value'] ;
$rs = mysql_query($sql) ;
$tuple = mysql_fetch_assoc($rs) ;

echo '<xmp>' ;
print_r($tuple) ;
echo '</xmp>' ;

?>

-----------------------------------------
Page Produit.php
<?php
include("Mise_en_page.php");
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("projetphp"); // Sélection de la base

$reponse = mysql_query("SELECT * FROM jeux_video WHERE quantité_disponible > 50")or die(mysql_error()); //Requête qui demande d'afficher le contenu de la table

// Combien d'entrées dans jeux_vidéo ?

$retour = mysql_query("SELECT COUNT(*) AS nbre_entrees FROM jeux_video");
$valeur = mysql_fetch_array($retour);

?>
<div id="right">
<div class="right-bloc">
<div class="right-titre"><h2>Liste des titres de jeux vidéo en vente.</h2></div>
<div class="right-marges">
<?php

// On fait une boucle pour lister tout ce que contient la table :
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<p>
<strong>Jeu</strong> : <a href="detail.php?value=<?php echo $donnees['ID'] ?>"><?php echo $donnees['nom']; ?></a><br>
Prix <?php echo $donnees['prix']; ?> dinars !<br />
Ce jeu fonctionne sur <?php echo $donnees['console']; ?> et il reste <?php echo $donnees['quantité_disponible']; ?> exemplaires en stock<br />
Ma petite description sur <?php echo $donnees['nom']; ?> : <em><?php echo $donnees['commentaires']; ?></em>
</p>
<?php
}

mysql_close(); // Déconnexion de MySQL
?>

------------------------------------------
Le tout marche nickel à présent mais j'ai un petit problème qui risque de faire fuire tous mes futurs visiteurs
Par exemple quand je clique sur le lien de Metal Gear Solid qui me renvoi sur "http://localhost/ProjetPHP/detail.php?value=2" bien sûr

on m'affiche : "

" Array
(
[ID] => 2
[nom] => Metal Gear Solid
[console] => Playstation
[prix] => 30
[quantité_disponible] => 230
[commentaires] => Pour moi, le meilleur jeu au monde !
) "

Comment je pourrais faire disparaitre le "Array ()" ainsi que les noms entre crochets avec les crochets ?????
Merci d'avance

deepblue
deepblue
Niveau 16
28 avril 2009 à 18:51:10

echo '<xmp>' ;
print_r($tuple) ;
echo '</xmp>' ;

Va voir PDO (dit-il avec un air relou ^^)

Legendsnake
Legendsnake
Niveau 10
28 avril 2009 à 18:57:19

j'ai trouvé, fallait juste faire quelques modifs sur mon petit code en changeant ce que tu as copié dans ton post par:

<h2><?php echo $tuple['nom'] ?></h2>

<p><?php echo $tuple['quantité_disponible'] ?> exemplaires disponible(s)
sur <?php echo $tuple['console'] ?>
au prix unitaire de <?php echo $tuple['prix'] ?> EUR.</p>

<p>Ce que j'en pense :
<em>« <?php echo $tuple['commentaires'] ?> »</em></p>

En tout cas merci deep, et j'irai visiter ton lien à l'immédiat :oui:

pitfalI
pitfalI
Niveau 9
29 avril 2009 à 10:30:25

perso pour mysql, je préfère utiliser mysqli que la PDO

pitfalI
pitfalI
Niveau 9
29 avril 2009 à 22:22:31

deepblue> en parlant de ça, est ce que t'utilises la PDO dans ton site web? non car ce qui est bien avec PHP data object c'est que ça marche sur tout les SGBD mais c'est assez basique je trouve, cependant quand on est sûr d'utiliser mysql ça serait mieux d'utiliser mysqli :ok:
qu'en dit tu?

deepblue
deepblue
Niveau 16
29 avril 2009 à 22:43:01

Je suis en train d'utiliser PDO dans le développement d'un CMS pour une association.
Pour info, mysql a été racheté par Oracle (qui est une sgbs payante) donc aujourd'hui mysql est gratuit, demain peut être pas donc...

Avoir une couche d'abstraction est TOUJOURS un plus et se faire chier avec mysqli alors qu'on a un outil comme pdo, c'est nul (et j'ai utilisé mysqli)

pitfalI
pitfalI
Niveau 9
29 avril 2009 à 23:24:42

merci :p)

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment