URL Explode, hvor er fejlen?

Tags:    php

<< < 12 > >>
Hej derude,

Kan i fortælle mig hvorfor det ikke virker når jeg requester www.robertrungholm.dk/blog ?

Min PHP kode:
[code]
<?
$parametre = explode("/", $_SERVER['REQUEST_URI']);

$documenttitle = $parametre['1'];
$pictitle = $parametre['1'];
$pagetitle = $parametre['1'];

require_once("connect.php");
require_once("funktioner.php");
require_once("header.php");

?>

<div class="page">

<div class="pic">
<img src="grafik/<? echo $pictitle; ?>.png" />
</div>

<div class="liner"></div>

<div class="content">

<?

if(($parametre['1'] == "Blog")){

vis_blog();

} else {

echo "Blah blah";

}


?>


</div>

</div>


<?

require_once("footer.php");

?>




19 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Husk altid at debugge din kode. Indsæt et var_dump($parametre) for at se hvad arrayet indeholder, og se om det stemmer overens med det du vil have det til at indeholde.



Du skal ændre $parametre['1'] til $parametre[1]

Desuden skal du have sat Apache op til at bruge din php-fil. Lige nu får jeg besked på at filen ikke er fundet, når jeg går ind på http://www.robertrungholm.dk/blog

Ifølge din kode hedder siden http://www.robertrungholm.dk/Blog og ikke http://www.robertrungholm.dk/blog



smid dette i din htaccess... det er url-rewrite - der findes masser af artikler om dette.

Fold kodeboks ind/udKode 


Bemærk: Den første RewriteRule er en liste over tilladte filtyper man kan få adgang til via normale url'er. Indgår filens efternavn ikke i denne, vil url blive dirigeret videre til index.php.



Indlæg senest redigeret d. 03.05.2007 17:15 af Bruger #10216
dette er din fejl:
$parametre['1'];

'1' er en streng, 1 er et tal.
'1' og 1 er to forskellige ting, og derved også to forskellige pladser i dit eksploderede array.

Lidt mere om arrays:
$array['1'] != $array[1] // to forskellige index

$array['pos'] == $array[pos] // samme index, men "pos" uden gnyffer tager længere tid at parse og producerer en advarsel i compileren.



Indlæg senest redigeret d. 29.04.2007 19:59 af Bruger #10216
Hm, okay.. Men hvad er det jeg skal ændre?



Gnyfferne har jeg fjernet, og det er bare blog, ikke Blog.

Hvad skal jeg skrive i min .htaccess siger du?



Prøv:

Alias /blog index.php



Det virker stadig ikke. :s



Hvad har du i din apache konfigurationsfil (.htaccess-filen), og hvor ligger denne fil?



Okay, lige for at friske op..

index.php
Fold kodeboks ind/udKode 


.htaccess
Fold kodeboks ind/udKode 


Alle filer ligger i root.



Indlæg senest redigeret d. 01.05.2007 16:57 af Bruger #10850
<< < 12 > >>
t