Portál AbcLinuxu, 30. dubna 2025 21:23
select 'com=' || type || zbytekurl from tabulka
btw, v tom prípade by mal celú url skladať zo dát (a pridať stĺpce)
com=article&task=listp&cat=1&cat=6
. Promenna cat bude mit ve vysledku stejne hodnotu 6. Pokud by si to chtel cpat do pole, tak by si to musel oznacit v url jako cat[].
case "lists" : $url= clean($_SERVER["REQUEST_URI"]); $url= ereg_replace("(.*)(\?)", "", $url); $cats= array (); $cats= split("&", $url); $sql= "SELECT cat_id FROM category"; $rows= dbcon($sql); foreach ($rows as $row) { if (in_array("cat=".$row["cat_id"], $cats)) { $sql1= "SELECT con_id, title, pretxt FROM content WHERE state='1' AND cat_id=\"".$row["cat_id"]."\" ORDER BY con_id DESC"; $rows1= dbcon($sql1); foreach ($rows1 as $row1) { echo "<h4><a href=\"index.php?com=article&task=view&id=".$row1["con_id"]."\">".$row1["title"]."</a></h4>"; } } } break;
Pokud by si to chtel cpat do pole, tak by si to musel oznacit v url jako cat[].To by mě docela zajímalo jak, abych to nemusel řešit tím složitým procházením URL, protože jak dát do url a do databáze PHP pole, na to jsem ještě nepřišel.
index.php?test[]=a&test[]=b
, tak ti v php vznikne pole $test = array('a', b')
. Proc to cpat do databaze nechapu, ale pole tam nacpes napriklad pres funkci serialize
.
Jo a neodpovedel jsi proc cpes do DB tu celou URL a ne jen ty casti jak jsem napsal? Tohle je fakt hrozny a do budoucna spatne pouzitelny.
function showmenu () { $sql= "SELECT * FROM menu ORDER BY parent, position, menu_id"; $menu = dbcon($sql); $menu_def = array (0 => array ('-children' => array ())); foreach ($menu as $row) { $menu_def[ $row['menu_id'] ] = $row; if (! array_key_exists ('-children', $menu_def[ $row['parent'] ])) $menu_def[ $row['parent'] ]['-children'] = array (); array_push ($menu_def[ $row['parent'] ]['-children'], $row['menu_id']); } echo '<table>'; menu_rec ($menu_def, 0); echo '</table>'; } function menu_rec ($menu_def, $id) { $entry = $menu_def[ $id ]; if (array_key_exists ('title', $entry)) { echo '<tr><td>'; echo '<a href="index.php?' . $entry['url'] . '">' . $entry['title'] . '</a>'; echo '</td></tr>'; echo "\n"; } if (array_key_exists ('-children', $entry)) { foreach ($entry['-children'] as $next_id) { menu_rec ($menu_def, $next_id); } } }php nemám, ani mať nebudem, možno som ani pôvodné zadanie správne neprelúštil
PHP a MySQL:Vytváříme webové databázové aplikace
od O'REILLY a Computer Pressu a tady toto programuji, abych se v PHP naučil dělat.$main_menu = array ( 'neco.php?bla+bla' => 'Nadpis', array( 'bla.php' => 'Podnadpis', ... ), 'dalsi.php' => Jiny nadpis, ... );
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.