cs_deodato
Messages postés12Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention23 avril 2009
-
31 déc. 2004 à 19:08
cs_deodato
Messages postés12Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention23 avril 2009
-
1 janv. 2005 à 12:34
Bonsoir à tous, avant tou bonne année. :-)
Voilà mon probleme, je vais parler avec des mots simples car le monde du php est tout nouveau pour moi.
j'ai une BD dans laquelle se trouve les elements suivants :
idprod : 1201.1202.1203.1204......etc
nom_produit : cuisines.escaliers.electricité.plomberie......etc...Je souhaite faire afficher suite à une requete lles éléments dont l'Id commence par "12" , j'affiche les écritures suivantes :
<?php
// connection a la base en local
$connect = mysql_connect("localhost","root","");
// selection de la base
mysql_select_db("ma_base", $connect);
// votre requete de selection
$rest = $produit.$rub ;
$sql = mysql_query("SELECT * FROM cuisines WHERE IDprod LIKE '$rest%'");
// on compte le nombre de résultats
$result = mysql_num_rows($sql);
echo"Il y a ",$result," modèles
";
// récupération et affichage des données
// affichage avec un boucle while
while($affichage = mysql_fetch_array($sql, MYSQL_ASSOC)){
echo $affichage ['nom_produit'],"
";
// fin de boucle while
}
// fermeture de la connection
mysql_close($connect);
echo
?>
les élements s'affiche bien en colonne comme suit :
- cuisines
- escaliers
- electricité
- plomberie
Ma question est la suivante :
comment faire pour que chaque lignes soient "incrémentée" d'un lien (avec l'idprod correspondante par exemple : "cuisines " aurait ce lien : index.php?idprod=1201
j'ai essayé un echo "[index.php?idprod=$affichage ['idprod'] $affichage ['nom_produit']]
cs_sjon
Messages postés861Date d'inscriptionmardi 26 mars 2002StatutMembreDernière intervention29 novembre 20061 31 déc. 2004 à 22:17
Sael og blesud
<?php
// connection a la base en local
$connect = mysql_connect("localhost","root","");
// selection de la base
mysql_select_db("ma_base", $connect);
// votre requete de selection
$rest = $produit.$rub ;
$sql = mysql_query("SELECT * FROM cuisines WHERE IDprod LIKE '$rest%'");
// on compte le nombre de résultats
$result = mysql_num_rows($sql);
echo"Il y a ",$result," modèles
";
// récupération et affichage des données
// affichage avec un boucle while
while($affichage = mysql_fetch_array($sql, MYSQL_ASSOC)){
echo "".$affichage ['nom_produit']."
";
// fin de boucle while
}
// fermeture de la connection
mysql_close($connect);
cs_deodato
Messages postés12Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention23 avril 2009 1 janv. 2005 à 00:52
Merci beaucoup tu n'as pas été bavard mais tu m'as donné la réponse, ça marche très bien.
Ma prof de math me disait : "ce n'est pas le résultat qui compte mais le résonnement".
apparemment je n'étais pas loin de la réponse, mais pourquoi faut il ajouter un ". avant la variable?
un . est un élément de concaténation mais je ne vois pas là l'utilité d'une concaténation.
Merci pour ta réponse
cs_sjon
Messages postés861Date d'inscriptionmardi 26 mars 2002StatutMembreDernière intervention29 novembre 20061 1 janv. 2005 à 03:29
Sael og blesud
En fait vous ouvrez la fonction echo par des guillemets mais vous faites de même pour votre href ce qui pour php veut dire que vous refermez votre fonction echo. il aurait été possible de les slasher de la manière suivante :
echo "$affichage ['nom_produit']";
Je ne vous ait présenté qu'une des multiples solutions existantes. Mais vous auriez pu l'écrire aussi comme cela
cs_deodato
Messages postés12Date d'inscriptionmercredi 22 décembre 2004StatutMembreDernière intervention23 avril 2009 1 janv. 2005 à 12:34
Merci pour tout
j'avais essayé les slash egalement mais rien n'y faisait, je vais retenir la 1ere solution que j'ai comprise.
Encore merci et très bonne année à vous
Deodato