Liste deroulantes en php

Fermé
lamyaa Messages postés 15 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 7 juillet 2006 - 5 juil. 2006 à 12:16
lamyaa Messages postés 15 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 7 juillet 2006 - 5 juil. 2006 à 17:37
Bonjour à tous !!
J'ai besoin de :
1- créer des listes déroulantes dynamiques, qui vont chercher les données de ma base.
2- récuper les options saisies pour les enregistrer dans une table.

J'ai récupéré ce sript, mais ça ne marche pas !!
Help c'est assez urgent !!
Merci

//mon fichier le listes

<form name="enr" action="fev_1_insert.php?flux=$ref" method="get">

<?
include ("connexion.php");

$sql="Select name_flux FROM flux";
$req=mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br>'.mysql_error());
?>
<tr>
<select name="flux[]" Tabindex=2>
<?
While($data=mysql_fetch_array($req)){ ?>
<option><? echo $data['num_flux']; ?></option>
</tr>
<? }

$ref=$name_flux[0];
?>
</select>

<input type="submit" value="Enregistrer">
//fin

//fichier insersion.php
<body>
<?
include ("connexion.php");

$sql="Insert into fiche values ('','$flux','$nom','$prenom','$fonction','$qualite','$telephone','$portable','$fax','$email','$remarque')";
mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br>'.mysql_error());
?>

Enregistrement éxécuté!
<br>
<a href="liste.php"><input type="submit" value="valider" name="OK"></a>

</body>

//Fin page insertion

4 réponses

P@ Messages postés 1709 Date d'inscription vendredi 7 juillet 2000 Statut Membre Dernière intervention 24 mars 2009 185
5 juil. 2006 à 14:42
bon on va voire ce qu'on peut faire voici déjà quelque petite correction

//mon fichier le listes

<form name="enr" action="fev_1_insert.php?flux=$ref" method="get">

<?
include ("connexion.php");

$sql="Select name_flux FROM flux";
$req=mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br>'.mysql_error());
?>
<tr>
<select name="flux[]" Tabindex=2>
<?
While($data=mysql_fetch_array($req)){ ?>
<option><? echo $data['num_flux']; ?></option>
<!-- TU VIRES CETTE BALISE QUI N'A RIEN A FAIRE Là /tr  -->
<? }

$ref=$name_flux[0];
?>
</select>

<input type="submit" value="Enregistrer">
//fin

//fichier insersion.php
<body>
<?
include ("connexion.php");

$sql="Insert into fiche values ('','$flux','$nom','$prenom','$fonction','$qualite','$telephone','$portable','$fax','$email','$remarque')";
$go = mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br>'.mysql_error());
?>

Enregistrement éxécuté!
<br>
<a href="liste.php"><input type="submit" value="valider" name="OK"></a>

</body>

Ca c'est pour de la "correction" de details.
Maintenant :
1 Est ce que ta liste déroulante s'affiche corectement ??
2 Où trouves tu toutes ces variables que tu veux insérer ?? Il y a d'autre champs ou c'était dans ce que tu as trouvé ??
3 Es tu bien redirigé vers insersion.php ??
0
lamyaa Messages postés 15 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 7 juillet 2006
5 juil. 2006 à 14:53
Merci d'avoir pris le temps de corriger mon script :-)
Alors reponses :
1- la liste s'affiche, mais vide
2- les variables que je veux afficher dans la liste sont dans la table "flux " où il n y a que 2 champs (num_flux" et "name_flux), par contre là où je dois enregistrer le choix est une autre table où il y a 25 champs ...
3- oui dans le form ... je suis bien dirigé vers insertion ...
0
P@ Messages postés 1709 Date d'inscription vendredi 7 juillet 2000 Statut Membre Dernière intervention 24 mars 2009 185
5 juil. 2006 à 15:12
1- la liste s'affiche, mais vide
°vire les selects et essaie d'afficher ton array pour voire si ce n'est pas lui qui est vide.
°tu n'as pas associé tes colonne alors peut être qu'il ne trouve pas $data['num_flux'] essaie avec $data[0] 0 étant le numéro de la colonne en base que tu veux afficher sachant qu'on compte de 0 à 9
°Pour faire ton select tu pourrais dans tes options faire
echo "<option value=$data[0]>$data[1]</option>";
et ainsi passer une valeur a chaque option du select

2- les variables que je veux afficher dans la liste sont dans la table "flux " où il n y a que 2 champs (num_flux" et "name_flux), par contre là où je dois enregistrer le choix est une autre table où il y a 25 champs ...
d'accord mais dans ton formulaire tu entre aussi les 24 autres champs ?? c'est ca ??

3- oui dans le form ... je suis bien dirigé vers insertion ... je te demande ca parce que ton action va sur fev_1_insert.php?flux=$ref peut être pourrais tu faire des echo pour t'assurer que tu as bien toutes tes valeurs quand tu en as besoin
0
lamyaa Messages postés 15 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 7 juillet 2006
5 juil. 2006 à 15:31
Alors :
1- avec le echo "<option value=$data[0]>$data[1]</option>";
la liste deroulante affiche la valeur $data[1] que dois-je en conclure ?

2- pour les aures champs, je les entre dans le fichier insertion, sousn fomr vide ' '

désolée mais je ne suis pas un as en php ;-(
0
P@ Messages postés 1709 Date d'inscription vendredi 7 juillet 2000 Statut Membre Dernière intervention 24 mars 2009 185
5 juil. 2006 à 15:36
t'inquiéte a la place du echo met un print_r($data);
et regarde comment il fait ton tableau
0
lamyaa Messages postés 15 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 7 juillet 2006
5 juil. 2006 à 15:42
Ben il me fait une liste déroulante qui affiche option1, option2
0
P@ Messages postés 1709 Date d'inscription vendredi 7 juillet 2000 Statut Membre Dernière intervention 24 mars 2009 185
5 juil. 2006 à 17:28
oui mais il doit faire quelque chose comme
array([0] => option1, [1] => option2 )
il fait ca ou il le présente autrement ???
bonne soirée à demain :D

0
lamyaa Messages postés 15 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 7 juillet 2006
5 juil. 2006 à 17:37
non il ne fait que ce que je t'ai dit ... il affiche une liste deroulante avec les option suivante : option1 et puis option2 et à coté de la liste il affiche #000000 (this is weard !! colors ?)
ça commence à m'enerver cette histoire ... je pensais que c'était un truc simple en php qui marche à tous les coups !!

Bonne soirée à toi aussi et à demain (j'espere :-) )
0