ERLEDIGT
NEIN
NEIN
ANTWORTEN
11
11
ZUGRIFFE
470
470
EMPFEHLEN
-
02.06.09 14:13 #1
- Registriert seit
- Apr 2007
- Beiträge
- 13
Hallo alle zusammen,
ich habe folgendes Problem. Ich habe mich erst seit ein paar Tagen mit php auseinandergesetzt.
Nun habe ich soweit hinbekommen, das ich mein Template habe wo der Inhalt von anderen Seiten "Included" wird, dies funktioniert auch soweit und sieht wie folgt aus:
Problem Nummer 1: Ich habe in der news.php ,unten, per include noch einen Counter eingefügt:PHP-Code:
switch (isset($_GET['page']) ? $_GET['page'] : '') {
case "news":
include ("inc/news.php");
break;
case "history":
include ("inc/history.php");
break;
case "live":
include ("inc/live.php");
break;
case "live1":
include ("inc/live1.php");
break;
case "live2":
include ("inc/live2.php");
break;
case "live3":
include ("inc/live3.php");
break;
case "fanclub":
include ("inc/fanclub.php");
break;
case "gbook":
include ("inc/gbook/index.php");
break;
case "link":
include ("inc/link.php");
break;
case "contact":
include ("inc/contact.php");
break;
default:
case "news":
include ("inc/news.php");
break;
}
dieser wird aber auf der Homepage nicht angezeigt.PHP-Code:<?php @include_once("counter/counter.php"); ?>
hompage:http://www.beagnd.gnd-music.de/xxgndxx
so sollte es aussehen: http://www.beagnd.gnd-music.de/gnd
___________________________________________________
Problem Nummer 2: Youtube Videos werden nicht angezeigt.
homepage: http://www.beagnd.gnd-music.de/xxgnd...php?page=video
so sollte es aussehen:http://www.beagnd.gnd-music.de/gnd/video.html
___________________________________________________
Problem Nummer 3: Ich will ein Gästebuch wie den Counter "includen".
Dabei tritt folgender Fehler auf:
Warning: filesize() [function.filesize]: stat failed for templates/read.php in /var/www/web66/html/beagnd/xxgndxx/inc/gbook/classes/class.Template.php on line 72
homepage:http://www.beagnd.gnd-music.de/xxgnd...php?page=gbook
so sollte es aussehen:http://www.beagnd.gnd-music.de/gnd/g-book.php
wenn ich jetzt den fad bis zur Indexdatei des Gästebuchs angebe:
http://www.beagnd.gnd-music.de/xxgndxx/inc/gbook/
erscheint der Fehler nicht.
der Code zu dem oben erwähnten Fehler sieht wie Folgt aus:
PHP-Code:# read_file()
#
# Einlesen einer Vorlagendatei und {INCLUDE}-Anweisungen ggf. verarbeiten
# (Text wird an bereits vorhandenen Text angehaengt)
#
# Parameter: 1. Datei zum Einlesen
# 2. Status-Code (Boolean):
# true => {INCLUDE}-Anweisungen nicht verarbeiten
# false => {INCLUDE}-Anweisungen verarbeiten (Standard)
#
# Rueckgabe: -nichts- (Template-Objekt wird modifiziert)
function read_file($file,$not_include=0)
{
$this->file = $file;
if(filesize($file) > 0)
{
$fp = fopen($file,'r');
if(!$fp) die;
$content = fread($fp,filesize($file));
fclose($fp);
}
else $content = '';
$this->add_text($content);
if(!$not_include) $this->parse_includes();
}
genauer gesagt ist das die Zeile 72 :
Wenn ich die oben erwähnten 3 Teile in eine Kopie des Templates packe, dann funktionieren sie, jedoch wenn ich sie die Template-Datei "Include" treten die aufgeführten Fehler auf. Ich Hoffe ihr könnt mir weiterhelfenPHP-Code:if(filesize($file) > 0)

Im anhang habe ich auch nochmal den Gesamten ordner mit allen dateien.
-
02.06.09 20:27 #2
- Registriert seit
- May 2006
- Ort
- There is no place like 127.0.0.1
- Beiträge
- 3.521
Hi,
erste Gegenfrage: hast du display_errors auf 1 sowie error_reporting auf E_ALL?
Zu Problem 1:
Entferne mal das '@' vor dem Include und teile mit, ob ein Fehler angezeigt wird (file does not exist oder etwas in der Art).
Zu Problem 2:
Versuche erstmal, deinen HTML-Code zu reparieren. Der strotzt nur so von Fehlern. Möglicherweise ist eine Ursache des Problems dort zu finden.
Zu Problem 3:
Siehe Problem 1, entferne das '@' vor dem include und schau, ob ein Fehler ausgegeben wird.Grüße
--
Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)
-
02.06.09 22:13 #3
- Registriert seit
- Apr 2007
- Beiträge
- 13
zu deiner Gegenfrage
Die beiden Sachen finde ich in der php.ini oder? Und die php.ini ist auf dem Server?hast du display_errors auf 1 sowie error_reporting auf E_ALL?
Wenn ich aber nur einen Ordner auf dem Server habe, für meine Page, dann müsste ich dafür den Inhaber des Servers nach der php.ini Fragen oder?
Zu Problem 1, 3:
Ich habe das "@" mal entfernt, dies hat keinerlei Änderungen gebracht. Werder das es funktioniert, noch das eine Fehlermeldung erscheint.
Zu Problem 2:
Ich weiß jetzt nicht welchen fehlerhaften HTML code du meintes. Aber ich habe den HTML code der video.php strukturiert und überflüssige teile entfehrnt. Und jetzt funktioniert das schon einmal.
Hompage: http://www.beagnd.gnd-music.de/xxgndxx
/mindex.php?page=video
auf den verdacht hin, das der Fehlerhafte HTML Code die Ursach für PRoblem 1,3 sein könnten habe ich die ganze sache stark vereinfacht:
der link dazu : http://www.beagnd.gnd-music.de/test/index.php?page=newsPHP-Code:<html>
<head>
<title></title>
</head>
<body>
<table width="70%" border="0">
<tr>
<td width="20%"><li><a href="index.php?page=news">News</a></li>
<li><a href="index.php?page=video">Video</a></li>
<li><a href="index.php?page=gbook">gbook</a></li>
</td>
<td width="80%"><?php
switch (isset($_GET['page']) ? $_GET['page'] : '') {
case "news":
include ("inc/news.php");
break;
case "history":
include ("inc/history.php");
break;
case "live":
include ("inc/live.php");
break;
case "live1":
include ("inc/live1.php");
break;
case "live2":
include ("inc/live2.php");
break;
case "live3":
include ("inc/live3.php");
break;
case "video":
include ("media/video.php");
break;
case "fanclub":
include ("inc/fanclub.php");
break;
case "gbook":
include ("inc/gbook.php");
break;
case "link":
include ("inc/link.php");
break;
case "contact":
include ("inc/contact.php");
break;
default:
case "news":
include ("inc/news.php");
break;
}
?> </td>
</tr>
</table>
</body>
</html>
jedoch bestehen die Beiden Probleme weiterhin.
Im Anhang ist auch noch mal die vereinfachte Version.
-
02.06.09 22:58 #4
- Registriert seit
- May 2006
- Ort
- There is no place like 127.0.0.1
- Beiträge
- 3.521
Füge mal das an den Anfang der Datei:
PHP-Code:error_reporting( E_ALL );
ini_set('display_errors', 1);
Grüße
--
Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)
-
02.06.09 23:11 #5
- Registriert seit
- Apr 2007
- Beiträge
- 13
Das hat keinerlei Änderung berwirkt.
Ich habe dies jetzt an den Anfang der index.php eingefügt, war doch richtig oder?
-
02.06.09 23:20 #6
- Registriert seit
- May 2006
- Ort
- There is no place like 127.0.0.1
- Beiträge
- 3.521
Ok, machen wir das Schritt für Schritt:
Problem 3:
Hast du schon untersucht, welcher Wert als Parameter an diese Methode read_file() übergeben wird? Innerhalb der Methode mal ein var_dump() auf $file machen und Ausgabe untersuchen/posten.Grüße
--
Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)
-
04.06.09 16:29 #7
- Registriert seit
- Apr 2007
- Beiträge
- 13
Also zu deiner ersten Frage, sry aber ich habe keine Ahnung wie ich das herausfinde.
als ich var_dump() auf $file angewendet habe.
wenn das so richitg ist, kam dieser Fehler zu dem anderen dazu: string(18) "templates/read.php"PHP-Code:function read_file($file,$not_include=0)
{
$this->file = $file;
var_dump($file);
-
07.06.09 21:35 #8
- Registriert seit
- May 2006
- Ort
- There is no place like 127.0.0.1
- Beiträge
- 3.521
Hi,
dann fehlt also in dem Ordner "templates" die Datei "read.php". Wo auch immer die sein soll, sie ist anscheinend nicht da, wo sie erwartet wird. Passen evtl noch irgendwelche Pfad-Einstellungen in der Configuration deines CMS nicht?Grüße
--
Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)
-
12.06.09 14:10 #9
- Registriert seit
- Apr 2007
- Beiträge
- 13
also die read.php ist da und die pfadangaben sind auch alle richtig. Ich finde es merkwürdig, dasalles funktioniert, wenn ich die index.php des g-books direkt aufrufe, jedoch nicht, wenn ich sie über ein include aufrufe
Gibt es noch ne gute andere Möglichkeit die andere php dateien zu includieren, außer die die ich verwendet habe?
-
Hi,
zeig doch mal die Ordnerstruktur. counter/counter.php liegt das innheralb von inc/?mfg
--------------------------------------------------------------------------------
Kein Support via PN, Email, ICQ, Brieftaube oder Flaschenpost!
Besucht den tutorials.de-Chat | Anleitung
RTFM - PHP-Handbuch - MySql Handbuch
--------------------------------------------------------------------------------
Surftipp...Der Postillon
--------------------------------------------------------------------------------
Signatur v2.2
-
12.06.09 18:04 #11
- Registriert seit
- Apr 2007
- Beiträge
- 13
jap liegt er:
/test
-index.php
-/inc
--news.php
--guestbook.php
--/counter
---counter.php
--/gbook
---index.php
-
12.06.09 19:57 #12
- Registriert seit
- May 2006
- Ort
- There is no place like 127.0.0.1
- Beiträge
- 3.521
Anscheinend nicht, sonst würde kein Fehler auftauchen. Das es funktioniert, wenn du /xxgndxx/inc/gbook aufrufst, zeigt ja, das die Pfade nicht stimmen können. Die index.php liegt nun einmal in einem anderen Ordner, nämlich /xxgndxx. Man kann hier nur versuchen, mal den Pfad von read_file.php umzubiegen. Dazu müsste man wissen, ob und in welchen möglichen Ordnern das Verzeichnis templates liegt. Evtl sollte man, wo diese Datei includiert wird, mal mit einem absoluten Pfad arbeiten. Dann wird das sehr wahrscheinlich auch funktionieren.
Grüße
--
Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)
Ähnliche Themen
-
Template/Kein Template, unterschiedliche Javascript-Verarbeitung
Von Caralynn im Forum Javascript & AjaxAntworten: 0Letzter Beitrag: 19.01.08, 15:21 -
Template System & include Befehl
Von schleckerbeck im Forum PHPAntworten: 8Letzter Beitrag: 08.11.07, 19:58 -
Html Template zu Flash Template konvertieren
Von ExNoir im Forum Flash PlattformAntworten: 2Letzter Beitrag: 30.08.05, 17:53 -
include / Template Problem
Von xtoph im Forum PHPAntworten: 11Letzter Beitrag: 13.10.04, 11:33 -
include + template
Von pogo im Forum HTML & XHTMLAntworten: 2Letzter Beitrag: 02.10.01, 15:54





Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren