include/require und ie

buddymaster

Mitglied
Ich habe ein großes Webprojekt. Dazu habe ich mal in einem PHP Buch gelesen, das es einfacher ist, neue HTML- Seiten per include/ require einzubinden (jeweils in eine neue Seite.
Dies habe ich dann auch getan. Bei Firefox funktioniert auch alles einwandfrei.

Aber der IE sagt mir, die aufgerufene Seite würde es nicht geben, d.h. Fehler 405! Ich weiß leider nicht wo dran es liegen könnte. Vielleicht könnte mir jemand weiterhelfen.

Vielen Dank im Vorraus schon mal!

Hier die Seite, die im IE nicht angezeigt wird:
PHP:
<?php
    require ('include/connect.inc.php');
    require ('include/login.inc.php');
    $titel = "Titel der Seite";
    require ('include/header.inc.php');
    require ('include/menu.inc.php');
    require ('include/funktionen.php');
?>
<h2>Titel</h2>
<span class="sp2">
<!-- Der Inhalt der Seite -->
<?php
    require ('include/footer.inc.php');
?>


Hier die connect.inc.php:
PHP:
<?php
$dbHost = "#########";
$dbUser = "#########";
$dbPass = "#########";
$dbName = "#########";

$connect = @mysql_connect($dbHost, $dbUser, $dbPass) or die("Konnte keine Verbindung zum Datenbankserver aufbauen!");
$selectDB = @mysql_select_db($dbName, $connect) or die("Konnte die Datenbank <b>$dbName</b> nicht ausw&auml;hlen!");

?>


Hier die login.inc.php
PHP:
<?php
session_start();

//Hier wird geprüft, ob der User sich eingeloggt hat, und somit Zutritt zu dieser Seite hat
if(!session_is_registered ('user')|| $_SESSION['user'] == "") {
	//Wenn dies nicht der Fall ist, wird er auf die Loginseite zurück geschickt
    header("location: "Hier steht der absolute Pfad"/formular.php");
	die;
}

//Automatischer Logout nach 10 min
$new_timestamp = time();
if ($new_timestamp > ($_SESSION['timestamp'] + 600)) {
    header("location:"Hier steht der absolute Pfad"/autologout.php");
	die;
}
else {
//neuer Timestamp wird in der Session- Timestamp gespeichert
    $_SESSION['timestamp'] = $new_timestamp;

//zusätzlich wird die LOGIN - Zeit in der Tabelle gespeichert
    @mysql_query("UPDATE users SET `logintime` = '".$new_timestamp."' WHERE user = '".$_SESSION['user']."'") or die('Update der LOGINZEIT ist fehlgeschlagen!');
}
?>


Hier die header.inc.php
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
          "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta>Hier stehen die verschiedenen Meta-Angaben</meta>
<title>www.meineseite.de|<?php echo $titel ?></title>

<link rel="stylesheet" href="......css" type="text/css" />
<!--[if lte IE 6]>
<link rel="stylesheet" media="all" type="text/css" href="http://www.meineseite.de/css/ie_.......css" />
<![endif]-->
</head>

<body>
<div id="all">
<!--<div id="li"></div> -->
<div id="mitte">
<!-- Anfang Mittelteil -->
<div  id="leistetop" >
<span class="leistetop"  id="Clock" style="color: white;"></span> <!-- Uhrzeit wird über css aufgerufen -->
</div>



Menu, Funktionen und Footer sind ähnlich aufgebaut. Vielleicht liegt es an diesem Code. Wenn nötig poste ich den auch noch.
 
Tut mir leid, kann mit include_path leider nichts anfangen. Wo muss ich den setzen?

PS: Warum funktioniert mein Script in Firefox, aber nicht im IE?
 
da ....
PHP:
<?php
// hier einfügen wie im Link oben beschrieben bzw ganz am anfang der index.php
    require ('include/connect.inc.php');
    require ('include/login.inc.php');
    $titel = "Titel der Seite";
    require ('include/header.inc.php'); 
// usw..
und hier
HTML:
<title>www.meineseite.de|<?php echo $titel ?></title>
fehlt ein ;
HTML:
<title>www.meineseite.de|<?php echo $titel; ?></title>

mfg Spikaner
 
Zuletzt bearbeitet:
Was ich mir vorstellen kann, ist, dass der Internet Explorer den Session-Cookie nicht akzeptiert, worauf die Weiterleitung gesendet wird, die vermutlich ungültig ist.
 
Ein Teil des Problems habe ich schon mal ausgemacht. Der IE unterstützt im header keine Weiterleitung übder einen absoluten Pfad so wie: /var/ user/html/seite.php sondern benötigt immer das http protokoll oder einen relativen Pfad zum Standort der seite (../../seite.php) --> Deswegen hat er mir gesagt, die Seite existiert nicht (Fehler 405)

Jetzt weiß ich nur noch nicht warum der IE meine SESSIONs nicht akzeptiert und für die nächsten Seiten speichert?
 
Der IE unterstützt im header keine Weiterleitung übder einen absoluten Pfad so wie: /var/ user/html/seite.php sondern benötigt immer das http protokoll oder einen relativen Pfad zum Standort der seite (../../seite.php) […]
Wenn der genannte Pfad ein Dateisystempfad ist, kann der Browser damit sowieso nichts anfangen. Daneben wurde für das Location-Header-Feld als gültiger Wert nur eine absolute URL spezifiziert.
 
Zurück