Autor | Zpráva | ||
---|---|---|---|
kelvin Profil |
#1 · Zasláno: 14. 12. 2006, 16:12:12
Snažím se upravit jeden redakční systém (Bloxxy). Vybírání kategorií článků v redakčním systému je řešeno pomocí rozevíracího seznamu (<select>). Každá kategorie je zobrazena jako položka seznamu (option).
Chtěl bych to zrealizovat pomocí obyčejných odkazů nebo tlačítek (každá kategorie by byla prezentovaná jedním tlačítkem - jeho value by byla název kategorie). Ten kód je ale silně nad mé síly. Ten select je realizován následovně: function makeSelect($label,$name,$values,$val,$from=0) { $buff = ''; if ($label) $buff .= '<label for="'.$name.'">'.$label.'</label>: '."\n"; $buff .= '<select name="'.$name.'">'."\n"; for ($i=$from;$i<count($values);$i++) { $l = $values[$i]; $buff .= '<option value="'.$l[1].'"'; if ($l[1]==$val) $buff .= ' selected="selected"'; $buff .= '>'.$l[0].'</option>'."\n"; } $buff .= '</select>'."\n"; return $buff; } Ve stránce je zobrazen kódem: if ($stateStart) { ePar( makeSubmit('action',$BLXS['Action_Newitem']), 'actions' ); eH2($BLXS['Editor_Lbl_Groups']); ePar( makeSelect('','itemgroup',$grp_list,$itemgroup,0) . makeSubmit('action',$BLXS['Action_Listitems']) . ' --- ' . makeSubmit('action',$BLXS['Action_Newgroup']) . ' --- ' . makeSubmit('action',$BLXS['Action_ListitemsAll']), 'actions' ); Nejdříve se v seznamu vybere kategorie a následně se tlačítkem makeSubmit('action',$BLXS['Action_Listitems']) . ' --- ' odešle. Toto tlačítko má funkci : function makeSubmit($name,$value) { return '<input type="submit" name="'.$name.'" value="'.$value.'" />'."\n"; } Zkoušel jsem (spíše hodně od oka): function makeTlacitko ($label,$name,$values,$val,$value,$from=0) { $buff = ''; if ($label) $buff .= '<label for="'.$name.'">'.$label.'</label>: '."\n"; $buff .= '<input type="submit" "name="'.$name.'" "value="'.$name.'">'."\n"; for ($i=$from;$i<count($values);$i++) { $l = $values[$i]; $buff .= '<form value="'.$l[1].'"'; if ($l[1]==$val) $buff .= ' selected="selected"'; $buff .= '>'.$l[0].'</form>'."\n"; } $buff .= '</select>'."\n"; return $buff; } a zobrazit to kódem: makeTlacitko('','itemgroup',$grp_list,$itemgroup,0) . Ale zobrazilo se jen jedno tlačítko s value odeslat a pod ním plain text seznam kategorií :(. Formulář pro odeslání používá post: e('<form method="post" enctype="multipart/form-data" action="'.$SCRIPT_NAME.'">'); Pro názornost připojuji screenshot rozbalovacího seznamu a mého pokusu: http://www.milichovsky.com/bordel/bloxxy-kategorie.png . Zde je celý zdroj toho souboru http://www.milichovsky.com/bordel/gui.php.txt . |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0