[php] tree navigatie ebooks vorige <=> volgende

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik ben al een aantal dagen bezig met het bouwen van een tree navigatie (vorige -volgende) voor ebooks maar het wil niet echt lukken,
wat ik wil doen is boeken op het internet plaatsen. En die boeken wil ik indelen in hoofdstukken en paragrafen.

nu de volgende structuur

[boek]
boekid
auteur
titel
datum

[boek_onderdelen] bevat de hoofdstukken en hun paragrafen
hoofdstukid // auto nummering
boekid // bovenstaande id
mainhoofdstukid // id van de parent
hoofdstuknaam

[boek_paginas]
hoofdstukid
paginanr
inhoud

dus een boek - met meerdere hoofdstukken en paragrafen - met meerdere pagina's

volgende structuur dus

hoofdstuk 1
-paragraaf 1.1
#pagina1
#pagina2
#pagina3
--paragraaf 1.1.1
#pagina1
#pagina2
#pagina3 <== van hier wil ik naar
-paragraaf 1.2
#pagina1 <== hier komen
#pagina2

stel je voor dat ik nu van paragraaf 1.1.1 pagina 3 naar paragraaf 1.3 pagina 1

check of er geen nieuwe sub paragraaf is of nieuwe paragraaf.
ik moet dus eerst naar naar paragraaf 1.1 dat is te doen omdat ik kan kijken wat de parent van 1.1.1 is.
dan moet ik de volgende paragraaf vinden 1.2 (zou niet weten hoe ik dat moet doen) en dan kijken of er een subparagraaf is anders de eerste pagina raadplegen

maar hoe zoek ik als ik paragraaf 1.1 de volgende paragraaf 1.2 want de hoofdstukid zijn autonummeriek, dus ik kan niet zeggen + 1.

hoop dat iemand me kan helpen, eventueel aan een betere database structuur want ik denk dat ik best veel load van de server kan gaan eisen...

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 08:24

gorgi_19

Kruimeltjes zijn weer op :9

Iets zegt met dat je aan dit topic wel het eea kan hebben als basis. :)
[rml][ mysql/php]diepte creëren[/rml]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
nee sry dat gaat alleen over basis tree, terwijl ik weten hoe ik een tree omhoog ga en weer naar beneden.. met controle over elke move of er niet een andere is op het zelfde niveau

de meeste gaan er van uit dat de gebruiker door de tree bladert, ik wil die functie hebben door een next en vorige functie

[ Voor 98% gewijzigd door Verwijderd op 08-03-2003 00:32 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Een Celko tree is meestal wel erg handig
http://www.intelligententerprise.com/001020/celko.shtml

Kost wel wat tijd om het te begrijpen en implementeren maar daarna wel erg handig.

Acties:
  • 0 Henk 'm!

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 17-09 07:55

thomaske

» » » » » »

Er is hier op GOT (een hele tijd geleden) een aardige oplossing voor bedacht, waar je misschien wat aan hebt.
Lees deze eens door, en dan vooral de replies van MrX en dusty.

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
thomaske schreef op 08 maart 2003 @ 01:02:
Er is hier op GOT (een hele tijd geleden) een aardige oplossing voor bedacht, waar je misschien wat aan hebt.
Lees deze eens door, en dan vooral de replies van MrX en dusty.
Ik gebruik die ook, en die oplossing is idd vrij goed te doen, je houd er 2 querys aan over :)

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
mhhh, naja ik ga ook maar eens die database boek van mr. dusty aanschaffen :P

thnx peepz

[ Voor 9% gewijzigd door Verwijderd op 08-03-2003 10:28 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
mhhh ik loop wel nu tegen een aantal dingen aan, hoe zou ik bijvoorbeeld een selectie kunnen doen op alleen de eerste hoofdstukken te krijgen ? moet ik dan elke keer kijken of er ik de waarde van de array maar een punt staat ? of kan ik dit makkelijk met mysql... ?

elke keer regexen lijkt me ook erg zwaar...

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
als iemand weet of ik met mysql kan queryen "artikelid.(0-9)" dan is dat ook welcom

Acties:
  • 0 Henk 'm!

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 11:43

HenkS

Da_king alias HenkS

Verwijderd schreef op 08 March 2003 @ 13:07:
als iemand weet of ik met mysql kan queryen "artikelid.(0-9)" dan is dat ook welcom
ehmm weet niet of ik je begrijp, maar bedoel je de optie van mysql genaamd : LIMIT ?

select bla from bla where ... LIMIT 5,10

dus 10 records vanaf record 5...

of bedoel je dat niet?

Acties:
  • 0 Henk 'm!

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 17-09 07:55

thomaske

» » » » » »

Ik denk niet dat hij dat bedoelt. Rahman Advany, maak anders even een voorbeeldje van heo je het tot nu toe hebt opgelost..

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
[boek]
boekid
auteur
titel
datum

[boek_onderdelen] bevat de hoofdstukken
hoofdstukid // auto nummering
boekid // bovenstaande id
hoofdstuknummer // id van de parent
hoofdstuknaam

[boek_paginas]
hoofdstukid
paginanr
inhoud

het gaat om boek onderdelen waar ik de volgende gegevens in heb staan.

hoofdstukid boekid hoofdstuknummer hoofdstuknaam
1 184 1 bla
2 184 2 bla
3 184 2.2 bla
4 184 2.2.1 bla
5 184 3 bla

nu wil ik zeg maar alles uit de colom hoofdstuknummer hebben wat begint met 2

of dit gebeurt met een query of met een php based oplossing maakt niet veel uit, liever iets waar ik niet weer de database hoeft te benaderen...

Edit: Simon er zat helaas nix bij, allemaal basic sql tutorials

[ Voor 5% gewijzigd door Verwijderd op 08-03-2003 15:01 ]


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

of dit gebeurt met een query of met een php based oplossing maakt niet veel uit, liever iets waar ik niet weer de database hoeft te benaderen...
Ik mis hier een beetje aan wat je zelf al geprobeerd hebt... 't Begint nou wel erg veel op een scriprequest te lijken... Wat heb je zoal zelf bedacht en geprobeerd? :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
drm schreef op 08 March 2003 @ 15:04:
[...]
Ik mis hier een beetje aan wat je zelf al geprobeerd hebt... 't Begint nou wel erg veel op een scriprequest te lijken... Wat heb je zoal zelf bedacht en geprobeerd? :)
Heb je al wat gedaan met dat eerder gegeven topic? Er staat vrij veel handige meuk in..

Verder, verdiep je eens in www.mysql.com... levert vaak veel op :)

btw, mijn topic over trees:

[rml][ mysql/php]diepte creëren[/rml]

[ Voor 11% gewijzigd door simon op 08-03-2003 15:10 ]

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
drm schreef op 08 March 2003 @ 15:04:
[...]
Ik mis hier een beetje aan wat je zelf al geprobeerd hebt... 't Begint nou wel erg veel op een scriprequest te lijken... Wat heb je zoal zelf bedacht en geprobeerd? :)
LOL, idd je hebt gelijk, leek bijna op een script request, maar was ut niet hoor o-)

maar mensen ik ben er uit:

eigenlijk was het super simpel om het ff te regexen.. maja.. :P (klinkt stom maar ik kwam niet op het idee om het te regexen 8)7

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?

$items = array();
$check = array();

$items['1'] = "hoofdstuk 1";
$items['1.1'] = "hoofdstuk 1.1";
$items['1.2'] = "hoofdstuk 1.2";
$items['1.3'] = "hoofdstuk 1.3";
$items['1.4'] = "hoofdstuk 1.4";
$items['2'] = "hoofdstuk 2";
$items['2.1'] = "hoofdstuk 2.1";
$items['2.1.1'] = "hoofdstuk 2.1.1";
$items['2.1.2'] = "hoofdstuk 2.1.2";
$items['2.1.3'] = "hoofdstuk 2.1.3";
$items['2.1.4'] = "hoofdstuk 2.1.4";
$items['2.2'] = "hoofdstuk 2.2";
$items['2.3'] = "hoofdstuk 2.3";
$items['2.4'] = "hoofdstuk 2.4";

foreach($items as $key_1 => $value_1) {
    if ( ereg('^[2].[0-9]+$', $key_1) ) $check[$key_1] = $value_1;
}

foreach($check as $key_1 => $value_1) {
    echo " hoofdstuk: " . $key_1 . " naam: " . $value_1 . "<br>";
}

?>

[ Voor 37% gewijzigd door Verwijderd op 08-03-2003 19:42 ]

Pagina: 1