Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Dataa osoiteriviltä

antsa [20.07.2008 19:06:33]

#

Oletetaan vaikka että sivustollani olisi vaikka uutisia ja käyttäjäprofiileja joita haetaan dynaamisesti tietokannasta.

Uutisenhan voisi hakea esimerkiksi get-parametreilla tyyliin: http://osoite/uutiset.php?id=n
ja http://osoite/kayttajat.php?tunnus=x

Monilla sivustoilla näkyy kuitenkin nykyisin hieman erinäköisiä toteutustapoja samanlaiselle systeemille:
http://osoite/uutiset/n ja
http://osoite/kayttajat/x

Eli siis skriptille syötetään dataa osoiteriviltä jollain eri tavalla kuin perinteisillä GET-muuttujilla. Ensimmäinen näennäinen alihakemisto siis määrittäisi mikä alasivu on kyseessä (uutiset vai käyttäjät) ja seuraava sitten sen, mitä ID:tä etsitään tietokannasta.

Kuinka tällä tavalla toimiva sivusto olisi mahdollista tehdä?

reca [20.07.2008 19:41:00]

#

Muistaakseni seuraava linkki käsittelee aihetta:
http://corz.org/serv/tricks/htaccess2.php

Metabolix [21.07.2008 09:44:07]

#

On olemassa myös toinen tapa:

http://palvelin/index.php/jotain/muuta/

<?php # index.php
echo $_SERVER["PATH_INFO"];
# "/jotain/muuta/"
?>

Näin on helppo tehdä PHP:llä hallittava virtuaalihakemistorakenne, eikä tarvitse säätää htaccessia tai muuta rewrite-moduulia.

Tämän tavan toiminta voi olla palvelimen asetuksista kiinni. Ainoalla käyttämälläni Windows-palvelimella systeemi ei toiminut (mikä aiheutti melkoisesti harmaita hiuksia, kun piti sitten kiireessä modailla tuntematonta ja täysin kommentoimatonta Perl-softaa palvelimen rajoitusten mukaiseksi >_>).

Grez [22.07.2008 01:24:12]

#

Aika villiä olettaa että tuo toimisi missään. Siis toki varmaan erityistapauksia on (esim. jokin yleisesti käytetty www-palvelinsofta), joissa palvelin osaa poimia keskellä polkua olevan "hakemiston" ja huomata että se onkin tiedosto...

Lebe80 [22.07.2008 08:43:27]

#

Kyllähän meikällä ainakin ihan suoraan tuo toimii. Palvelin taitaa automaagisesti tunnistaa tuon tiedostopäätteen, jonka perusteella toimia.

Onhan tuollainen index.php/parametri/foobar muistaakseni Wordpressissä ja Joomla!:ssa ihan vakiona mukana.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta