[résolu]afficher suivant un champs choisi a l'avance...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [résolu]afficher suivant un champs choisi a l'avance...

Re: afficher suivant un champs choisi a l'avance...

par mooom » 29 mars 2010, 22:10

merci de vos réponses,
c'est bon ça marche :)
$retour = mysql_query('SELECT * FROM voiture WHERE choix = 3 ORDER BY id');

Re: afficher suivant un champs choisi a l'avance...

par macgawel » 29 mars 2010, 14:47

Tu peux vérifier :
1. Ce que donne "normalement" ta requête :
echo $requete; pour l'afficher, et tu la passes via PHPMyAdmin (ou ton gestionnaire de Base de données habituel).

2. Le résultat de ta requête :
var_dump($donnees); dans la boucle WHILE pour afficher le contenu de ton tableau.
Si tu ne comprends pas ton erreur en faisant ça, il faut reprendre les bases (php et SQL)

Re: afficher suivant un champs choisi a l'avance...

par visualight » 29 mars 2010, 14:28

Salut,

Il y a erreur ...
while ($row  = mysql_fetch_array ($resultat)) {
$pseudo = $row['pseudo'];
$modele = $row['modele'];
$chevaux = $row['chevaux'];
?>
<tr>
<td><?php echo $pseudo; ?></td>
<td><?php echo $modele; ?></td>
<td><?php echo $chevaux; ?></td>
</tr>
}

Re: afficher suivant un champs choisi a l'avance...

par mooom » 29 mars 2010, 14:25

merci pour cette réponse très didacticiel,
je vois a peut prés d'où peu venir le problème,
mais trj pas la solution...:(

je vais essayer de vous expliquez ce que je cherche a faire,
j'ai un formulaire , où l'utilisateur s'enregistre en indiquant :
un pseudo, le modelé de son véhicule, le nbr de chevaux, un email ou tél, et choisi une marque (choix), par une liste déroulante, les autres champs étant libre.
jusqu'ici ça va.

la basse contient qu'une table : voiture
avec : id / pseudo / modele / chevaux / contact / choix


je souhaite afficher les infos dans un tableau, suivant le choix,
une page pour bmw, une autre pour PSA Peugeot Citroen , ect...(il y seulement 5 choix car ça sera surtout les bmw qui m'intéresse...bref voilà)
et donc voici la page résultat:
<?php	
	mysql_connect("localhost","root","","")or die ("connection BD impossible");//connection a la base de donnée
	mysql_select_db("voiture") or die ("erreur DB");//selection de la base

?>	

  <table><tr>
<th>Pseudo</th>
<th>modele</th>
<th>chevaux</th>
</tr>

<?php
$searchitem='"bmw"';
$requete="SELECT choix FROM voiture WHERE choix LIKE '%$searchitem%'";
$resultat=mysql_query($requete) or die(mysql_error());

while ($row = mysql_fetch_array ($resultat)) {
$modele = $row['modele'];
?>
<tr>
<td><?php echo $donnees['pseudo']; ?></td>
<td><?php echo $donnees['modele']; ?></td>
<td><?php echo $donnees['chevaux']; ?></td>
</tr>
	
<?php
} // Fin de la boucle
?>
</table>
ici en l'occurrence, il m'affiche juste les titres du tableau (pseudo,modèle,chevaux),
si non, avec d'autres essay il m'affiche rien...

Re: afficher suivant un champs choisi a l'avance...

par visualight » 29 mars 2010, 13:39

$searchitem='bmw';
$requete="SELECT choix FROM voiture WHERE choix LIKE '%$searchitem%'";
$resultat=mysql_query($requete) or die(mysql_error());

while ($row = mysql_fetch_array ($resultat)) {
$modele = $row['modele'];
// ... etc
}
Voilà qui devrait t'aider à comprendre,
raph

Re: afficher suivant un champs choisi a l'avance...

par macgawel » 29 mars 2010, 13:39

Bonjour.

1. Merci d'utiliser les balises qui vont bien pour le code (
 par exemple).

2. C'est - a priori - un problème de SQL, il aurait donc fallu poster dans le sous-forum "SQL"

3. Tu devrais préciser ton problème. Message d'erreur ? Il 'naffiche pas ce que tu veux ?
Que veux-tu afficher au juste ?
[php]$requete =mysql_query " select choix from voiture where choix like 'bmw'";
while ($donnees = mysql_fetch_array($requete))
{
   echo $donnees['modele'];
   echo $donnees['chevaux'];
}
?>
Traduit en "français" ça nous donne :

Code : Tout sélectionner

SELECTIONNER le champ Choix pour chaque ligne de la table Voiture, où le champ Choix est 'bmw' TANT QUE j'ai une ligne de résultat AFFICHER le champ modele
Problème n° 1 : tu ne peux pas demander d'afficher 'modele' si tu ne demandes pas à le récupérer dans ta requête.
Tu peux vérifier :
1. Ce que donne "normalement" ta requête :
echo $requete; pour l'afficher, et tu la passes via PHPMyAdmin (ou ton gestionnaire de Base de données habituel).

2. Le résultat de ta requête :
var_dump($donnees); dans la boucle WHILE pour afficher le contenu de ton tableau.

[résolu]afficher suivant un champs choisi a l'avance...

par mooom » 29 mars 2010, 13:21

Bonjour,
j'ai un souci (je suis débutant surtout :p),
je souhaiterais afficher les résultats d'une table SQL dans un tableau, mais seulement correspondant a un choix:

bout code :

<?php

$requete =mysql_query " select choix from voiture where choix like 'bmw'";
while ($donnees = mysql_fetch_array($requete))
{
?>

<tr>
<td><?php echo $donnees['modele']; ?></td>
<td><?php echo $donnees['chevaux']; ?></td>
</tr>

<?php
}
?>


j'ai essayer plusieurs solutions trouvé sur le web, mais pas trouvé la bonne :s
ici, la dernière testé...

Merci,

voici ce que j'ai déjà essayé (entre autre) :
$requete =mysql_query("select choix from voiture where choix like 'bmw'");

______

$requete =mysql_query(SELECT choix FROM voiture WHERE choix LIKE 'bmw');
______

$requete =mysql_query(SELECT choix FROM voiture WHERE choix LIKE '"bmw"');