PHP : interrogation de bases de données [Résolu/Fermé]

Signaler
Messages postés
1
Date d'inscription
mardi 23 janvier 2007
Statut
Membre
Dernière intervention
1 février 2007
-
 Picasso -
J'ai mis en place un formulaire permettant d'interroger une bdd mysql. Le formulaire envoit les infos vers un fichier bdd.php ci-dessous :
<html>
<body>
<?
// récupération de la variable protocole et affichage des données relatives à celui ci et les portails les utilisant
if(isset($_POST['protocole'])) $protocole=$_POST['protocole'];
{
if(!empty($protocole)) {
mysql_connect('localhost','root');
mysql_select_db('portail');
$rq_protocole = "SELECT protocole.nom_protocole, protocole.organisme, protocole.definition, portail.nom_portail
FROM protocole, portail, communiquer
WHERE protocole.nom_protocole='$protocole' AND protocole.id_protocole=communiquer.id_protocole AND portail.id_portail=communiquer.id_portail";

$var_protocole=mysql_query($rq_protocole) or die;
$data=mysql_fetch_array($var_protocole);


echo "<b>Protocole : </b>".$data['nom_protocole']."<br>";
echo "<b>Editeur : </b>".$data['organisme']."<br>";
echo "<b>Définition : </b>".$data['definition']."<br>";
echo "<b>Portails l'utilisant : </b>";
while ($data=mysql_fetch_array($var_protocole))
{
echo $data['nom_portail'];
echo "<li>".$data['nom_portail']."<br>";
echo "<br>";
}
mysql_close();
}
}
?>
<br>
<!--<input type="reset" value="Retour" target="recherche" onClick="window.location.href='recherche_portail.php'"> -->
</body>
</html>
Si j'exécute directement la requete dans la base de données aucun souci, j'ai bien les bonnes infos. Par contre si je l'éxécute depuis l'IE, je n'ai rien en face de portails l'utilisant
ex
Protocole : srw - sru
Editeur : Library of Congress
Définition : SRU est un protocole de recherche standard pour les interrogations sur internet qui utilise le langage de requête CQL. SRW est une variante du protocole SRU. Le client dialogue avec le serveur non pas par URL mais en utilisant le protocole http via le protocole SOAP.
Portails l'utilisant :

Je pense qu'il s'agit d'un pb avec la boucle while mais comment y remédier ?
Pour info, je peux pour un protocole avoir un ou plusieurs portails l'utilisant.

Merci pour votre aide....

2 réponses

Messages postés
54
Date d'inscription
jeudi 1 février 2007
Statut
Membre
Dernière intervention
16 mai 2007
27
Remplace
while ($data=mysql_fetch_array($var_protocole))
{
    echo $data['nom_portail'];
    echo "<li>".$data['nom_portail']."<br>";
    echo "<br>";
} 

Par :
do
{
    echo $data['nom_portail'];
    echo "<li>".$data['nom_portail']."<br>";
    echo "<br>";
} while ($data=mysql_fetch_array($var_protocole));
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

envoie ton formullaire STP merci ^^