Social Media
Foren
Start probleme
Start probleme
Hallo, da
bin ich wieder.
Ich hatte schon
im vergangenen Jahr mit diesem CMS Tutorial mein Glück versucht.
Da schien es mir damals ratsam erstmal meine OOP Kenntnisse zu erweitern.
Nun bin ich kein Profi Programmierer aber auch kein ahnungsloser, doch habe ich schon im Kapitel 7 so
meine Probleme.
Denn alles was da zum Test erscheinen soll bleibt verborgen, selbst
einfache Echo “Hallo Welt“ ausgaben zum prüfen der include Verbindung
bleiben verschollen.
Nun kann es sein das ihr die einfache Dinge voraussetzt, ein HTML
Grundgerüst gibt es erst ab Kapitel 12. Eine index.php kommt auch erst dann.
Ist das der Fehler oder muss es auch ohne diese Angaben laufen.
Grüße Cedric
bin ich wieder.
Ich hatte schon
im vergangenen Jahr mit diesem CMS Tutorial mein Glück versucht.
Da schien es mir damals ratsam erstmal meine OOP Kenntnisse zu erweitern.
Nun bin ich kein Profi Programmierer aber auch kein ahnungsloser, doch habe ich schon im Kapitel 7 so
meine Probleme.
Denn alles was da zum Test erscheinen soll bleibt verborgen, selbst
einfache Echo “Hallo Welt“ ausgaben zum prüfen der include Verbindung
bleiben verschollen.
Nun kann es sein das ihr die einfache Dinge voraussetzt, ein HTML
Grundgerüst gibt es erst ab Kapitel 12. Eine index.php kommt auch erst dann.
Ist das der Fehler oder muss es auch ohne diese Angaben laufen.
Grüße Cedric
Oh Sorry, das war dann doch nur ein Schreibfehler, leider an
einer Stelle wo es nur noch peinlich ist.
Nun das ist auch der Grund warum ich dort nicht gesucht
habe.
Doch gleich das nächste Problem.
Kapitel 8 und 9 Content auf die Seite bringen.
in der index.php steht dieses
include("system/filterfilename.php");
// include("content/articles/".$_GET['include']);
include(filterfilename("content/articles/".$_GET['include']));
und in der filterfilename.php steht dieses
Das ganze fürt dann zu dieser Fehlermeldung.
Warning: include(content/articles/errors/404.php): failed to open
stream: No such file or directory in
/home/xxxxx/www/xxx/cms/index.php on line 8
Warning: include(): Failed opening 'content/articles/errors/404.php' for
inclusion (include_path='.:/usr/share/php:/usr/share/pear') in
/home/xxxxx/www/xxx/cms/index.php on line 8
was muss ich hier ändern?
die Ordner content/articles und als Datei testseite.php
Grüsse Cedric
einer Stelle wo es nur noch peinlich ist.
Nun das ist auch der Grund warum ich dort nicht gesucht
habe.
Doch gleich das nächste Problem.
Kapitel 8 und 9 Content auf die Seite bringen.
in der index.php steht dieses
include("system/filterfilename.php");
// include("content/articles/".$_GET['include']);
include(filterfilename("content/articles/".$_GET['include']));
und in der filterfilename.php steht dieses
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
function filterfilename($filename){
$filename = strtolower($filename);
$filename = preg_replace("/[^a-z0-9\-\/]/i","",$filename);
if($filename[0] == "/"){
$filename = substr($filename,1);
}
$filename .= ".php";
if(!file_exists($filename)){
$filename = "content/articles/errors/404.php";
}
return $filename;
}
|
Das ganze fürt dann zu dieser Fehlermeldung.
Warning: include(content/articles/errors/404.php): failed to open
stream: No such file or directory in
/home/xxxxx/www/xxx/cms/index.php on line 8
Warning: include(): Failed opening 'content/articles/errors/404.php' for
inclusion (include_path='.:/usr/share/php:/usr/share/pear') in
/home/xxxxx/www/xxx/cms/index.php on line 8
was muss ich hier ändern?
die Ordner content/articles und als Datei testseite.php
Grüsse Cedric
Da ich ja schon einmal mit diesen Tut. begonnen habe,
habe ich mir mal die alten Blogs angesehen und im Kapitel 12 in den Blogs
fragt Stefan Wienströer ob es den eine content/articles/errors/404.php gibt. Und das ist Nein.
Wenn ich nun einen Ordner “errors“ und eine Datei “404.php“ anlege dann verschwinden auch die Warnungen.
Grüsse
Cedric
habe ich mir mal die alten Blogs angesehen und im Kapitel 12 in den Blogs
fragt Stefan Wienströer ob es den eine content/articles/errors/404.php gibt. Und das ist Nein.
Wenn ich nun einen Ordner “errors“ und eine Datei “404.php“ anlege dann verschwinden auch die Warnungen.
Grüsse
Cedric
Nun ich bin jetzt im Kapitel 19. Seiteneinstellungen in der Klasse Page.
Und in der http/cms/index.php
Da sehe ich bis jetzt nur diese drei Notice Meldungen.
Notice: Undefined index: include in /home/xxx/www/xxx/cms/index.php on line 11
Notice: Undefined variable: currentpage in/home/xx/www/xx/cms/system/sys.php on line 23
Notice: Trying to get property of non-object in /home/xx/www/xx/cms/system/sys.php on line 23 Notice: Undefined
index: include in /home/xx/www/xx/cms/system/sys.php on line 11
Und wenn ich cms/index.php?include=testseite eingebe erhalte ich die Ausgabe Testseite aus der Datei testseite.php,
ausgaben aus der DB habe ich nicht.
grüsse Cedric
Und in der http/cms/index.php
Da sehe ich bis jetzt nur diese drei Notice Meldungen.
Notice: Undefined index: include in /home/xxx/www/xxx/cms/index.php on line 11
Notice: Undefined variable: currentpage in/home/xx/www/xx/cms/system/sys.php on line 23
Notice: Trying to get property of non-object in /home/xx/www/xx/cms/system/sys.php on line 23 Notice: Undefined
index: include in /home/xx/www/xx/cms/system/sys.php on line 11
Und wenn ich cms/index.php?include=testseite eingebe erhalte ich die Ausgabe Testseite aus der Datei testseite.php,
ausgaben aus der DB habe ich nicht.
grüsse Cedric
|
Wenn ich mich noch recht erinnere wurde die sys in der index.php im root eingebunden. Bei einem expliziten Aufruf der index.php im default Ordner der skins greift ja der Aufruf nicht und PHP weiß nicht was das für eine Funktion ist.
Auch in der derzeitigen Version werden die system-Dateien in der index.php im root des Webservers eingebunden. Allerdings durch die autoload.php welche dann die einzelnen Komponenten lädt.
Ich hoffe ich konnte dir ein wenig behilflich sein
MfG
Daniel von den CL-Entwicklern
Auch in der derzeitigen Version werden die system-Dateien in der index.php im root des Webservers eingebunden. Allerdings durch die autoload.php welche dann die einzelnen Komponenten lädt.
Ich hoffe ich konnte dir ein wenig behilflich sein
MfG
Daniel von den CL-Entwicklern
Nun, ich habe das Tut. noch einmal durchlaufen und komme
bis Kapitel 15 ohne Fehlermeldung. Ab Kapitel 16 stimmt was nicht.
Ich erhalte in Kapitel 15 noch eine Ausgabe
include(SkinController::getCurrentSkinPath()."/test.php");
gibt Test erfolgreich zurück skins/defult/test.php
ab Kapitel 16 habe ich dann zwei Fehlermeldungen und keine Ausgabe.
Notice:Undefined index: include in /home/xxx/www/xxx/cms/index.php on line 11
line 11 ist hier die Zeile 6
Script in der index.php
Notice:Undefined index: include in /home/xxx/www/xxx/cms/system/sys.php on line 11
line 11 ist hier die Zeile 6
Script in der system/sys.php
Script in der system/skins/default/index.php
Leider erhalte ich bei diesem Link ein Error 404 – Not found
http://cms.stevieswebsite.de/testseite.htm
ist es möglich diesen Link wieder zu beleben.
oder könnt ihr mir sagen was ich jetzt als Ausgabe sehen müsste.
Danke Cedric
bis Kapitel 15 ohne Fehlermeldung. Ab Kapitel 16 stimmt was nicht.
Ich erhalte in Kapitel 15 noch eine Ausgabe
include(SkinController::getCurrentSkinPath()."/test.php");
gibt Test erfolgreich zurück skins/defult/test.php
ab Kapitel 16 habe ich dann zwei Fehlermeldungen und keine Ausgabe.
Notice:Undefined index: include in /home/xxx/www/xxx/cms/index.php on line 11
line 11 ist hier die Zeile 6
Script in der index.php
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 |
<?PHP
include("system/dbconnect.php");
include("system/settings.php");
include("system/classes/skincontroller.php");
include("system/filterfilename.php");
include(filterfilename("content/articles/".$_GET['include']));
include("system/sys.php");
include(SkinController::getCurrentSkinPath()."/index.php");
?>
|
Notice:Undefined index: include in /home/xxx/www/xxx/cms/system/sys.php on line 11
line 11 ist hier die Zeile 6
Script in der system/sys.php
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 |
<?php
class sys
{
function includeContent()
{
include(filterfilename("../content/articles/".$_GET['include']));
}
}
?>
|
Script in der system/skins/default/index.php
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de"> <head> </head> <body> <?PHP sys::includeContent(); ?> </body> </html> |
Leider erhalte ich bei diesem Link ein Error 404 – Not found
http://cms.stevieswebsite.de/testseite.htm
ist es möglich diesen Link wieder zu beleben.
oder könnt ihr mir sagen was ich jetzt als Ausgabe sehen müsste.
Danke Cedric
So nun habe ich endlich meinen Fehler gefunden, mann sollte die Skripte die hier geschrieben stehen auch richtig lesen.
Ich habe immer http://cms/index.php?include=testseite.html oder die Endung .php geschrieben.
Das bringt natürlich einen Fehler wenn die Funktion filterfilename den Punkt löscht und ein .php anhängt.
Dann kommt ein http://cmsindex.php?include=testseitehtml.php raus und das kann’s nicht sein.
Doch gleich zum nächsten Problem
Kapitel 31. CSS-Stylesheet auslagern Du schreibst
Jetzt kommen alle statischen CSS-Einstellungen in den
StyleSheet style.css im Skin-Verzeichnis. Hier wurde auch der Path zum
Hintergrundbild geändert:
Dieses Skin-Verzeichnis habe ich nicht. Ich finde auch in den Downloads keinen Hinweis auf ein solches Verzeichnis.
Wo bitte muss ich zu diesem Zeitpunkt das style.css speichern?
Danke Cedric
Ich habe immer http://cms/index.php?include=testseite.html oder die Endung .php geschrieben.
Das bringt natürlich einen Fehler wenn die Funktion filterfilename den Punkt löscht und ein .php anhängt.
Dann kommt ein http://cmsindex.php?include=testseitehtml.php raus und das kann’s nicht sein.
Doch gleich zum nächsten Problem
Kapitel 31. CSS-Stylesheet auslagern Du schreibst
Jetzt kommen alle statischen CSS-Einstellungen in den
StyleSheet style.css im Skin-Verzeichnis. Hier wurde auch der Path zum
Hintergrundbild geändert:
Dieses Skin-Verzeichnis habe ich nicht. Ich finde auch in den Downloads keinen Hinweis auf ein solches Verzeichnis.
Wo bitte muss ich zu diesem Zeitpunkt das style.css speichern?
Danke Cedric
Hier habe ich mir einen Fehler eingebaut.
Kapitel 51 bis 54
Bei Menü bearbeiten und Einträge Bearbeiten bekomme ich diese Fehlermeldung.
Fatal error: Class 'Menu' not found in /home/manfred/www/projekte/cms/admin/includes/menu-edit.php on line 55
menu.php
menu-edit.php
Hast Du einen Tipp was ich ändern müsste
Grüsse Cedric
Kapitel 51 bis 54
Bei Menü bearbeiten und Einträge Bearbeiten bekomme ich diese Fehlermeldung.
Fatal error: Class 'Menu' not found in /home/manfred/www/projekte/cms/admin/includes/menu-edit.php on line 55
menu.php
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
<?php
//echo "system_classes_Menu.php<br/>";
class Menu
{
function display($id, $globalstart,$globalend, $elementstart,$elementend,$class)
{
global $dbpraefix;
$res = mysql_query("SELECT title,href FROM ".$dbpraefix."menu WHERE menuID = '".$id."' ORDER BY id");
echo $globalstart;
$i = 1;
while($row = mysql_fetch_row($res))
{
echo $elementstart."<a href="".$row[1]."" title="".$row[0]."" class="".$class." menue-".$id."-".$i."">".$row[0]."</a>".$elementend;
$i++;
}
echo $globalend;
}
function addEntry($menu,$title,$href)
{
global $dbpraefix;
$res = mysql_query("SELECT MAX(id) FROM ".$dbpraefix."menu WHERE menuID = '".$menu."'");
$row = mysql_fetch_row($res);
$id = $row[0] + 1;
return mysql_query("INSERT INTO ".$dbpraefix."menu (id,menuID,title,href)
VALUES('".$id."','".$menu."', '".$title."','".$href."')");
}
function editEntry($menu,$id,$title,$href)
{
global $dbpraefix;
return mysql_query("UPDATE ".$dbpraefix."menu SET href = '".$href."', title = '".$title."'
WHERE id = '".$id."' AND menuID = '".$menu."'");
}
} // End class Menu
?>
|
menu-edit.php
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
<?PHP
if($_POST['add'])
{
if(trim($_POST['newtitle']) != "")
{
if(trim($_POST['newurl']) != "")
{
$res = Menu::addEntry(mysql_real_escape_string($_GET['menu']),
mysql_real_escape_string($_POST['newtitle']),
mysql_real_escape_string($_POST['newurl']));
if($res)
{
echo "<p>Eintrag hinzugefügt!</p>";
}
else{
echo "<p>Eintrag nicht hinzugefügt!</p>";
}
}
else{
echo "<p>Bitte geben Sie ein Link-Ziel ein</p>";
}
}
else{
echo "<p>Bitte geben Sie einen Link-Titel ein</p>";
}
}
else if($_POST['save']){
foreach($_POST as $param=>$value){
if(strlen($param) >= 6){
if(substr($param,-5,5) == "_href"){
$entries[substr($param,0,-5)][href] = $value;
}
else if(strlen($param) >= 7 && substr($param,-6,6) == "_title"){
$entries[substr($param,0,-6)][title] = $value;
}
}
}
foreach($entries as $id=>$params)
{
Menu::editEntry(mysql_real_escape_string($_GET['menu']),
mysql_real_escape_string($id),
mysql_real_escape_string($params[title]),
mysql_real_escape_string($params[href]));
}
}
?>
<?PHP
print_r($_POST);
?>
<h1>Menü bearbeiten</h1>
<form action="index.php?page=menu-edit&menu=<?PHP echo $_GET['menu']; ?>" method="POST">
<h2>Einträge Bearbeiten</h2>
<?PHP
Menu::displayEditable(mysql_real_escape_string($_GET['menu']));
?>
<input name="save" type="submit" value="Speichern"/>
<h2>Neuen Eintrag hinzufügen</h2>
<input name="newtitle" />
<input name="newurl" value="http://" />
<input name="add" type="submit" value="Hinzufügen"/>
</form>
|
Hast Du einen Tipp was ich ändern müsste
Grüsse Cedric