Avatar billede moreless Nybegynder
08. september 2006 - 03:15 Der er 14 kommentarer og
3 løsninger

Imaginære mapper som på eksperten

Hej,

jeg vil gerne finde ud af hvordan man laver imaginære mapper, det er nemlig meget nyttigt når man skal vise en træ struktur som: Du er her : Eksperten : Spørgsmål & Svar : Programmering :: Script :: PHP

http://www.eksperten.dk/spm/Programmering/Script/PHP/

jeg gætter mig til at den rigtige adresse må være noget i stil med:

http://www.eksperten.dk/spm/categories.php?cat1=Programmering&cat2=Script&cat3=PHP

Sider som jubii.dk og dgs.dk bruger det også, håber på noget hjælp til at lave dette trylle nummer, max points :)
Avatar billede sjh Nybegynder
08. september 2006 - 05:46 #1
du skal bruge filen .htaccess til det..

opret et fil i DocumentRoot med navn ".htaccess" (minus "")

skriv så det her i den.:


RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /db.php?q=$1 [L,QSA]


så er det bare at lave en php-file i DocumentRoot fx. db.php


<?php
  $arrCat = explode("/", $_GET["q"]);
  echo "q = ".$_GET["q"]."<br>";
  echo "cat1 = ".$arrCat[0]."<br>";
  echo "cat2 = ".$arrCat[1]."<br>";
  echo "cat3 = ".$arrCat[2]."<br>";
  echo "cat4 = ".$arrCat[3]."<br>";
  echo "cat5 = ".$arrCat[4]."<br>";
  echo "cat6 = ".$arrCat[5]."<br>";
?>


Så er det bare at fyre din url af.. www.blabla.dk/cat1/cat2/cat3/cat4/cat5/cat6/
Avatar billede sjh Nybegynder
08. september 2006 - 05:53 #2
Du kan så også lave det sådan at det kun virker under fx. data


RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^data/(.*)$ /data/db.php?q=$1 [L,QSA]


www.blabla.dk/data/cat1/cat2/cat3/cat4/cat5/cat6/
Avatar billede sjh Nybegynder
08. september 2006 - 06:01 #3
Hvis du ikke kan få det til at virke så skal du nok fjrene # i httpd.conf

# LoadModule rewrite_module modules/mod_rewrite.so

LoadModule rewrite_module modules/mod_rewrite.so


og skulle du ha problemer med at lave et punktum forand filen .htaccess
så kan du bare ændre navnet til fx. htaccess.txt i httpd.conf

# det er så AccessFileName du skal ændre..
# AccessFileName .htaccess


AccessFileName htaccess.txt
Avatar billede sjh Nybegynder
08. september 2006 - 06:07 #4
hvis du vil mere med rewrite modulet så kan du læse om det her:
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html (Apache 1.3)
http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html (Apache 2.0)
Avatar billede sjh Nybegynder
08. september 2006 - 06:09 #5
Hvis du retter i httpd.conf så husk at genstarte Apache ;)
Avatar billede Slettet bruger
08. september 2006 - 06:15 #6
kigger lige med.
Avatar billede sjh Nybegynder
08. september 2006 - 06:21 #7
ha ha ja gør det..

lige et tip mere.. hvis du omdøber .htaccess til htaccess.txt så kan du beskytte den ved at tilføje denne linje i htaccess.txt (under RewriteEngine On)

RewriteRule ^htaccess.txt$ [L,R=404,QSA]

men problemer er kun der hvis du køre under windows for så kan man ikke lave en fil som hedder .htaccess med minde man måske laver den man selve php??
Avatar billede jensgram Nybegynder
08. september 2006 - 07:42 #8
Man kan sagtens lave en fil, der hedder .htaccess på Win. Hvis du skriver den i notepad, skal du bare vælge Gem som og så skrive ".htaccess" som filnavn - BEMÆRK: Du SKAL skrive "-erne med...
Avatar billede webstuff Nybegynder
08. september 2006 - 10:36 #9
Skrev faktisk en artikel om det i går :-)

http://rowl.dk/showarticle.asp?id=133&succes=&page=0

Ved ikke - det kan sikkert lave på andre og bedre måder... Men det virker fint hos mig:P
Avatar billede coderdk Praktikant
08. september 2006 - 16:26 #10
Avatar billede jensgram Nybegynder
08. september 2006 - 16:37 #11
webstuff > Ang. din "artikel". Det er yderst uheldigt, hvis du ikke "retter op" på den medsendte status kode (404 Not Found), da browsere og søgemaskiner vil tro, at de ser en fejlside - ikke det rigtige indhold!

Du bør sende

header("HTTP/1.1 200 OK"); // http://dk.php.net/header

Før noget som helst indhold.
Avatar billede sjh Nybegynder
08. september 2006 - 19:14 #12
Ja der er mange måder at gøre det.. her er også en artikel om det.
http://www.udvikleren.dk/Article.aspx?tech=6&id=270

webstuff > Jeg syntes det er noget fusk at bruge ErrorDocument til det!
Avatar billede coderdk Praktikant
31. oktober 2006 - 23:59 #13
Kommet videre?
Avatar billede moreless Nybegynder
01. november 2006 - 00:34 #14
tusind tak for alle forslag, der er noget at gå videre med, smid et svar hvis i ønsker points
Avatar billede sjh Nybegynder
01. november 2006 - 01:24 #15
..
Avatar billede coderdk Praktikant
01. november 2006 - 08:21 #16
(c:
Avatar billede jensgram Nybegynder
01. november 2006 - 11:03 #17
Ellers tak ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester