Gå til innhold

Treng hjelp med et include script.


Anbefalte innlegg

Hei!

 

Jeg er ganske fersk på PHp og trenger derfor litt hjelp med et include script jeg skal bruke på hjemsiden min etterhvert. Den er hentet fra home.no.net/epleweb. Jeg lurer på, hvordan lager jeg linker som fungerer til dette scriptet og forteller det hvilken underside jeg vil vise.

 

Poenget er at head'en og meny'en skal slippe å laste på nytt hver gang du skal skal skifte underside, men at bare undersiden skiftes ut. Samme oppgave som frames hadde før.

 

Skriptet ser slik ut:

<?php

// 2-variables Page Include PHP-script
// Version 1.1
// By www.epleweb.tk


// CONFIGURATION
$dir1  = "./inc";  	/* The directory where all the pages for category 1 are */
$dir2  = "./inc2";  	/* The directory where all the pages for category 2 are */
$mainpage	= "./inc/main.php";	/* Main page that is included if neither cat1 nor cat2 is defined in the URL */
$fileext	= ".php";  	/* File extension for all pages and tutorials. ".php" by default */
$error404	= "<h2>Error 404</h2><p>Could not find the requested page</p>"; /* Error message displayed when a page doesn't exist */

/* Change the word inside the [' and the '] as you like. I.e ['page'] or ['id'] or ['section'] or whatever */
$cat1	= $_GET['cat1'];	/* Example: http://www.dot.com/index.php?cat1=mypage */
$cat2	= $_GET['cat2'];	/* Example: http://www.dot.com/index.php?cat2=mypage */

// END OF CONFIGURATION

// If cat1 is defined in the URL:
if (isset($cat1)) {
$cat1 = stripslashes(strip_tags($cat1));
$forbidden1 = ereg("\.\./", $cat1);
$forbidden2 = ereg("/", $cat1);
$includepath= $dir1 . "/" . $cat1 . $fileext;

if ($forbidden1 || $forbidden2) {
 echo "<h2>Error</h2>";
 echo "<p>Could not include page. Only local files may be included</p>";
}
else {
 if (@fopen("$includepath", "r")) {
 	include ("$includepath");
 }
 else {
 	if (!(@fopen("$includepath", "r"))) {
   echo "$error404";
 	}
 }
}
}
// If cat2 is defined in the URL:
elseif (isset($cat2)) {
$cat2 = stripslashes(strip_tags($cat2));
$forbidden1 = ereg("\.\./", $cat2);
$forbidden2 = ereg("/", $cat2);
$includepath= $dir2 . "/" . $cat2 . $fileext;

if ($forbidden1 || $forbidden2) {
 echo "<h2>Error</h2>";
 echo "<p>Could not include page. Only local files may be included</p>";
}
else {
 if (@fopen("$includepath", "r")) {
 	include ("$includepath");
 }
 else {
 	if (!(@fopen("$includepath", "r"))) {
   echo "$error404";
 	}
 }
}
}
// If no category is defined in the URL:
else {
include ("$mainpage");
}
?>

 

Håper noen kan hjelpe meg med det.

Lenke til kommentar
Videoannonse
Annonse

Heihei, du vil ikke med dette, eller noen andre includescript, få "frame-effekten" ved at kun en underside lastes. Hele siden må lastes på nytt, men det går vanligvis så kjapt at man ikke merker det, allikevel.

 

Det første du må gjøre er å stille inn $dir1 og $dir2-variablene. Den første viser til mappen hvor include-filene til $cat1-variabelen ligger, mens den andre viser til filene til $cat2 - dersom du bare trenger den ene variabelen (f.eks index.php?side=noe) kan du bare ignorere $dir2 og $cat2.

 

$cat1 og 2 endrer du til den variabelen du vil sende i URL. Hvis du vil ha "side" skriver du $cat1 = $_GET['side'];. Samme med $cat2

 

Når dette er gjort lager du linkene dine sånn:

<a href="index.php?side=noe">Trallala</a>

..hvis det da var "side" du valgte i $cat1 eller 2..

Endret av Loomy
Lenke til kommentar

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...