Archiv verlassen und diese Seite im Standarddesign anzeigen : Einfaches Newssystem
SilverVegeto 10-12-2006, 17:19 Hallo Leute,
hätte mal wieder eine Frage. Ich glaub ich hab schon das halbe Google und zick Websiten nach einem Tutorial (keinen Script) für ein einfaches Newssystem durchsucht.
Ich möchte eigentlich nicht sehr viel: Es soll News aus einer MySQL-Datenbank auslesen können und über meinen eigenen Adminbereich (Hab selber schon einen) bearbeitet / gelöscht werden können. Es muss nichtmal eine Kommentarfunktion haben.
Leider bin ich im Internet nicht fündig geworden, da es meist nur Scripts sind oder einen Adminpanal mitliefern.
Griecherus 10-12-2006, 17:24 Lies dir das (http://tut.php-q.net/newsscript.html) mal durch. In einem späteren Kapitel wird das News-System noch etwas ausgebaut (Login und Administration, glaube ich). Das sollte dir die prinzipielle Funktionsweise eines solchen Systems näher bringen.
SilverVegeto 10-12-2006, 17:58 Dankeschön hat wunderbar funktioniert.
Jetzt hab ich nur eine kleine Frage:
Ich habe auf meiner Index-Seite einen Wegweiser eingebaut, der wie folgt lautet:
<?php
switch($page) {
case "" : $ubs = ''; break;
case "00" : $ubs = ''; break;
case "01" : $ubs = '» Picture'; break;
case "02" : $ubs = '» Location'; break;
case "03" : $ubs = '» Kontakt'; break;
case "04" : $ubs = '» Events'; break;
case "06" : $ubs = '» Downloads'; break;
case "10" : $ubs = '» Control Panal - Login'; break;
}
echo $ubs;
?>
Es besteht allerdings ein Problem seitdem ich das Newssystem eingebunden habe, es erscheint immer auf der Newsseite (Startseite) folgende Fehlermeldung:
Standort: Startseite
Notice: Undefined variable: page in /srv/www/web1/html/..../home.php on line 140
Woran kann das liegen?
Na was steht denn in der Datei /srv/www/web1/html/..../home.php in Zeile 140? Und ein bisschen außenrum am besten auch noch damit man den eventuellen Zusammenhang sehen kann.
SilverVegeto 10-12-2006, 18:05 Axo, sry hab vergessen zu makieren welche Zeile 140 ist.
Und Included wird das was in folgenden Tutorial enthalten ist http://tut.php-q.net/newsscript.html#u3.
<td background="img/images_20.gif" class="wegweiser" valign="middle" align="left">
<br><b>Standort:</b> Startseite
<?php
switch($page) { # Zeile 140
case "" : $ubs = ''; break;
case "00" : $ubs = ''; break;
case "01" : $ubs = '» Picture'; break;
case "02" : $ubs = '» Location'; break;
case "03" : $ubs = '» Kontakt'; break;
case "04" : $ubs = '» Events'; break;
case "06" : $ubs = '» Downloads'; break;
case "10" : $ubs = '» Control Panal - Login'; break;
}
echo $ubs;
?></td>
<td>
Dann sieht es wohl so aus als hättest du $page vorher nicht deklariert oder zumindest nicht initialisiert. Zu deutsch: Es steht kein Wert drin oder die Variable existiert nicht.
Ne Fallunterscheiden bei einer Variable ohne Inhalt ist wie du dir sicher denken kannst recht schwer ;)
Wo wird denn $page definiert?
SilverVegeto 10-12-2006, 18:11 Auf der Startseite ist kein Wert enthalten, deswegen auch
case "" : $ubs = ''; break;
Was bisher auch immer funktioniert hat, bis ich das Newssystem eingebunden hatte.
Hier wird $page definiert, dieser Code befindet sich ebenfalls auf der Startseite:
<?php
switch($_GET['page']) {
case "00":
include("inc/startseite.php");
break;
case "01":
include("inc/picture.php");
break;
default:
include("inc/startseite.php");
}
?>
Wo wirdn da $page definiert?
Such mal nach "$page = irgendwas"... DAS ist 'ne Definition.
SilverVegeto 10-12-2006, 18:17 Das passiert sobald jemand auf einen Link klickt:
<a href="home.php?page=01" target="_top" class="Navi">• <b>P</b>icture</a>
Das Problem ist nur auf der Startseite klickt noch keiner auf einen Link.
Wie gesagt, vorher ging es. Das muss etwas mit dem Newssystem zutun haben.
Das ist nicht das Problem.
Das Problem ist: $_GET['page'] != $page
Du musst doch $page irgendwo sagen, dass es das gleiche sein soll wie $_GET['page'] ?!
Ansonsten könntest du natürlich sowas machen wie: <?php
if (empty($_GET['page'])) $_GET['page'] = 00;
?>
oder welchen Wert du eben als Standard möchtest.
Kann man allerdings beim switch als fall "default:" auch machen, jedoch muss die Variable $page dafür trotzdem erstmal definiert sein ;)
Frames sucken :D
SilverVegeto 10-12-2006, 18:25 Also ich hab das jetzt mal geändert:
<td background="img/images_20.gif" class="wegweiser" valign="middle" align="left">
<br><b>Standort:</b> Startseite
<?php
if (empty($_GET['page'])) $_GET['page'] = 00;
switch($page) {
case "" : $ubs = ''; break;
case "00" : $ubs = ''; break;
case "01" : $ubs = '» Picture'; break;
case "02" : $ubs = '» Location'; break;
case "03" : $ubs = '» Kontakt'; break;
case "04" : $ubs = '» Events'; break;
case "06" : $ubs = '» Downloads'; break;
case "10" : $ubs = '» Control Panal - Login'; break;
default: $ubs = '';
}
echo $ubs;
?></td>
<td>
Allerdings besteht der Fehler immernoch, mir ist zwar jetzt klar das $page erst ein Inhalt braucht - leider komm mit dieser Möglichkeit immer noch nicht weiter.
Du bist ja einer :rolleyes:
<td background="img/images_20.gif" class="wegweiser" valign="middle" align="left">
<br><b>Standort:</b> Startseite
<?php
$page = isset($_GET['page']) ? $_GET['page'] : "00";
switch($page) {
case "" : $ubs = ''; break;
case "00" : $ubs = ''; break;
case "01" : $ubs = '» Picture'; break;
case "02" : $ubs = '» Location'; break;
case "03" : $ubs = '» Kontakt'; break;
case "04" : $ubs = '» Events'; break;
case "06" : $ubs = '» Downloads'; break;
case "10" : $ubs = '» Control Panal - Login'; break;
default: $ubs = '';
}
echo $ubs;
?></td>
<td>
SilverVegeto 10-12-2006, 18:29 Danke!
|