[HELP MySQL - PHP] type enum -> menuselect

Statut
N'est pas ouverte pour d'autres réponses.

alan

Elite
comment récupérer les valeurs d'un type enum dans une table pour pouvoir les remettre en menuselect ??

table : `role` enum('R2','R1','B','S') default NULL

tout ca de MySQL vers PHP (HTML)

bien à vous!
 

kokotchY

Elite
je ne connais pas enum mais essayé de faire un mysql_fetch_array de la requete puis un print_r pour voir si les infos que tu as demandé sont bien la !
 

T-Tus

Touriste
:roll:
 
1er
OP
alan

alan

Elite
un type énum

Code:
CREATE TABLE `staff_plaines` (
  `id` mediumint(8) NOT NULL default '0',
  `plaine` enum('Ath','Tournai','Enghien') default NULL,  <<==
  `date` enum('1e sem','2e sem','3e sem','4e sem') default NULL, <<==
  `role` enum('R2','R1','B','S2','S1') default NULL, <<==
  `name` varchar(127) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM;

d'après Nexen
Une énumération ENUM est une chaîne dont la valeur est choisie parmi une liste de valeurs autorisées lors de la création de la table. ...suite


edit :
le but de la fonction étant de pouvoir reprendre les valeurs du type enum
pour les plaine avoir Ath, Tournai, Enghien
pi les passer en menuselect
idem pour date et role
 

guslinux

Gamerz'ien
met un int ... et tu fais une petite fonction avec un switch qui te renvoies le libelé en fonction de l'int que tu lui donne ... perso je fais comme ca :D les puristes me diront "t une merde" mais je m'en fous, mes trucs tournent bien donc ... voila koi... :idea:
 
1er
OP
alan

alan

Elite
guslinux a dit:
met un int ... et tu fais une petite fonction avec un switch qui te renvoies le libelé en fonction de l'int que tu lui donne ... perso je fais comme ca :D les puristes me diront "t une merde" mais je m'en fous, mes trucs tournent bien donc ... voila koi... :idea:
grr tout a fait
:p nop pas une merde qd mem tu fais de beaux trucs mais aime bien me prendre la tete moi deja! qd g qqch jve ke ca marche!
et pi ca c plus simple mem si la fonction est longue qd elle est faite jpe la partager et tt
masi perfere avoir une DB légère et pas de switch pcq ca me serai utile a pls endroit ca ferai trop de bordel!!
 
1er
OP
alan

alan

Elite
voila du forum nexen

Code:
function enum_2_menuselect($table, $champ){ 
/*
 Affiche un menu select en fonction des valeurs possible d'un type enum dans une table donnée
 Le nom du type enum à le même nom que le nom du menuselect
*/
 $resultat=mysql_query("SHOW COLUMNS FROM `$table` LIKE '$champ'") or die(mysql_error());
 $row=mysql_fetch_object($resultat);
 $enum_val=substr($row->Type,5,strlen($row->Type)-7);
 $enum_val=str_replace('\'','',$enum_val);
 $tab_val=split(',',$enum_val);
 //Ensuite pour l'affichage du formulaire HTML
 echo '<select name="'.$champ.'">';
 for($i=0;$i<count($tab_val);$i++){
  echo '<option value="'.$tab_val[$i].'">'.$tab_val[$i].'</option>';
 }
 echo '</select>';   
}
// Usage : enum_2_menuselect($table, $champ);
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut