Gå til innhold

Include script, sluttet og fungere.


Anbefalte innlegg

Heisann jeg har et par hjemmesider hos hostean, og nå har plutselig include scripet mitt sluttet og fungere. Med sluttet og funkere så mener jeg at sidene ikke lenger reagerer når jeg trykker på de forskjellige linkene, men forsiden vises riktig.

 

Har 2 sider, så det er nok noe min host har gjort, dessverre er de litt vanskelige og få tak i så jeg prøver dere først:)

<?php 
$sjekk = isset($side); 
if ($sjekk == 1) { 
if (@fopen("include/$side.php", "r")) { 
include ("include/$side.php"); 
} 
if (!(@fopen("include/$side.php", "r"))) { 
include("404.php"); 
} 
} 
if ($sjekk <> 1) { 
include("include/forside.php"); 
}
?>

Slik ser det ut idag, jeg har lest litt og funnet ut at man kan bytte ut fopen med noe annet. Men hva? Get ?

 

Tror det er noe med fopen som er feilen :hmm: Er dessverre ikke så kyndig i php, har dere noen forslag?

 

 

EDIT: Begynner og bli sent, skrivefeil osv.

Endret av DiaVoLo
Lenke til kommentar
Videoannonse
Annonse

Hvorfor gjøre det så vanskelig? Trenger ikke fopen.

 

Hvis du vil inkludere en side utifra verdien av en variabel kan du gjøre sånn:

<?

$sjekk = isset($side);

if($sjekk)

include "include/".$side.".php";

else

include "include/forside.php";

?>

 

$sjekk vil ha en verdi lik true (1) eller false (0).

D.v.s. at dersom ikke $side har en verdi, så inkluderer scriptet forsiden, ellers den aktuelle siden. Trenger ikke noe 404 side.

Lenke til kommentar
Hvorfor gjøre det så vanskelig? Trenger ikke fopen.

 

Hvis du vil inkludere en side utifra verdien av en variabel kan du gjøre sånn:

<?

$sjekk = isset($side);

if($sjekk)

include "include/".$side.".php";

else

include "include/forside.php";

?>

 

$sjekk vil ha en verdi lik true (1) eller false (0).

D.v.s. at dersom ikke $side har en verdi, så inkluderer scriptet forsiden, ellers den aktuelle siden. Trenger ikke noe 404 side.

Hmmm...

 

Med den koden, vil det komme frem feilmelding dersom noen prøver å vise en side som ikke finnes...

Men det er unødvendig med en if setning for å sjekke om den kan leses, og en if setning som sjekker om den ikke kan leses... Bruk heller else istedetfor den siste if setningen...

 

Og ja, det er garantert det at du har slått av register globals som gjør at det blir feil...

 

Det vil si at $side ikke er definert. $sjekk blir derfor false, og forsiden blir inkludert...

Bør nok også sjekke hvilken fil som blir inkludert... Om det er en lovlig fil, liksom..

 

Eksempel på å få verdier fra Url med register globals avskrudd:

url: www.domain.com/?foo=bar

i koden:

$foo = $_GET["foo"] // $foo blir nå bar :)

 

/Kakkle

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...