Eh bien, je continue d'améliorer mes classes de génération de formulaire et je suis bloqué en retournant tous les éléments du pays dans le tableau country_data. Seuls les deux premiers éléments s'affichent dans les options de liste déroulante.foreach en classe: Je ne peux pas retourner tous les ele en arr
est ici classe menu déroulant:
//drop down form class class DropDown { function __construct ($form, $field_label, $field_name, $field_desc, $dropdown_data, $locale){ $this->form = $form; $this->field_label = $field_label; $this->field_name = $field_name; $this->field_desc = $field_desc; $this->dropdown_data = $dropdown_data; $this->locale = $locale; } function getNotRequiredData(){ global $notReqArry; return $notReqArry[$this->locale]; } function getValue(){ return $_POST[$this->field_name]; } function option(){ foreach ($this->dropdown_data as $key=>$value){ return $options = sprintf('%s',$key,$value); }; } function dropdown(){ return $select_start = "field_name\">$this->field_desc".$this->option().""; } function getLabel(){ $non_req = $this->getNotRequiredData(); $req = in_array($this->field_name, $non_req) ? '' : '*'; return $this->field_label ? $req . $this->field_label : ''; } function __toString(){ $id = $this->field_name; $label = $this->getLabel(); $field = $this->dropdown(); return 'field_name.'">'.$label.''.$field.''; } }
Et j'utiliser la fonction supplémentaire pour des options supplémentaires:
function generateForm ($lang,$country_list){ switch($lang) { case 'en-US': //create EN web form echo $countryField = new DropDown ($form, 'Country', 'form_country', '--Select Country--', $country_list, 'en-US'); break; case 'fr-FR': //create FR web form break; case 'de-DE': //create DE web form break; case 'ja-JP': //create JA web form break; default: //create default web form print('foooo'); }; }
Et j'appelle le plaisir generateForm en bas de page.
$lang='en-US'; echo generateForm ($lang,$country_list);
A la question précédente, un expert a mentionné la touche $ et la valeur de $ dans le foreach sont des objets pas, mais je ne comprends pas ce que je dois plus logique ici. Ouais, je suis vraiment nouveau à PHP et j'ai juste une petite expérience sur AS. J'ai besoin d'aide.
Merci.
Contractions comme "ele" et "arr" dans le discours décontracté rendent beaucoup plus douloureux de comprendre de quoi vous parlez. Est-ce vraiment si difficile de taper le 'ay' supplémentaire? –
Désolé, j'ai résolu cela. ;-) – chris
Assurez-vous d'accepter la bonne réponse! = D –