|
|
|
| При выводе должен показывать название опции селекта целиком, а выводит только первую букву последнего. Код:
Работает на локальном сервере но не работает на хостинге.
<?
$r=mysql_query("SELECT parent,count(*) as cnt FROM ".$db["prefix"]."tmpl GROUP BY parent ORDER BY parent") or die(mysql_error());
while ($R=mysql_fetch_array($r)) {
if ($parent_tmpl==$R["parent"]) $selected="selected"; else $selected="";
$option .= "<option ".$selected." value=\"".$_SERVER['SCRIPT_NAME']."?parent=".$R["parent"]."\">".$R["parent"]." ".$LANG[$R["parent"]]."</option>\n";
}
?>
|
Что может быть за проблема? | |
|
|
|
|
|
|
|
для: vbps
(02.07.2007 в 12:07)
| | Ну ты намутил конструкцию...
попробуй так:
<?
..
// Два равно поставь;
while ($R==mysql_fetch_array($r))
..
?>
|
Может теги <option> закрывать не надо (</option>)?
При работе с массивами всегда проверяй их соджержимое при отладке, функцией print_r()
<?
print_r($LANG);
print_r($R);
?>
|
| |
|
|
|
|
|
|
|
для: Петр
(02.07.2007 в 12:15)
| | Проблема в $LANG[$R["parent"]]
предложеный вариант не работает не на локалном не на хосте.
и с option не совсем понял, все корректно отображается.
просто сам текст выводится странно, например вместо "Общий шаблон" покажет "О"
Мда!!!
Заменил $LANG на $lang и все заработало, страно! | |
|
|
|
|
|
|
|
для: vbps
(02.07.2007 в 12:29)
| | А так?
<?
$result = mysql_query("SELECT parent,count(*) as cnt FROM ".$db["prefix"]."tmpl GROUP BY parent ORDER BY parent") or die(mysql_error());
$option = "";
while ($arResult=mysql_fetch_array($result)) {
$SELECTED = ($parent_tmpl==$R["parent"])?"selected":"";
$option .= "<option value='".$_SERVER['SCRIPT_NAME']."?parent=".$arResult["parent"]."' $SELECTED>".$arResult["parent"]." ".$LANG[$arResult["parent"]]."</option>\n";
}
?>
|
Петр вы наверно ошиблись, тут происходит не сравнение(while ($arResult=mysql_fetch_array($result))) | |
|
|
|