par
polo » 11 août 2006, 17:45
Bonjour,
déjà tu fait des bêtise dans ton code tu créé des variables qui ne te servent pas: comme $host, etc.. vu que tu rentre à les main:
mysql_connect("localhost","root","")
dans la requêtes sql donc le code juste serait:
<HTML>
<HEAD>
<META NAME="GENERATOR"Content="Microsoft Visual Studio 6.0">
<TITLE>EXERCICE 13_p1_odbc:Passage de paramètres pour un recordset</TITLE>
</HEAD>
<H1>Afficher toutes les commandes pour le client sélectionné</H1>
<BODY>
<?php
//crée une connexion au lien ODBC"commandes"
$serveur = "localhost";
$utilisateur = "root";
$motDePasse = "";
$base = "base_test";
// code ci-dessous corrigé
mysql_connect("$server","$utilisateur","$motDePasse")
or die("Impossible de se connecter au serveur de bases de données.");
mysql_select_db($base)
or die("Base de données non trouvée.");
//paramétrage de la requete //pour les requêtes sql il est mieux de mettre les ordres en majuscules
$req_client="SELECT code_client,nom FROM clients ORDER BY nom";
//envoie le résultat de la requete dans le recordset
$result=mysql_query($req_client);
?>
jusque ici le code a l'air bon
ensuite:
je ne suis pas sur que cela soit très juste:
//pour chaque ligne du recordset, on crée une option dans la liste
while(mysql_fetch_row($result)==TRUE)
moi je mettrais plutôt comme ceci:
<FORM action=ex13_p2_odbc.php"method=POST>
<P>Liste des clients<BR><BR>
<SELECT NAME ="1st_clients">
<?php
//pour chaque ligne du recordset, on crée une option dans la liste
while(mysql_fetch_row($result))
{
//pour chaque ligne, crée une option à la liste (en HTML) et renseigne la valeur à stocker
//(propriété value) ainsi que la valeur à afficher (en PHP)
?>
<OPTION VALUE="<?php echo (mysql_result($result,"code_client"));?> ">
<?php echo(mysql_result($result,"nom"));?></OPTION>
<?php
}
//libération de la mémoire
mysql_free_result($result);
// tu a oublier de refermmer la base de donnée
mysql_close();
?>
</SELECT>
<INPUT TYPE="submit"name=bt_submitvalue="soumettre">
</P>
</FORM>
</BODY>
</HTML>
Ensuite pour tes problèmes d'affichage il faut voir si ta base de donnée est bien créée et que le nom de tes champs sont correct!
tu peut aussi essayer de faire un echo et afficher les resultat de ta requête.
En espérant t'avoir aider
