Affichage de résultat d'une bd avec php
Fermé
maguy
-
11 janv. 2011 à 14:52
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 11 janv. 2011 à 16:23
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 11 janv. 2011 à 16:23
A voir également:
- Affichage de résultat d'une bd avec php
- Easy php - Télécharger - Divers Web & Internet
- Scan bd ✓ - Forum Loisirs / Divertissements
- Lexer resultat - Télécharger - Sport
- Télécharger bd pdf gratuit sans inscription - Forum PDF
- Samia, kevin et jason ont gardé la trace de leurs ventes quotidiennes du mois de juillet 2016. dans la feuille bilan, il manque les résultats de jason. insérez une colonne entre samia et kevin et reportez-y les résultats de jason. quel mot secret apparait en f2 ? - Forum LibreOffice / OpenOffice
3 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
11 janv. 2011 à 15:03
11 janv. 2011 à 15:03
Bonjour,
Premièrement, il y a une petite erreur qui empêche d'afficher la première ligne de résultat, mais puisque tu dis que tu en as deux, on devrait au moins voir la deuxième. Supprimer quand même cette ligne-là :
$row_RSvoyages = mysql_fetch_assoc($RSvoyages);
Ensuite, juste après la partie que tu as mise en commentaire, il y a une accolade fermante qui traine.
Du coup, le "while" n'est plus dans le même bloc que le "if", et la variable $RSvoyages n'existe plus !
Il faut réintégrer le bloc "while" à l'intérieur du bloc "if".
Xavier
Premièrement, il y a une petite erreur qui empêche d'afficher la première ligne de résultat, mais puisque tu dis que tu en as deux, on devrait au moins voir la deuxième. Supprimer quand même cette ligne-là :
$row_RSvoyages = mysql_fetch_assoc($RSvoyages);
Ensuite, juste après la partie que tu as mise en commentaire, il y a une accolade fermante qui traine.
Du coup, le "while" n'est plus dans le même bloc que le "if", et la variable $RSvoyages n'existe plus !
Il faut réintégrer le bloc "while" à l'intérieur du bloc "if".
Xavier
Après changement, on a toujours un petit problème car rien ne s'affiche et rien ne se passe lorsque l'on valide la requête donc j'ai repris le code en partant d'un peu plus haut et ça donne ceci :
<h2>Recherche détaillée</h2>
<form action="choisir_mon_voyage_bis.php" method="post" id="formulaire">
<p>
<?php
mysql_free_result($req);
if(isset($idr) && $idr != -1)
{
$sql2 = 'SELECT DISTINCT ville FROM tb_voyages WHERE pays = "'. $idr .'ORDER BY'.'ville';
$req2 = mysql_query($sql2)
or die ("erreur3");
$num_ligne2 = mysql_num_rows($req2);
//echo $num_ligne2;
while($row = mysql_fetch_array($req2) )
{
$ville[] = $row['ville'];
//echo $ville[0];
//echo $ville[1];
}
}
?>
</p>
<p>
<select name="select" id="select">
<?php
do {
?>
<option value="<?php echo $row_rspays['pays']?>"<?php if (!(strcmp($row_rspays['pays'], $row_rspays['pays']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rspays['pays']?></option>
<?php
} while ($row_rspays = mysql_fetch_assoc($rspays));
$rows = mysql_num_rows($rspays);
if($rows > 0) {
mysql_data_seek($rspays, 0);
$row_rspays = mysql_fetch_assoc($rspays);
}
?>
</select>
</p>
<P>
<input type="submit" name="valider" id="valider" value="Valider" />
</form>
<?php mysql_select_db($database_connexiondb, $connexiondb);
if(isset($_POST['valider']))
{
$voyages = sprintf("SELECT pays, ville, adresse, hotel, prixeuro, url_image FROM tb_voyages WHERE pays='". $_POST["select"] ."'");
$RSvoyages = mysql_query($voyages, $connexiondb) or die(mysql_error());
$totalRows_RSvoyages = mysql_num_rows($RSvoyages);
/*if($row_RSvoyages['pays'] == $_POST['select'])
{$RSvoyages;
}*/
while($donnees=mysql_fetch_array($RSvoyages)){
echo ("Pays:".$donnees['pays']."<br />");
echo ("Ville:".$donnees['ville']."<br />");
}
?>
Un tout grand merci d'avance
<h2>Recherche détaillée</h2>
<form action="choisir_mon_voyage_bis.php" method="post" id="formulaire">
<p>
<?php
mysql_free_result($req);
if(isset($idr) && $idr != -1)
{
$sql2 = 'SELECT DISTINCT ville FROM tb_voyages WHERE pays = "'. $idr .'ORDER BY'.'ville';
$req2 = mysql_query($sql2)
or die ("erreur3");
$num_ligne2 = mysql_num_rows($req2);
//echo $num_ligne2;
while($row = mysql_fetch_array($req2) )
{
$ville[] = $row['ville'];
//echo $ville[0];
//echo $ville[1];
}
}
?>
</p>
<p>
<select name="select" id="select">
<?php
do {
?>
<option value="<?php echo $row_rspays['pays']?>"<?php if (!(strcmp($row_rspays['pays'], $row_rspays['pays']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rspays['pays']?></option>
<?php
} while ($row_rspays = mysql_fetch_assoc($rspays));
$rows = mysql_num_rows($rspays);
if($rows > 0) {
mysql_data_seek($rspays, 0);
$row_rspays = mysql_fetch_assoc($rspays);
}
?>
</select>
</p>
<P>
<input type="submit" name="valider" id="valider" value="Valider" />
</form>
<?php mysql_select_db($database_connexiondb, $connexiondb);
if(isset($_POST['valider']))
{
$voyages = sprintf("SELECT pays, ville, adresse, hotel, prixeuro, url_image FROM tb_voyages WHERE pays='". $_POST["select"] ."'");
$RSvoyages = mysql_query($voyages, $connexiondb) or die(mysql_error());
$totalRows_RSvoyages = mysql_num_rows($RSvoyages);
/*if($row_RSvoyages['pays'] == $_POST['select'])
{$RSvoyages;
}*/
while($donnees=mysql_fetch_array($RSvoyages)){
echo ("Pays:".$donnees['pays']."<br />");
echo ("Ville:".$donnees['ville']."<br />");
}
?>
Un tout grand merci d'avance
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
11 janv. 2011 à 16:23
11 janv. 2011 à 16:23
> $sql2 = 'SELECT DISTINCT ville FROM tb_voyages WHERE pays = "'. $idr .'ORDER BY'.'ville';
Il manque une espace entre "ORDER BY" et "ville"
> do {
> ?>
> <option value="<?php echo $row_rspays['pays']?>"<?php if
Si tu fais un do {...}while , il faut que la variable que tu utilises pour faire la boucle ait une valeur dès le début. C'est l'erreur inverse de celle de ton while() que j'ai pointée au premier message. Soit tu remplaces ce do..while par un while simple, soit tu initialises la variable $row_rspays (sauf si ça a déjà été fait plus haut encore dans le code)
Et tout à la fin, je ne vois pas l'accolade fermante du if(isset($_POST['valider']))
Si ça ne va toujours pas, essaie de placer des indicateurs textuels du genre
echo "je passe par là",
echo $voyages
echo mysql_error()
histoire de bien voir où PHP passe, et avec quelles valeurs pour les variables...
Xavier
Il manque une espace entre "ORDER BY" et "ville"
> do {
> ?>
> <option value="<?php echo $row_rspays['pays']?>"<?php if
Si tu fais un do {...}while , il faut que la variable que tu utilises pour faire la boucle ait une valeur dès le début. C'est l'erreur inverse de celle de ton while() que j'ai pointée au premier message. Soit tu remplaces ce do..while par un while simple, soit tu initialises la variable $row_rspays (sauf si ça a déjà été fait plus haut encore dans le code)
Et tout à la fin, je ne vois pas l'accolade fermante du if(isset($_POST['valider']))
Si ça ne va toujours pas, essaie de placer des indicateurs textuels du genre
echo "je passe par là",
echo $voyages
echo mysql_error()
histoire de bien voir où PHP passe, et avec quelles valeurs pour les variables...
Xavier