Pb avec script PHP

Fermé
panpulilu - 17 déc. 2008 à 13:54
 Panpulilu - 18 déc. 2008 à 08:55
Bonjour,


je suis vraiment débutant en PHP (je préfère prévenir..) et j'essaie tant bien que mal de m'en sortir. Je voudrais mettre en place un site qui devra ouvrir une base de données sous MySQL pour répondre aux requêtes SQL que j'aurais écris préalablement dans mes scripts PHP.

Dans une première page PHP (ci dessous), je crée une liste déroulante dont les items figurent dans ma base de données. Pour l'instant, pas de problème: la page s'affiche correctement (je fais mes test sous wampserver).

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Choix CMD</title>
</head>
<body>
<?php
//on effectue la connexion – initialise $select_base
require "connexion.php";
echo "<center><h3>Choisir une CMD</h3><br>";
$query = "SELECT * FROM cmd";
$result = mysql_query($query);
?>
<form name="form_Choix" action="ResultatGHMparCMD.php" method="POST">
<select name="choix">
<?php
// tant qu'il y a des enregistrements - pour chaque ligne on crée une option
while ($val = mysql_fetch_array($result)) {
?>
<option value="<?php echo $val[CMD];?>">
<?php echo $val[CMD] ; ?></option>
<?php
}
?>
</select>
<input type="submit" value="Envoyer" >
</form>
<?php
mysql_free_result($result); // libération des ressources
mysql_close(); // fermeture de la connexion
?> </body></html>


Ensuite, dans une deuxième page php, je voudrais qu'à partir de l'item sélectionné dans la page suivante (cad à partir du numéro de CMD choisi ) s'affiche le nombre de GHM correspondant. Par exemple, pour une CMD donnée, j'ai tant de GHM. Mon script doit être faux mais je n'arrive pas à trouver l'erreur (cela fais quelques longues soirées que je m'arrache les cheveux....). Quand je test ma page, les messages d'erreur suivants apparaissent:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\...\ResultatNbreGHMparCMD.php on line 14

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\wamp\www\...\ResultatNbreGHMparCMD.php on line 16



Et voici ce (satané) script:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Résultats Nbre de GHM pour la CMD choisie</title>
</head>
<body>
<?php
//on effectue la connexion – initialise $select_base
require "connexion.php";
echo "<center><h3>Resultat pour la CMD choisie:</h3><br>";
//Requête
$query = "SELECT* FROM ghm where CMD=" . $_POST[choix];//
$result = mysql_query($query);
$val = mysql_fetch_array($result);
echo $val[GHM] ;
mysql_free_result($result);
mysql_close();
?>
</body></html>

Je ne sais plus quoi faire..........Aidez moi svp........
A voir également:

2 réponses

Utilisateur anonyme
17 déc. 2008 à 14:32
bonjour,
piste n° 1 essayez $_POST['choix']; // avec des quote

piste 2
vérifiez que voyus avez quelque chose en retour de votre requête.
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
17 déc. 2008 à 18:42
Bonsoir,

une erreur dans cette ligne:
//Requête
$query = "SELECT* FROM ghm where CMD=" . $_POST[choix];// il manque le " a la fin et les '


fais plutot:

//Requête
$query = "SELECT* FROM ghm where CMD='".$_POST[choix]."'"; 
0
Ouiiiiiiiiii !!! merci Alain, j'ai essayé avec ton script et enfin, ca marche!!!!

Mille merci!
0