Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
j'ai plusieurs formulaires avec des champs select, contenant des options susceptible d'être dynamiques ou modifiables par la suite. Je ne veux pas utiliser de base de données pour ces données là.
J'ai donc réfléchi à la solution de stocker ces données dans des fichiers textes ou ini, facilement éditables par la suite.
Par exemple, j'ai un champs select pour sélectionner un Pays.
J'ai crée un fichier pays.ini (par ex):
[pays] France Portugal Espagne
dans ma classe de formulaire :
$config = new Zend_Config_Ini( APPLICATION_PATH . '/data/pays.ini', 'pays'); $liste = $config->toArray(); $this->addElement('select', 'inscription_pays', array('MultiOptions' => $liste, 'required' => true, 'label' => 'Pays'));
Le problème c'est que ça ne marche pas de cette manière là, je dois modifier le pays.ini comme suit :
France = France Portugal = Portugal Espagne = Espagne
ce qui reste assez rebarbatif
Est ce qu'il existe une solution plus pratique pour charger des données d'un fichier texte avec notre cher framework ?
Je vous remercie d'avance pour vos réponses.
Dernière modification par supertino7 (19-05-2009 18:30:34)
Hors ligne
La fonction file de PHP (http://fr.php.net/manual/fr/function.file.php) charge un fichier dans un tableau. Par contre, après il faut boucler sur le tableau pour en créer un nouveau ou les clés = les valeurs.
Pense à désactiver la traduction (si tu n'en as pas besoin et que tu as un grand tableau) pour améliorer les performances.
Hors ligne
Bonjour, merci pour ton aide.
Il n'y a que la solution générique de php pour pouvoir lister le contenu d'un fichier, le ZF n'a pas prévu un package pour ?
Hors ligne
salut, c'est un peu tard pour poster mais je suis nouveau.
Je crois avoir trouver la solution
https://www.zend.com/forums/index.php?t … 370bb39bdc
Hors ligne
Salut,
A titre personnel je serais resté sur l'utilisation du fichier ini, car déjà il y a le composant ZF Zend_Config pour le manipuler, et que ensuite tu as directement le tableau quand tu charges le ficher avec cet objet.
En ce moment j'utilise un fichier ini pour définir un menu avec un sous menu et je trouve ça assez pratique. Je n'ai plus qu'a changer mon fichier ini pour changer le menu de l'application.
Je ne vois pas top le coté rébarbatif. Par contre si ta liste doit contenir un liste de pays plus importante, un outil existe déjà. Tutoriel ici : http://wiip.fr/content/zend-framework-c … formulaire
Il montre comment mettre ne place une liste des pays en français avec Zend_Locale::getCountryTranslationList
Bye
--itecman
Hors ligne
227 pays RTU a metre dans ton .ini
; element country
user.suscrib.elements.country.type = "select"
user.suscrib.elements.country.options.required = true
user.suscrib.elements.country.options.multioptions.211= "UNITED STATES OF AMERICA"
user.suscrib.elements.country.options.multioptions.210= "UNITED KINGDOM (Incl. N. Ireland)"
user.suscrib.elements.country.options.multioptions.76= "GERMANY"
user.suscrib.elements.country.options.multioptions.70= "FRANCE"
user.suscrib.elements.country.options.multioptions.100= "JAPAN"
user.suscrib.elements.country.options.multioptions.1= "AFGHANISTAN"
user.suscrib.elements.country.options.multioptions.2= "ALBANIA"
user.suscrib.elements.country.options.multioptions.3= "ALGERIA"
user.suscrib.elements.country.options.multioptions.4= "ANDORRA"
user.suscrib.elements.country.options.multioptions.5= "ANGOLA"
user.suscrib.elements.country.options.multioptions.6= "ANGUILLA"
user.suscrib.elements.country.options.multioptions.7= "ANTIGUA & BARBUDA"
user.suscrib.elements.country.options.multioptions.8= "ARGENTINA"
user.suscrib.elements.country.options.multioptions.9= "ARMENIA"
user.suscrib.elements.country.options.multioptions.10= "ARUBA"
user.suscrib.elements.country.options.multioptions.11= "AUSTRALIA"
user.suscrib.elements.country.options.multioptions.12= "AUSTRIA"
user.suscrib.elements.country.options.multioptions.13= "AZERBAIJAN"
user.suscrib.elements.country.options.multioptions.14= "BAHAMAS"
user.suscrib.elements.country.options.multioptions.15= "BAHRAIN"
user.suscrib.elements.country.options.multioptions.16= "BANGLADESH"
user.suscrib.elements.country.options.multioptions.17= "BARBADOS"
user.suscrib.elements.country.options.multioptions.18= "BELARUS"
user.suscrib.elements.country.options.multioptions.19= "BELGIUM"
user.suscrib.elements.country.options.multioptions.20= "BELIZE"
user.suscrib.elements.country.options.multioptions.21= "BENIN"
user.suscrib.elements.country.options.multioptions.22= "BERMUDA"
user.suscrib.elements.country.options.multioptions.23= "BHUTAN"
user.suscrib.elements.country.options.multioptions.24= "BOLIVIA"
user.suscrib.elements.country.options.multioptions.25= "BOSNIA-HERCEGOVINA"
user.suscrib.elements.country.options.multioptions.26= "BOTSWANA"
user.suscrib.elements.country.options.multioptions.27= "BRAZIL"
user.suscrib.elements.country.options.multioptions.28= "BRITISH INDIAN OCEAN TERRITORY"
user.suscrib.elements.country.options.multioptions.29= "BRITISH VIRGIN ISLANDS"
user.suscrib.elements.country.options.multioptions.30= "BRUNEI"
user.suscrib.elements.country.options.multioptions.31= "BULGARIA"
user.suscrib.elements.country.options.multioptions.32= "BURKINA FASO"
user.suscrib.elements.country.options.multioptions.33= "BURUNDI"
user.suscrib.elements.country.options.multioptions.34= "CAMBODIA"
user.suscrib.elements.country.options.multioptions.35= "CAMEROON"
user.suscrib.elements.country.options.multioptions.36= "CANADA"
user.suscrib.elements.country.options.multioptions.37= "CAPE VERDE"
user.suscrib.elements.country.options.multioptions.38= "CAYMAN ISLANDS"
user.suscrib.elements.country.options.multioptions.39= "CENTRAL AFRICAN REPUBLIC"
user.suscrib.elements.country.options.multioptions.40= "CHAD"
user.suscrib.elements.country.options.multioptions.41= "CHILE"
user.suscrib.elements.country.options.multioptions.42= "CHINA (MAINLAND)"
user.suscrib.elements.country.options.multioptions.44= "CHRISTMAS ISLAND (INDIAN OCEAN)"
user.suscrib.elements.country.options.multioptions.45= "COCOS (KEELING) ISLANDS"
user.suscrib.elements.country.options.multioptions.46= "COLOMBIA"
user.suscrib.elements.country.options.multioptions.47= "COMOROS"
user.suscrib.elements.country.options.multioptions.48= "CONGO"
user.suscrib.elements.country.options.multioptions.49= "COOK ISLANDS"
user.suscrib.elements.country.options.multioptions.50= "COSTA RICA"
user.suscrib.elements.country.options.multioptions.51= "CROATIA"
user.suscrib.elements.country.options.multioptions.52= "CYPRUS"
user.suscrib.elements.country.options.multioptions.53= "CZECH REPUBLIC"
user.suscrib.elements.country.options.multioptions.54= "DENMARK"
user.suscrib.elements.country.options.multioptions.55= "DJIBOUTI"
user.suscrib.elements.country.options.multioptions.56= "DOMINICA"
user.suscrib.elements.country.options.multioptions.57= "DOMINICAN REPUBLIC"
user.suscrib.elements.country.options.multioptions.58= "ECUADOR"
user.suscrib.elements.country.options.multioptions.59= "EGYPT"
user.suscrib.elements.country.options.multioptions.60= "EL SALVADOR"
user.suscrib.elements.country.options.multioptions.61= "EQUATORIAL GUINEA"
user.suscrib.elements.country.options.multioptions.62= "ERITREA"
user.suscrib.elements.country.options.multioptions.63= "ESTONIA"
user.suscrib.elements.country.options.multioptions.64= "ETHIOPIA"
user.suscrib.elements.country.options.multioptions.65= "FALKLAND ISLANDS"
user.suscrib.elements.country.options.multioptions.66= "FAROE ISLANDS"
user.suscrib.elements.country.options.multioptions.67= "FIJI"
user.suscrib.elements.country.options.multioptions.68= "FINLAND"
user.suscrib.elements.country.options.multioptions.69= "FR SOUTHERN & ANTARTIC LANDS"
user.suscrib.elements.country.options.multioptions.71= "FRENCH GUIANA"
user.suscrib.elements.country.options.multioptions.72= "FRENCH POLYNESIA"
user.suscrib.elements.country.options.multioptions.73= "GABON"
user.suscrib.elements.country.options.multioptions.74= "GAZA STRIP"
user.suscrib.elements.country.options.multioptions.75= "GEORGIA"
user.suscrib.elements.country.options.multioptions.77= "GHANA"
user.suscrib.elements.country.options.multioptions.78= "GIBRALTAR"
user.suscrib.elements.country.options.multioptions.79= "GREECE"
user.suscrib.elements.country.options.multioptions.80= "GREENLAND"
user.suscrib.elements.country.options.multioptions.81= "GRENADA"
user.suscrib.elements.country.options.multioptions.82= "GUADELOUPE"
user.suscrib.elements.country.options.multioptions.83= "GUATEMALA"
user.suscrib.elements.country.options.multioptions.84= "GUINEA"
user.suscrib.elements.country.options.multioptions.85= "GUINEA-BISSAU"
user.suscrib.elements.country.options.multioptions.86= "GUYANA"
user.suscrib.elements.country.options.multioptions.87= "HAITI"
user.suscrib.elements.country.options.multioptions.88= "HEARD AND MCDONALD ISLANDS"
user.suscrib.elements.country.options.multioptions.89= "HONDURAS"
user.suscrib.elements.country.options.multioptions.90= "HONG KONG"
user.suscrib.elements.country.options.multioptions.91= "HUNGARY"
user.suscrib.elements.country.options.multioptions.92= "ICELAND"
user.suscrib.elements.country.options.multioptions.93= "INDIA"
user.suscrib.elements.country.options.multioptions.94= "INDONESIA"
user.suscrib.elements.country.options.multioptions.96= "ISRAEL"
user.suscrib.elements.country.options.multioptions.97= "ITALY"
user.suscrib.elements.country.options.multioptions.98= "IVORY COAST"
user.suscrib.elements.country.options.multioptions.99= "JAMAICA"
user.suscrib.elements.country.options.multioptions.101= "JORDAN"
user.suscrib.elements.country.options.multioptions.102= "KAZAKHSTAN"
user.suscrib.elements.country.options.multioptions.103= "KENYA"
user.suscrib.elements.country.options.multioptions.104= "KIRIBATI"
user.suscrib.elements.country.options.multioptions.105= "KUWAIT"
user.suscrib.elements.country.options.multioptions.106= "KYRGYZSTAN"
user.suscrib.elements.country.options.multioptions.107= "LAOS"
user.suscrib.elements.country.options.multioptions.108= "LATVIA"
user.suscrib.elements.country.options.multioptions.109= "LEBANON"
user.suscrib.elements.country.options.multioptions.110= "LESOTHO"
user.suscrib.elements.country.options.multioptions.111= "LIBERIA"
user.suscrib.elements.country.options.multioptions.112= "LIECHTENSTEIN"
user.suscrib.elements.country.options.multioptions.113= "LITHUANIA"
user.suscrib.elements.country.options.multioptions.114= "LUXEMBOURG"
user.suscrib.elements.country.options.multioptions.115= "MACAO (MACAU)"
user.suscrib.elements.country.options.multioptions.116= "MACEDONIA (SKOPJE)"
user.suscrib.elements.country.options.multioptions.117= "MADAGASCAR (MALAGASY)"
user.suscrib.elements.country.options.multioptions.118= "MALAWI"
user.suscrib.elements.country.options.multioptions.119= "MALAYSIA"
user.suscrib.elements.country.options.multioptions.120= "MALDIVES"
user.suscrib.elements.country.options.multioptions.121= "MALI"
user.suscrib.elements.country.options.multioptions.122= "MALTA AND GOZO"
user.suscrib.elements.country.options.multioptions.123= "MARSHALL ISLANDS"
user.suscrib.elements.country.options.multioptions.124= "MARTINIQUE"
user.suscrib.elements.country.options.multioptions.125= "MAURITANIA"
user.suscrib.elements.country.options.multioptions.126= "MAURITIUS"
user.suscrib.elements.country.options.multioptions.127= "MEXICO"
user.suscrib.elements.country.options.multioptions.128= "MICRONESIA, FEDERATED STATES"
user.suscrib.elements.country.options.multioptions.129= "MOLDOVA"
user.suscrib.elements.country.options.multioptions.130= "MONACO"
user.suscrib.elements.country.options.multioptions.131= "MONGOLIA"
user.suscrib.elements.country.options.multioptions.132= "MONTENEGRO"
user.suscrib.elements.country.options.multioptions.133= "MONTSERRAT"
user.suscrib.elements.country.options.multioptions.134= "MOROCCO"
user.suscrib.elements.country.options.multioptions.135= "MOZAMBIQUE"
user.suscrib.elements.country.options.multioptions.136= "MYANMAR (BURMA)"
user.suscrib.elements.country.options.multioptions.137= "NAMIBIA"
user.suscrib.elements.country.options.multioptions.138= "NAURU"
user.suscrib.elements.country.options.multioptions.139= "NEPAL"
user.suscrib.elements.country.options.multioptions.140= "NETHERLANDS"
user.suscrib.elements.country.options.multioptions.141= "NETHERLANDS ANTILLES"
user.suscrib.elements.country.options.multioptions.142= "NEW CALEDONIA"
user.suscrib.elements.country.options.multioptions.143= "NEW ZEALAND"
user.suscrib.elements.country.options.multioptions.144= "NICARAGUA"
user.suscrib.elements.country.options.multioptions.145= "NIGER"
user.suscrib.elements.country.options.multioptions.146= "NIGERIA"
user.suscrib.elements.country.options.multioptions.147= "NIUE"
user.suscrib.elements.country.options.multioptions.148= "NORFOLK ISLAND"
user.suscrib.elements.country.options.multioptions.149= "NORTH KOREA"
user.suscrib.elements.country.options.multioptions.150= "NORWAY"
user.suscrib.elements.country.options.multioptions.151= "OMAN"
user.suscrib.elements.country.options.multioptions.152= "PAKISTAN"
user.suscrib.elements.country.options.multioptions.153= "PALAU"
user.suscrib.elements.country.options.multioptions.154= "PANAMA"
user.suscrib.elements.country.options.multioptions.155= "PAPUA NEW GUINEA"
user.suscrib.elements.country.options.multioptions.156= "PARAGUAY"
user.suscrib.elements.country.options.multioptions.157= "PERU"
user.suscrib.elements.country.options.multioptions.158= "PHILIPPINES"
user.suscrib.elements.country.options.multioptions.159= "PITCAIRN ISLAND"
user.suscrib.elements.country.options.multioptions.160= "POLAND"
user.suscrib.elements.country.options.multioptions.161= "PORTUGAL"
user.suscrib.elements.country.options.multioptions.162= "PUERTO RICO"
user.suscrib.elements.country.options.multioptions.163= "QATAR"
user.suscrib.elements.country.options.multioptions.95= "REPUBLIC OF IRELAND"
user.suscrib.elements.country.options.multioptions.165= "REUNION (ISLAND, FRENCH)"
user.suscrib.elements.country.options.multioptions.166= "ROMANIA"
user.suscrib.elements.country.options.multioptions.167= "RUSSIA"
user.suscrib.elements.country.options.multioptions.168= "RWANDA"
user.suscrib.elements.country.options.multioptions.169= "SAN MARINO"
user.suscrib.elements.country.options.multioptions.170= "SAO TOME AND PRINCIPE"
user.suscrib.elements.country.options.multioptions.171= "SAUDI ARABIA"
user.suscrib.elements.country.options.multioptions.172= "SENEGAL"
user.suscrib.elements.country.options.multioptions.173= "SERBIA"
user.suscrib.elements.country.options.multioptions.174= "SEYCHELLES"
user.suscrib.elements.country.options.multioptions.175= "SIERRA LEONE"
user.suscrib.elements.country.options.multioptions.176= "SINGAPORE"
user.suscrib.elements.country.options.multioptions.177= "SLOVAKIA"
user.suscrib.elements.country.options.multioptions.178= "SLOVENIA"
user.suscrib.elements.country.options.multioptions.179= "SOLOMON ISLANDS"
user.suscrib.elements.country.options.multioptions.180= "SOMALIA"
user.suscrib.elements.country.options.multioptions.164= "SOUTH AFRICA, REPUBLIC OF"
user.suscrib.elements.country.options.multioptions.181= "SOUTH KOREA"
user.suscrib.elements.country.options.multioptions.182= "SPAIN"
user.suscrib.elements.country.options.multioptions.183= "SRI LANKA"
user.suscrib.elements.country.options.multioptions.184= "ST CHRISTOPHER-NEVIS"
user.suscrib.elements.country.options.multioptions.185= "ST HELENA"
user.suscrib.elements.country.options.multioptions.186= "ST LUCIA"
user.suscrib.elements.country.options.multioptions.187= "ST PIERRE AND MIQUELON"
user.suscrib.elements.country.options.multioptions.188= "ST VINCENT AND THE GRENADINE"
user.suscrib.elements.country.options.multioptions.189= "SURINAME"
user.suscrib.elements.country.options.multioptions.190= "SVALBARD AND JAN MAYEN ISLAND"
user.suscrib.elements.country.options.multioptions.191= "SWAZILAND"
user.suscrib.elements.country.options.multioptions.192= "SWEDEN"
user.suscrib.elements.country.options.multioptions.193= "SWITZERLAND"
user.suscrib.elements.country.options.multioptions.43= "TAIWAN"
user.suscrib.elements.country.options.multioptions.194= "TAJIKISTAN"
user.suscrib.elements.country.options.multioptions.195= "TANZANIA"
user.suscrib.elements.country.options.multioptions.196= "THAILAND"
user.suscrib.elements.country.options.multioptions.197= "THE GAMBIA"
user.suscrib.elements.country.options.multioptions.198= "TOGO"
user.suscrib.elements.country.options.multioptions.199= "TOKELAU ISLANDS"
user.suscrib.elements.country.options.multioptions.200= "TONGA"
user.suscrib.elements.country.options.multioptions.201= "TRINIDAD AND TOBAGO"
user.suscrib.elements.country.options.multioptions.202= "TUNISIA"
user.suscrib.elements.country.options.multioptions.203= "TURKEY"
user.suscrib.elements.country.options.multioptions.204= "TURKMENISTAN"
user.suscrib.elements.country.options.multioptions.205= "TURKS AND CAICOS ISLANDS"
user.suscrib.elements.country.options.multioptions.206= "TUVALU"
user.suscrib.elements.country.options.multioptions.207= "UGANDA"
user.suscrib.elements.country.options.multioptions.208= "UKRAINE"
user.suscrib.elements.country.options.multioptions.209= "UNITED ARAB EMPIRATES"
user.suscrib.elements.country.options.multioptions.212= "URUGUAY"
user.suscrib.elements.country.options.multioptions.213= "UZBEKISTAN"
user.suscrib.elements.country.options.multioptions.214= "VANUATU"
user.suscrib.elements.country.options.multioptions.215= "VATICAN CITY"
user.suscrib.elements.country.options.multioptions.216= "VENEZUELA"
user.suscrib.elements.country.options.multioptions.217= "VIETNAM"
user.suscrib.elements.country.options.multioptions.218= "VIRGIN ISLAND OF THE US"
user.suscrib.elements.country.options.multioptions.219= "WALLIS AND FUTUNA"
user.suscrib.elements.country.options.multioptions.220= "WEST BANK"
user.suscrib.elements.country.options.multioptions.221= "WESTERN SAHARA"
user.suscrib.elements.country.options.multioptions.222= "WESTERN SAMOA"
user.suscrib.elements.country.options.multioptions.223= "YEMEN (SANA)"
user.suscrib.elements.country.options.multioptions.224= "YUGOSLAVIA"
user.suscrib.elements.country.options.multioptions.225= "ZAIRE"
user.suscrib.elements.country.options.multioptions.226= "ZAMBIA"
user.suscrib.elements.country.options.multioptions.227= "ZIMBABWE"
user.suscrib.elements.country.options.multioptions.0= "Other"
Dernière modification par hollow971 (31-07-2009 00:58:07)
Hors ligne
Pages: 1