Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
eLement Mitglied
Angemeldet: 30.11.2005 Beiträge: 54
|
Verfasst am: 31.01.2006, 01:07 Titel:
Frage zu einer errorpage |
|
|
|
|
also ich habe einmal eine frage:
hier erst einmal der code
Code: | <?PHP
/* Hier wird die Config-Datei eingelesen */
require('_settings/config.php');
/* Hier werden die Variablen des Contents definiert */
switch($_GET['content']){
case "news":
define("get","content/news.php","1");
break;
default:
define("get","content/news.php","1");
break;
}
/* Hier wird der Content eingebunden */
include(get);
?> |
wenn ich jetzt anstatt news.php die seite frag.php aufrufe und diese nicht vorhanden ist, möchte ich das die seite mit der fehlermeldung auftaucht, die dann ca. so aufgebaut ist:
die von ihnen angefordert seite -hier der name was man man als link angegeben hat- konnte niht gefunden werden.
kann mir jemand sagen wie ich das machen kann? |
|
Nach oben |
|
|
unex`9dots Administrator
Angemeldet: 02.08.2003 Beiträge: 1106 Wohnort: Karlsruhe Interessen: Coding, Segeln, Schwimmen, PC
|
Verfasst am: 31.01.2006, 01:12 Titel:
|
|
|
|
|
wenn du dich gegen das "manipulieren" der content variable die du in der Adresse übergibst sichern willst kannst du einfach im switch Befehl für default: die errorseite angeben.
wenn du dich allerdings gegen ein mysteriöses verschwinden deiner im switch statement referenzierten dateien schuetzen willst wird das etwas komplizierter. Von daher wäre es schön wenn du dich erstmal äußerst was du genau meinst |
|
Nach oben |
|
|
eLement Mitglied
Angemeldet: 30.11.2005 Beiträge: 54
|
Verfasst am: 31.01.2006, 01:18 Titel:
beschreibung errorpage |
|
|
|
|
standartmäßig wird die datei news.php in dem content geladen.
auf meiner webseite befinden sich folgenden liks:
members = members.php
links = links.php
usw.
in der adresszeile steht dann zum beispiel:
http://maxmusterman.de/index.php?content=members
wenn ich das members gegen das wort frag austausche
http://maxmusterman.de/index.php?content=frags
und die diese seite aber nicht vorhanden ist, möchte ich das er eine seite mit einer festgelegten fehlermeldung aufruft.
die seite könnte dann zum beispiel error.php heißen.
in dieser datei sollte dann z.b. stehen:
die von ihnen angeforderte Seite "frags" konnte nicht gefunden werden.....
ich hoffe das hilft euch ein wenig weiter |
|
Nach oben |
|
|
unex`9dots Administrator
Angemeldet: 02.08.2003 Beiträge: 1106 Wohnort: Karlsruhe Interessen: Coding, Segeln, Schwimmen, PC
|
Verfasst am: 31.01.2006, 09:32 Titel:
|
|
|
|
|
Code: | <?PHP
/* Hier wird die Config-Datei eingelesen */
require('_settings/config.php');
/* Hier werden die Variablen des Contents definiert */
switch($_GET['content']){
case "news":
define("get","content/news.php","1");
break;
default:
if (empty ($_GET['content'])){
define("get","content/news.php","1");
}else{
define("get","content/error.php","1");
}
break;
}
/* Hier wird der Content eingebunden */
include(get);
?> |
vielleicht solltest du dich aber auch selbst mal ein bischen anstrengen, denn ich weiss nicht wie du irgendwas programmieren willst wenn du solch einfach Sachen nicht selbst irgendwie lösen kannst. |
|
Nach oben |
|
|
synth`9dots Administrator
Angemeldet: 02.08.2003 Beiträge: 3263 Wohnort: Karlsruhe Interessen: 9dots Design
|
Verfasst am: 31.01.2006, 18:49 Titel:
|
|
|
|
|
Vielleicht war ihm nicht so ganz klar, für was das default beim switchcase da ist... Das ist aber zugegebenermaßen die einzige denkbare Entschuldigung. |
|
Nach oben |
|
|
eLement Mitglied
Angemeldet: 30.11.2005 Beiträge: 54
|
Verfasst am: 31.01.2006, 19:17 Titel:
errorpage |
|
|
|
|
ich muss dir da recht geben. ich habe einige sachen probiert doch irgendwie hat das bei mir net ganz so geklappt wie ich das hätte. von nun werde ich aber selber basteln und wenn ich darf hier und wieder mal den einen oder anderen link posten dass ihr mal guggn könnt was ich geschafft bzw. ncht geschafft habe.
ich werde wahrscheinlich am anfang einige tuts lesen und dann probieren aber ich finde das es ja keine chand ist wenn jeder mal klein anfängt.
an dieser stelle aber schon mal ein dankeschön für die hilfe bis hier hin. |
|
Nach oben |
|
|
Yada Mitglied
Angemeldet: 08.06.2004 Beiträge: 267
Interessen: zuviel
|
Verfasst am: 17.02.2006, 12:22 Titel:
|
|
|
|
|
Am Anfang kannst es auch mit IF-Anweisungen machen - und einer kleinen Funktion...
Code: | function content_include($file) {
$get_file_end = explode(".",$file);
$allow = array('php','htm','html','tmp');
if(file_exists($file) && in_array($get_file_end[1],$allow)) {
include($file);
} else {
include('common/error/404.php');
}
}
if($_GET['module']=="news") content_include("news.php");
elseif($_GET['module']=="forum") content_include("forum.php");
else content_include("error.php");
|
Kannst natürlich auch machen - und funktioniert 100% :> |
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
|