Zrobiłem sobie skrypt który wyświetla kategorie przy użyciu bazy danych MySQL oto struktura tabeli
Kod:
[sql]
categories (
id int(11) NOT NULL auto_increment,
title text NOT NULL,
category_id text NOT NULL,
PRIMARY KEY (id)
)
[/sql]
a oto kod napisany w PHP
[php]
<?
function category ($id) {
$query = "SELECT * FROM categories WHERE id='$id' ORDER BY id ASC ";
$result = @mysql_query($query);
if ($result) {
$row = mysql_fetch_assoc($result);
if ($row[category_id] !== kg) {
echo '<a href="'.$_SERVER[PHP_SELF].'?id='.$row[id].'">'.$row[title].'</a> » ';
}
if ($row[category_id] == kg) {
// Jeżeli kategoria jest kategorią główna zakończ wywoływanie funkcji
echo '<a href="'.$_SERVER[PHP_SELF].'?id='.$row[id].'">'.$row[title].'</a>';
}
else {
// Jeżeli kategoria nie jest kategorią główną wywołaj funkcje jeszcze raz
echo category ($row[category_id]);
}
}
}
echo category($_GET[id]);
?>
[/php]
działa to w taki sposób że kolumna category_id odpowiada za kategorie do której została dodana i jeżeli category_id ma wartość kg to jest już kategorią główną w pokazanym niżej przykładzie jest to kategoria download i tutaj zaczyna się problem podana funkcja wyświetla po jednym rekordzie na każde wywołanie. Pod koniec wywoływania ukazuje mi się coś takiego
phpblabla >>systemy portalowe>>skrypty php> download
a chciałbym aby wyświetlało się to tak
download >> skrypty php>> systemy portalowe >> phpblabla
czy da się to jakoś rozwiążać ??
A może trzeba napisać inny kod ??
Za wszelką pomoc dziękuje.
[PHP/MySQL]Kategorie
Re: [PHP/MySQL]Kategorie
Zamiast:
[sql]...ORDER BY id ASC[/sql]
daj
[sql]...ORDER BY id DESC[/sql]
P.S. Czy Tobie przypadkiem nei chcodzi o stworzenie drzewka SQLowego ?
[sql]...ORDER BY id ASC[/sql]
daj
[sql]...ORDER BY id DESC[/sql]
P.S. Czy Tobie przypadkiem nei chcodzi o stworzenie drzewka SQLowego ?
-
Krzysztof Kurzydło
- Posty: 9
- Rejestracja: czw gru 02, 2004 5:21 pm
Re: [PHP/MySQL]Kategorie
ORDER BY nic nie daje ponieważ każde wywołanie pobiera jeden rekord a nie więcej.
