Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Käyttäjän kirjoittama url

Sivun loppuun

Papu [20.03.2006 12:36:20]

#

Olisi tarkoitus tehdä virhesivu, joka näytetään aina kun tulee virhe 404. Osaako joku neuvoa, miten saan tietää mitä käyttäjä on urliksi kirjoittanut?

squid [20.03.2006 12:45:41]

#

On mahdollista(kai), mutta onko se tuohon tarpeellista, kun on .htaccess? Käytä hakua, ja hae sanoilla htaccess ja 404

Papu [20.03.2006 12:55:40]

#

Olisi aika tarpeellista. Tulee tällä hetkellä paljon turhia 404-virheitä, koska osa käyttäjistä kirjoittaa tietyn osan urlista isoilla kirjaimilla. Täytyisi tietyissä tilanteissa muuttaa käyttäjän kirjoittama url pieniksi kirjaimiksi ja lähettää edelleen.

tkarkkainen [20.03.2006 13:46:52]

#

.htaccessilla ohjataan käyttäjä 404:n sattuessa php-sivulle. Haettu sivu taas löytyy muuttujasta $_SERVER['REQUEST_URI']

Papu [20.03.2006 14:02:16]

#

Kiitos vaan kovasti avusta! Piti aika paljon säätää, että sain sen siirtymään sinne minne halusin.

squid [20.03.2006 14:21:22]

#

Itse olisin tehnyt tuon ohjauksen näin:

$user_url = $_SERVER['REQUEST_URI'];
$user_url = strlower('$user_url');

header: ("Location: $user_url");

Miten sinä teit sen?

Lebe80 [20.03.2006 14:27:40]

#

squid kirjoitti:

Itse olisin tehnyt tuon ohjauksen näin:

$user_url = $_SERVER['REQUEST_URI'];
$user_url = strlower('$user_url');

header: ("Location: $user_url");

vai

$user_url = $_SERVER['REQUEST_URI'];
$user_url = strlower($user_url); // ilman hipsuja, lainausmerkeilläkin toimisi, muttei mielestäni hipsujen kanssa
header: ("Location: $user_url");

Tämä tosin voi johtaa loputtomiin uudelleen siirtoihin, jos käyttäjä kirjoittaakin oikeasti osoitteen ihan väärin.

Tämä vaatii selkeästi tarkistuksen, että kyseinen tuleva siirto todellakin onnistuu.

squid [20.03.2006 14:43:53]

#

Oho... noh ei se mitään... en vain ole pahemmin kirjoitellut PHPtä pieneen hetkeen, niin unohtuvat tuommoiset pienet yksityiskohdat :S

Mutta, tarviiko siinä mitään sinänsä tarkistaa, sillä kun tuonne lähetetään, ja sitä ei löydy, niin se lyö 404 eteen?

Olga [20.03.2006 15:24:27]

#

Ja viilataan vielä pilkkua, eli strtolower on tuo funktio nimeltään :)

Blaze [20.03.2006 15:37:19]

#

Papu kirjoitti:

Täytyisi tietyissä tilanteissa muuttaa käyttäjän kirjoittama url pieniksi kirjaimiksi ja lähettää edelleen.

Kuulostaa hommalta Apachen mod_spelingille (sic).

tkarkkainen [20.03.2006 16:17:05]

#

squid kirjoitti:

Mutta, tarviiko siinä mitään sinänsä tarkistaa, sillä kun tuonne lähetetään, ja sitä ei löydy, niin se lyö 404 eteen?

...jolloin avataan .htaccessin määrittelemä php-sivu, joka ottaa urlin, tekee sille strtolowerin. Tulosta ei jälleen kerran löydy, jolloin tulee uusi 404. Silloin avataan .htaccessin määrittelemä php-sivu...

Nojoo. Mod_speling varmaan hoitaa homman paremmin :)


Sivun alkuun

Vastaus

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

Tietoa sivustosta