Gå til innhold

mod_rewrite, trenger hjelp!


Anbefalte innlegg

Skrevet (endret)

Jeg har lest guider, søkt her og sett på unrealized.org, men klarer ikke å skjønne dette med mod_rewrite.

 

Har aktivert mod_rewrite i httpd.conf

og laget en .htaccess i mappen der jeg skal bruke det.

 

Alle filene som inculderes ligger i samme mappe som .htaccess fila

 

slik ser .htaccess fila ut:


RewriteEngine on
RewriteRule "det er her jeg ikke veit hva jeg skal ha"

include scriptet ser slik ut :

 


<?php

$filnavn = $_GET['side'];

$fil = '.php';

if (isset($filnavn)) {

if (eregi("^[a-z0-9]+$", $filnavn)) {

include $filnavn . $fil;
}
else {
include "404.php";
}
}
else {
include "oss.php";
}
?>

som dere ser er URL nå:

 


xxxx/index.php?side="den aktuelle siden"

Ønsker en adresse som er slik her:


xxxx/"den aktuelle side"

 

Håper dere her kan hjelpe meg med dette, og takker på forhånd.

 

-Dan

Endret av danweb.cjb.net
Videoannonse
Annonse
Skrevet (endret)

Sorry, jeg leste ikke innlegget hans ordentlig. Jeg så bare noe PHP koding jeg!

Men uansett så er det dobbel posting!

Endret av YaNkEs
Skrevet (endret)

Var litt usikker, derefor posta jeg der først, men nå skjønner jeg at det var feil posting, skal slette i PHP forumet! :blush:

 

Men, er det noen her som kan hjelpe meg? Skjønner fortsatt ikke dette med mod_rewrite :roll:

 

- Dan

Endret av danweb.cjb.net
Skrevet

Skjønner ikke hvorfor du posta config fila de, ta å edit den bort!

 

du kan prøve en versjon jeg bruker:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f 

RewriteRule ([a-zA-Z_]+) ?side=$1

 

Her skriver du linken som "navnet på siden" bare

EKS: <a href="oss">Om oss</a>

Skrevet (endret)

Hvis jeg bare skal skrive

<a href="oss">Om oss</a>

så vil jo ikke includescripte includere sida i index.php!

 

Er det noe jeg gjøre veldig feil?

Endret av danweb.cjb.net
Skrevet

*bump*

 

Noen som har et forslag?

Når jeg bruker orsus sitt forslag opnes bare siden for seg selv, uten css informasjonen og uten noe layout.

 

Begynner å miste hår over dette her altså.. :no:

Skrevet

var_dump($_GET);

viser:

array(1) { ["side"]=>  string(5) "tilby" }
array(1) { ["side"]=>  string(5) "hoved" }

på to av lenkene, mens de tre andre viser:

array(1) { ["side"]=>  string(6) "xxx" }
array(1) { ["side"]=>  string(10) "xxxx" }
array(1) { ["side"]=>  string(14) "xxxxx" }

I alt har jeg 5 lenker

 

Håper dette var til hjelp, det viser vell at $_GET har verdier iallefall :love:

Skrevet (endret)

Da er det en feil i PHP-scriptet ditt, og ikke mod_rewrite-koden.

 

Edit: Det er sikkert noe bøll med det regulære uttrykket i includescriptet ditt. Det er ingen grunn til å bruke både et regulært uttrykk i includescriptet OG .htaccess-fila (med noen unntakstilfeller).

Endret av Lokaltog
Skrevet

Ok, men skjønner ikke det, det funker helt fint og ser slik ut:

 

<?php

$filnavn = $_GET['side'];

$fil = '.php';

if (isset($filnavn)) {

if (eregi("^[a-z0-9]+$", $filnavn)) {

include $filnavn . $fil;
}
else {
include "404.php";
}
}
else {
include "oss.php";
}
?>

 

Dette er alt av PHP jeg har på siden min. Kan noen hjelpe meg å feilsøke?

Jeg kan desverre ikke PHP godt nok til å finne feilen(e)

 

- Dan

Skrevet
<?php

$side = @ $_GET['side'];
$doc = "$side.php";

if(!empty($side) && is_file($doc))
{
// inkluder $doc her
}
elseif(!is_file($doc))
{
// inkluder 404 her
}
else
{
// inkluder 'oss' her
}

?>

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...