Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/12/2010, 17h44   #1
Invité de passage
 
Inscription : décembre 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 5
Points : 0
Points : 0
Par défaut liste déroulante alimente par les champs d'une table sql

bonjour ne vous moquez pas j'avoue que j'ai beaucoup de mal mais a 52ans j'ai besoin d'expliquation pour comprendre

je debute en php et j'ai beau relire les cours php je ne trouve pas ma solution
donc j'ai une table avec les champs
id / nom_vote/ lien et com


donc je voudrais afficher une liste deroulante a partir du champ 'nom_vote'
afin que l'utilisateur puis changer le contenu du champ ' com' correspondant

je ne vous mettrez pas tous les essais que j'ai fais mais là je desespere
donc voici un nouvel essai mais toujours pas concluant
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
   // on se connecte a notre base
 
//ouverture de la connexion
function connect_bd()
{
    $nomserveur='127.0.0.1'; //nom du seveur
    $nombd='test'; //nom de la base de données
    $login='root'; //login de l'utilisateur
    $pass=''; // mot de pass
    $bd=mysql_connect($nomserveur, $login, $pass)or die("Connexion échouée");
    mysql_select_db($nombd,$bd)or die("La base ne peut pas être selectionnée");
    return $bd;
}
 
 
?> 
<?php
 
//je lance la requête
$SQL = mysql_query("SELECT * from softbb_ma_listevote ORDER BY nom_vote");
$req = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());	
//j'essaie d'afficher sous forme de liste deroulante le contenu de ma table softbb_la listevote par le champ nom_vote
while ($ligne=mysql_fetch_array($req))	
{	
 
	$nom_vote=addslashes($ligne['nom_vote']);	
 
 
	echo '<option value="'.$ligne['nom_vote'].'">'.$com.'</option>'\n;	
}	
 
 
?>
 
<?php
 
//fermeture de la connexion
function deconnect_bd($bd)
{
    mysql_close($bd);
    $db=0;
}
?>
et grand merci a tous ceux qui accepterons de m'aider
apres refflection je vous rajoute un autre de mes essais
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
{
include ("connexion_bd.php");
$bdd = connect_bd();
}
 
// Si tout va bien, on peut continuer
 
 
?>
<form>
   <select>
<?php
 
$SQL = "SELECT * FROM softbb_ma_listevote";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res))
 {
 
   echo "<option>".$val["nom_vote"]."</option>\n";
   echo "<option>".$val["com"]."</option>\n";
}
?>
   </select>
 
 
<?php
 
$liste=Array('COMPLET','TERMINE','ALLEZ LES FILLES');
$cnt=count($liste);
$select=@$_POST['select'];
$ret='';
 $com= 'com';
$nom_vote='$nom_vote'; 
 
if(isset($_POST['valider'])){
    for($x=0;$x<$cnt;$x++)
       if(isset($select[$x]))
          $ret.=$liste[$x].'<br/>';
}
 
 
$ret='<br/><form method="post">';
for($x=0;$x<$cnt;$x++){
   $ret.='<input type="checkbox" name="select['.$x.']"';
   if(isset($select[$x])) $ret.=' checked';
   $ret.='/>'.$liste[$x].'<br/>';
}
$ret.='<br/>'.
      '<input type="submit" name="valider" value=" ENVOYER "/>'.
      '</form>';
echo $ret;
$mysql_query="INSERT INTO `softbb_ma_listevote` VALUES ('')";
 
      mysql_query('insert into') or die('No inserre'); 
 
?>
</form>
et voici ce que j'obtiens
gribouille343 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2010, 18h04   #2
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 456
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 456
Points : 639
Points : 639
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$SQL = "SELECT * from softbb_ma_listevote ORDER BY nom_vote";
$req = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());
echo '<select name="">';
while ($ligne=mysql_fetch_array($req))	
{	
 
	$nom_vote=addslashes($ligne['nom_vote']);	
 
 
	echo '<option value="'.$ligne['nom_vote'].'">'.$com.'</option>'\n;	
}	
echo '</select>';
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2011, 10h00   #3
Invité de passage
 
Inscription : décembre 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 5
Points : 0
Points : 0
Par défaut resultat vide?

bonjour
j'ai corriger mon code mais il me dit que j'ai une erreur j'ai mis le temps mais j'ai trouve
mais le resultat n'est pas celui souhaiter regarder mes listes deroulantes sont vides

d'ou peu provenir l'erreur ?

code corrige
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
{
include ("connexion_bd.php");
$bdd = connect_bd();
}
 
// Si tout va bien, on peut continuer
 
 
?>
<form>
   <select>
<?php
 {
$SQL = "SELECT * from softbb_ma_listevote ORDER BY nom_vote";
$req = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());
}
echo '<select name="">';
 
while ($ligne=mysql_fetch_array($req))	
{	
 
	$nom_vote=addslashes($ligne['nom_vote']);	
} 
 
	echo '<option value="'.$ligne['nom_vote'].'">'.$com.'</option> \n ' ;	
 
echo '</select>';
 
?>
 
 </form>
merci pour votre aide
gribouille343 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2011, 22h31   #4
Membre éclairé
 
Inscription : mai 2006
Messages : 298
Détails du profil
Informations personnelles :
Âge : 57

Informations forums :
Inscription : mai 2006
Messages : 298
Points : 317
Points : 317
bonsoir,
Citation:
while ($ligne=mysql_fetch_array($req))
{

$nom_vote=addslashes($ligne['nom_vote']);
} // ce n'est pas ici qu'il faut fermer le while

echo '<option value="'.$ligne['nom_vote'].'">'.$ligne['com'].'</option> \n ' ; // attention à mettre la bonne variable

} //c'est ici qu'il faut fermer le while

__________________
Emmanuel
--------------------------------------
aucune réponse en message privé.
les discussions doivent profiter à tous.
notar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2011, 08h44   #5
Invité de passage
 
Inscription : décembre 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 5
Points : 0
Points : 0
bonjour,

merci pour votre aide et les commentaires de mes erreurs car comme ca je comprend mieux et oui je sais je comprends vite mais faut m'expliquer longtemps
bon j'ai corrige mais j'ai la liste ou les nom_votes ne sont pas afficher l'autre oui

code corrige
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 {
$SQL = "SELECT * from softbb_ma_listevote ORDER BY nom_vote";
$req = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());
 
}
echo '<select name="">';
 
while ($ligne=mysql_fetch_array($req))	
{	
 
	$nom_vote=addslashes($ligne['nom_vote']);	
 
 
	echo '<option value="'.$ligne['nom_vote'].'">'.$ligne['com'].'</option> \n ' ;	
}	
echo '</select>';
 
?>
 
 </form>
peu etre que ce n'est pas encore la meilleur facon de faire pour arrive a ce que je souhaite
ce que je voudrais cest:

il faut que les utilisateurs puissent changer la valeur du "com" en selectionnant le vote concerné
ex: si sur le vote01 le com est allez les filles et qu'un utilisateur souhaite mettre termine je ne sais pas si je suis clair pour moi oui car je sais de quoi je parle c'est comme le php facile quand on connait mais quand on debute faire les tutos des cours ok on se debrouille on revient en arriere si un truc ne fonctionne pas mais des que c'est pour moi plus rien ne va
merci pour votre patient et votre aide
gribouille343 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 13h16   #6
Modérateur
 
Avatar de Vil'Coyote
 
Développeur Web
Inscription : février 2008
Messages : 3 302
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : février 2008
Messages : 3 302
Points : 4 480
Points : 4 480
on peut avoir le code php complet depuis ta modif stp? car là on n'en vois que la moitié dont celle ne concernant pas la liste nomvote ou si je me trompe dans ce cas :

Code :
1
2
 
echo '<option value="'.$ligne['nom_vote'].'">'.$ligne['com'].'</option>
ne devrait pas afficher $ligne['com'] mais le $nom_vote
Vil'Coyote est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2011, 16h44   #7
Invité de passage
 
Inscription : décembre 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 5
Points : 0
Points : 0
bonjour,

le code est complet car je vais faire etape par etape
donc si je laisse comme ca ca affiche une des trois valeur du champ "com"
si je mets ".$ligne['nom_vote'].ca affiche la liste des noms ce que je souhaite
mais si je fais
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php							  
 $liste=Array('COMPLET','TERMINE','ALLEZ LES FILLES');
 
 
$cnt=count($liste);
$select=@$_POST['select'];
$ret='';
 
 
if(isset($_POST['valider'])){
    for($x=0;$x<$cnt;$x++)
       if(isset($select[$x]))
          $ret.=$liste[$x].'<br/>';
}
 
 
$ret.='<br/><form method="post" action="postessai.php">';
for($x=0;$x<$cnt;$x++){
   $ret.='<input type="checkbox" name="select['.$x.']"';
   if(isset($select[$x])) $ret.=' checked';
   $ret.='/>'.$liste[$x].'<br/>';
}
$ret.='<br/>'.
      '<input type="submit" name="valider" value=" ENVOYER "/>'.
      '</form>';
echo $ret;
 
 
?>
pour que les utilisateurs puissent choisir le commentaire
comment je fais pour dire a php que je veux que le choix qui a ete fait par l'utilisateur doit etre update dans le champ "com" de ma table (sur la meme ligne que le nom du vote

ex : si il choisi le "vote05" et qu'il veut marqué "complet" dans le champs com de ce vote comment je fais quel code quel requete
gribouille343 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h16.


 
 
 
 
Partenaires

Hébergement Web