Kære gæst, velkommen til Tweak.dk. Hvis dette er dit første besøg her, bør du læse Hjælp. Her forklares i detaljer hvordan denne side fungerer. For at benytte alle funktionerne på denne side, bør du overveje at lade dig registrere. Benyt venligst registreringsformularen for at registrere her eller læs yderligere information om registreringsprocessen. Hvis du allerede er registreret, så log på her.

1

søndag, 19. februar 2012, 11:08


Hej Tweak.

Jeg er gået i gang med at rode lidt med lidt php scripting igen :)

I den sammenhæng har jeg støt på et mindre problem med min .htaccess

Kildekode

1
2
3
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)/$ $1.php [NC,L]


Sådan ser den ud lige nu, og fungerer sådan så jeg kan lave domæne.dk/side/ også pejer den blot på domæne.dk/side.php

Jeg ønsker dog at gå skridtet videre så jeg undgår at skulle lave en domæne.dk/side/?query=string.

Har forsøgt mig med utallige guides, men det er svært når man ikke ved hvad man skal søge under.
Mit mål er at kunne skrive f.eks. domæne.dk/side/124/ også vil den pege på side.php men ignorerer /124/ i adressen, hvor jeg dertil kan bruge php med explode("/", $_SERVER['PHP_SELF']); også pille den data ud jeg skal bruge, og dermed bruge min "id" i den array som explode laver.

Men hvordan får jeg den til at ignorerer alt hvad der kommer efter domæne.dk/side/ - hvis det overhovedet er muligt..

I må hjertens gerne fortælle mig hvad funktionen jeg skal lede efter, så kan jeg selv google mig frem til resultatet, aner simpelthen bare ikke hvad det hedder :)

På forhånd mange tak


2

mandag, 20. februar 2012, 20:40


Halløjsa.

Jeg havde det samme problem. Min gamle lærer skrev dette til mig:

Citeret


Jeg har ikke så meget erfaring med modRewrite, men det er jo baseret på regulære udtryk, så mon ikke det er noget i retning af:

Kildekode

1
RewriteRule ^([^/\.]+)(/[^/\.]+)?/?$ index.php?page=$1&nid=$2 [L]


Bemærk at $1 (dollar-et) og $2 (i replace-delen) referer til parenteserne i search (pattern'et) hvor den første parentes er ([^/\.]+) altså = $1 og parentes 2 er (/[^/\.]+)? = $2. I $2 startes med et / og hele parentesen er optional (kan være tilstede 0 eller en gang) fordi der står er spørgsmålstegen (?) bagved. Og hvad er det så der er inden i? Det er en tegnklasse som er negeret, dvs alle de tegn som ikke er / eller . (punktum skal escapes, derfor \.), en eller flere gange, fordi der er plus (+) bag ved.


EDIT: Kan ikke huske om jeg nogensinde fik det til at virke.


3

lørdag, 25. februar 2012, 06:47


Kunne det bruges? :)


4

lørdag, 25. februar 2012, 09:04


ikke rigtigt fordi den du har givet, kræver at jeg manuelt skal skrive hver gang jeg ønsker at lave en query som "mappe" format :)

har ikke haft så meget tid til at lege med det endnu :)


Seneste tests og artikler

0

Wireless HDMI Extender WHDI

Her i den lumre sommerhede ska
Læs Mere

0

ASRock Fatal1ty H97 Performance

Denne gang tager jeg et kig på
Læs Mere

0

Arctic Accelero Xtreme IV VGA Cooler

Det er efterhånden ved at være
Læs Mere

0

Be quiet! Straight Power E9-400W GOLD80+

Strømforsyninger ser vi jo til
Læs Mere
Seneste nyheder

0

NVIDIA GeForce GTX 880 i forbindelse med Gamescon?

Ifølge rygterne så planlægger
Læs Mere

0

Vinderne af den store Dota 2 præmie pulje er fundet

Så lykkedes det at få afgjort
Læs Mere

0

Kingston er klar med SSDNow V310 Solid State Drive

Kingston er kommet med den nye
Læs Mere

0

Killzone: Shadow Fall får gratis multiplayer maps onsdag

Der kommer to sprit nye og ikk
Læs Mere
Indsend nyhed
Har du fundet en fed nyhed så indsend den så alle andre på Tweak.dk kan få glæde af den.