Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL/PHP] Drzewko SQL i pobieranie ID wskazanego elementu
Seth
post
Post #1





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Mam sobie nastepujace drzewko w bazie:
/ck/
/ck/teatry
/ck/teatry/Jakis teatr
/ck/teatry/Jakis inny teatr

I teraz musze na podstawie adresu - ForceType - np takiego:
.../ck/teatry
Sprawdzic czy w drzewie jest taki element i jezeli jest to pobrac jego ID.

Struktura SQL wyglada tak:
[sql:1:7b5ae2c8be]CREATE TABLE elements
(
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
class_id INT UNSIGNED NOT NULL,
name VARCHAR(128),

PRIMARY KEY(id)
);

CREATE TABLE elements_relations
(
first_id INT UNSIGNED NOT NULL,
second_id INT UNSIGNED NOT NULL,
depth INT UNSIGNED NOT NULL,

PRIMARY KEY( first_id, second_id )
);[/sql:1:7b5ae2c8be]
... Gdzie w elements trzymam: nazwy elementow w drzewie oraz typ klasy - folder/news itp - a w relacjach: powiazania elementow w drzewie.

Jest to prawie dokladnie to co przedstawil tutaj dragon: http://webdeveloper.pl/forum/read.php?f=3&...i=711&t=711&v=f


Czyli jeszcze raz: jak na podstawie podanej sciezki odnalezc ID elementu na ktory ona wskazuje (sciezka) :?:
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
piku
post
Post #2





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.11.2003

Ostrzeżenie: (0%)
-----


Hmmm, a czy upierasz sie przy takiej strukturze tabel?
Ja mam takie drzewko:
[sql:1:987e615482]CREATE TABLE `www_06` (
`id` int(4) NOT NULL auto_increment,
`ik` int(4) NOT NULL default '0',
`ip` int(4) NOT NULL default '0',
`tytul` text default NULL,
`text` text default NULL,
`ststus` tinyint(4) default NULL,

UNIQUE KEY `id` (`id`),
PRIMARY KEY (`id`)

) TYPE=MyISAM AUTO_INCREMENT=1 ;[/sql:1:987e615482]
gdzie ik to pozycja w drzewie, ip zawiera id ojca (parent).
Czyli to bedzie tak:
Kod
id   ik  ip    tytul                 text                    status

1    0   0    ck                      NULL                     1

2    1   1    teatry                  NULL                      1

3    2   2    Jakis teatr             NULL                      1

4    2   2    Jakis inny teatr        NULL                      1


I "ck" ma "id=1", "ik=0" oraz "ip=0" bo jest pierwsze w strukturze,
"teatry" ma "id=2", "ik=1" bo jest drugie w strukturze oraz "ip=1" bo należy do struktury "ck"(jego ojciec to "ck")
"Jakis teatr" ma "id=3", "ik=2" bo jest trzecie w strukturze oraz "ip=2" bo należy do struktury "teatry"
"Jakis inny teatr" ma "id=4", "ik=2" bo jest trzecie w strukturze oraz "ip=2" bo należy do struktury "teatry"
i tak dalej.
Pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 15:56