Gå til innhold

includering av fil2 hvis fil1 ikke finnes


Anbefalte innlegg

dette er koden som den er i dag:

  } else if (bilder == @$_GET['side']) {
  include 'bilder.html';

Hvordan gjør jeg så filen 404.html includeres hvis bilder.html ikke finnes?

 

jeg prøvde

  } else if (bilder == @$_GET['side']) {
  include 'bilder.html' or include '404.html';

uten resultat...

Lenke til kommentar
Videoannonse
Annonse

Idèen i eksemplet til moesen er genialt, men holder å skrive

 

$side = $_GET['side']; // Hente variabel, f.eks. index.php?side=forum

if (file_exists($side . '.php')) { // finner ut om filen eksisterer, isåfall inkludere den.

include "$side.php"

} else {

include "forsiden.php"; // hvis den ikke eksisterer, sette inn forsiden.

}

 

Det funker fett når brukeren først har kommet inn på (i mitt eksempel) index.php. men sett at brukeren ved en feil hadde skrevet inn index.phpp eller noe annet feil, så er det greit med en errorside da også.

 

I .htaccess så skriver du:

 

ErrorDocument 403 /error403.html

ErrorDocument 404 /error404.html

ErrorDocument 503 /error503.html

 

og lager error403.html osv i root. Da får du custom errormelding ;) Evt. du kan lage en egen include til den: index.php?side=error404

 

Fantasien setter grenser.... hvertfall foreløpig

 

men nå vettu :p

Lenke til kommentar
jeg prøvde

  } else if (bilder == @$_GET['side']) {
  include 'bilder.html' or include '404.html';

uten resultat...

harald_; skjønte ikke helt hva du hadde gjort, men her er kanskje noe som hjelper:

 

== betyr ER LIK, som f.eks. bilder == $_GET['side']

!= betyr ER IKKE LIK som f.eks. banan != $_GET['side']

 

if ($_GET['side'] == "bilder") {
include "bilder.php";
} else {
include "error404.php";
}

 

eventuelt helt omvendt

if ($_GET['side'] != "bilder") {
include "error404.php";
} else {
include "bilder.php";
}

Endret av fjartan
Lenke til kommentar

DErsom du har flere linker blir dette en tungvint måte og gjøre det på...

 

jeg ville brukt en switch der du kan sette default til en 404.html side.. slik at dersom siden gjesten forsøker å finne ikke er i switchen din vil han el hun få 404.html

 

fordelen med switch er at du enklere kan kontrollere hva gjesten har tastet inn, og du kan enklere sette opp hv gjesten skal se ettersom hva han el hun skrev inn..

Lenke til kommentar

Begge deler kan gjøres, og det kommer jo an på hvordan du vil legge opp designet ditt. Er enig at det kan se noe ryddigere ut, og det kan hende at neste gang jeg gjør noen store forandringer på siden så forandrer jeg på det også...

 

Personlig finner jeg stadig ting som jeg ser jeg skulle gjort annerledes, og disse forandrer jeg da på.. dersom det ikke er alt for mye involvert ;) . Dersom det ville føre til en kjempe forandring, ville jeg nok heller vente til neste gang jeg redesigner siden....

Lenke til kommentar
I .htaccess så skriver du:

 

ErrorDocument 403 /error403.html

ErrorDocument 404 /error404.html

ErrorDocument 503 /error503.html

er det bare det som skal stå i .htaccess fila?

jeg pasta det i en txt fil, uploada den og renamet den til .htaccess, og da forsvant den :ermm: og det funker ikke...

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