J'ai une table où se trouve des noms de pays identifiés par un country_id:
country_id : 1
name : France
country_id : 2
name : Canada
etc etc
Donc, le but de ce script est d'affiché les pays des membres une fois inscrits. ce qui me donnera, par exemple:
Pays : France
Le probleme avec le script c'est qu'il me donne:
Pays : 1
Notez que le country_id de la France est 1 et que les autres données sont notées par id pour eviter tout conflit
Merci pour votre aide
Voila le script (c'est une fonction smarty):
Code : Tout sélectionner
{if $records.country}
<strong>{$smarty.const.COUNTRY}</strong> {$records.country}<br />
{/if}Code : Tout sélectionner
{if !$records.country}
{foreach item="country" from=$countrylist}
{if $records.country eq $country.country_id}{/if}<strong>Pays:</strong>{$country.name}
{/foreach}
{else}
{foreach item="country" from=$countrylist}
<strong>Pays</strong>{$country.name}
{/foreach}
{/if}
Code : Tout sélectionner
//Get option information lists
function getCountryList()
{
$sql = "SELECT * FROM country ORDER by name";
$res = sqlQuery($sql); if(sqlErrorReturn()) sqlDebug(__FILE__,__LINE__,sqlErrorReturn());
$c=0;
while ($a_row = sqlFetchArray($res)) {
$countrylist[$c]["country_id"] = $a_row["country_id"];
$countrylist[$c]["name"] = $a_row["name"];
$countrylist[$c]["iso_code_2"] = $a_row["iso_code_2"];
$countrylist[$c]["iso_code_3"] = $a_row["iso_code_3"];
++$c;
}
if (isset($countrylist))
return $countrylist;
}