Funkcja Get id a kilka folderow?

Mozna zrobic aby zamiast id byly nazwy folderow i to nie jednego tylko kilku?

Mysle o czyms takiem?

Tylko ze nie bardzo mi to dziala

<?

switch ($_GET[‘alergie’][‘artykuly’])

{

case “stres”:

include (“artykuly/stres.php”);

break;

case “witaminy”:

include (“alergie/witaminy.php”);

break;

default:

include ‘index2.php’;

}

?>

Wszystko można, tylko w tym przypadku traktujesz tablicę $_GET jako dwuwymiarową.

Z tego powodu powinieneś ją odpowiednio utworzyć itd.

Malutki przykładzik:

test.php

Dokladnie tak zrobilem ale na stronie pojawia sie takie cos:

Array ( [artykuly] => stres ) :frowning:

Specjalnie podałem, by wypisać zawartość tablicy $_GET, abyś zobaczył co się wówczas dzieje :wink:

Usuń fragment print_r($_GET); oraz za te ‘echa’ podstaw sobie co tam chcesz.

Taki dalem kod:

<?

switch ($_GET[‘alergie’][‘artykuly’])

{

case ‘stres’:

echo (“artykuly/stres.php”);

break;

case ‘witaminy’:

echo (“alergie/stres.php”);

break;

default:

include ‘index2.php’;

}

?>

A link do plikow taki:

2. Witaminy

Ale dalej nie zmieniaja sie podstrony.

Czy cos jeszcze jest zle?

Przecież w pierwszym poście coś napisałem…

Żeby to co powyżej podałeś zadziałało, musisz odpowiednio zadeklarować tablicę $_GET… w tym przypadku link powinien wyglądać tak:

2. Witaminy

No chyba że ja czegoś nie zrozumiałem, ale Twój “kod” jest mocno przekombinowany…

w kodzie zmienilem echo na include

oraz

zmienilem linka na:

2. Witaminy

i dzilala.

Nie rozumiem dlaczego jest taki kod w linku, chodzi mi o te artykuly w nawiasie kwadratowym? po co to?

I jak by wygladal kod jakbym mial 3 foldery np:

switch ($_GET[‘alergie’][‘artykuly’][‘nowosci’])

Jak by wygladal link do tego?

Dodane 21.02.2009 (So) 12:52

Zauwazylem ze jak dodam 3 folder:

switch ($_GET[‘alergie’][‘artykuly’][‘nowosci’])

to link zeby dzilala musi byc taki:

2. Witaminy

I tu moje pytanie:

Mozne jakos to tak pozmieniac zeby nie musiec dodawac do linku tych folderow. Bo jesli bede mial 5 folderow to w tedy kod robi sie trgicznie dlugi

Zacznijmy od tego, że jest to po prostu kolejny WYMIAR tablicy, a nie folder 8)

Poczytaj o tablicach :arrow: http://php.net.pl/manual/pl/language.types.array.php

Sam sobie wybrałeś taką drogę i przekombinowałeś :wink:

Tu trochę o instrukcji switch :arrow: http://php.net.pl/manual/pl/control-str … switch.php

Ok zeby nie bylo ze sie nie ucze wymodzilem cos takiego:

<?

$costam=$_GET[‘alergie’].$_GET[‘artykuly’].$_GET[‘nowosci’];

switch ($costam)

{

case ‘stres’:

include (“artykuly/stres.php”);

break;

case “witaminy”:

include (“alergie/witaminy.php”);

break;

case “new”:

include (“nowosci/new.php”);

break;

default:

include ‘index2.php’;

}

?>

Link do tego juz nie jest dlugi oto dwa przyklady:

2. Witaminy

3. Stres

Dziala ok

Moja strona bedzie miala 20 takich folderow i okolo 200 podstron w tych folderach.

Nie wiem czy taki kod bedzie dobry do tylu plikow?

Jakie stosuje sie rozwiazania dla takich duzych serwisow?

Myslisz ze ten moj kod moze byc?