Bond2k
2005-10-21, 13:06:41
Hallo zusammen
Ich hab folgendes Problem. Ich hab eine Newsseite gemacht. Dazu habe ich einen Adminbereich gemacht, bei dem man News hinzufügen kann.
Die Seite habe ich mittels divs unterteilt. Oben Banner, links Menü und rechts Inhalt. Der Inhalt wird mittels einer Get-Abfrage "generiert". Dies funktioniert auch. Leider funktioniert aber das hinzufügen neuer News nicht. Ich vermute, dass es mit der Abfrage im Inhalt zusammenhängt. Da, wenn ich die Seite für das Hinzufügen nicht in dem div lade, sondern eigenständig, funktionierts.
Gibt es eine Möglichkeit das ganze mit divs zu lösen?
Code: index.php
<?php
include "config.php"; // die Konfigurationsdatei einfügen
echo "<html>\n";
echo "<head>\n";
echo " <title>Meine Seite</title>\n";
echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"page.css\" />\n";
echo " <meta http-equiv=\"Content-Type\" \n
content=\"text/html; charset=ISO-8859-1\" />\n";
echo "</head>\n";
echo "<body>\n";
echo " <div id=\"banner\">\n"; // banner
include "banner.php";
echo " </div>\n";
echo " <div id=\"links\">\n"; // linkes Menu
include "menu_admin.php";
echo " </div>\n";
echo " <div id=\"mitte\">\n"; // In der Mitte der Inhalt
include "inhalt.php";
echo " </div>\n";
echo "</body>\n";
echo "</html>\n";
?>
Code: config.php
<?php
$dateien = array(); // ein Leeres Array erzeugen
$dateien['editnews'] = "editnews.php";
$dateien['editgb'] = "editgb.php";
$dateien['newnews'] = "newnews.php";
?>
Code: menu_admin.php
<ol>
<li><a href="index.php?section=editnews">News anschauen</a></li>
<li><a href="index.php?section=newnews">News hinzufügen</a></li>
<li><a href="index.php?section=editgb">Gästebuch bearbeiten</a></li>
</ol>
Code: inhalt.php
<?php
if(isset($_GET['section']) AND isset($dateien[$_GET['section']])) {
include $dateien[$_GET['section']];
} else {
include $dateien['editnews'];
}
?>
Code: newnews.php
<?php
$id = "";
$pw = "";
$host = "";
$database = "News";
$table = "News";
$conn_id = mysql_connect($host,$id,$pw) OR die("Konnte DB-Server nicht erreichen");;
mysql_select_db($database,$conn_id);
if ($submit){
$DatenOK = 1;
$error = "";
if ($titel == ""){
$DatenOK = 0;
$error .= "Es muß ein Titel eingegeben werden<br>\n";
}
if ($inhalt == ""){
$DatenOK = 0;
$error .= "Ein Eintrag ohne Inhalt mach nicht viel";
$error .= " Sinn, oder?<br>\n";
}
if ($autor == ""){
$DatenOK = 0;
$error .= "Wer hats geschriben??";
}
if ($DatenOK){
mysql_query(sprintf('insert into News
(Titel,Inhalt,Datum,Autor)
VALUES ("%s","%s",now(),"%s")',
addslashes($titel),
addslashes($inhalt),
addslashes($datum),
addslashes($autor)));
echo mysql_error();
header('Location: http://'.$HTTP_HOST.
substr($PHP_SELF,0,strrpos($PHP_SELF,'/')).'/');
die();
}
}
?>
<html>
<body>
<?php
if ($submit && !$DatenOK){
echo "<h2>Fehler:</h2>\n";
echo $error;
}
?>
<form action="<?php echo $PHP_SELF; ?>" method="POST">
Titel:<br>
<input type="text" name="titel" size="30" maxlength="200"
value="<?php echo $titel; ?>">
<br>
Inhalt:<br>
<textarea rows="10" cols="50" wrap="virtual" name="inhalt">
<?php echo $inhalt; ?>
</textarea>
<br>
Autor:<br>
<input type="text" name="autor" size="30" maxlength="200"
value="<?php echo $autor; ?>">
<br>
<input type="submit" name="submit" value="Absenden">
</body>
</html>
Ich hab folgendes Problem. Ich hab eine Newsseite gemacht. Dazu habe ich einen Adminbereich gemacht, bei dem man News hinzufügen kann.
Die Seite habe ich mittels divs unterteilt. Oben Banner, links Menü und rechts Inhalt. Der Inhalt wird mittels einer Get-Abfrage "generiert". Dies funktioniert auch. Leider funktioniert aber das hinzufügen neuer News nicht. Ich vermute, dass es mit der Abfrage im Inhalt zusammenhängt. Da, wenn ich die Seite für das Hinzufügen nicht in dem div lade, sondern eigenständig, funktionierts.
Gibt es eine Möglichkeit das ganze mit divs zu lösen?
Code: index.php
<?php
include "config.php"; // die Konfigurationsdatei einfügen
echo "<html>\n";
echo "<head>\n";
echo " <title>Meine Seite</title>\n";
echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"page.css\" />\n";
echo " <meta http-equiv=\"Content-Type\" \n
content=\"text/html; charset=ISO-8859-1\" />\n";
echo "</head>\n";
echo "<body>\n";
echo " <div id=\"banner\">\n"; // banner
include "banner.php";
echo " </div>\n";
echo " <div id=\"links\">\n"; // linkes Menu
include "menu_admin.php";
echo " </div>\n";
echo " <div id=\"mitte\">\n"; // In der Mitte der Inhalt
include "inhalt.php";
echo " </div>\n";
echo "</body>\n";
echo "</html>\n";
?>
Code: config.php
<?php
$dateien = array(); // ein Leeres Array erzeugen
$dateien['editnews'] = "editnews.php";
$dateien['editgb'] = "editgb.php";
$dateien['newnews'] = "newnews.php";
?>
Code: menu_admin.php
<ol>
<li><a href="index.php?section=editnews">News anschauen</a></li>
<li><a href="index.php?section=newnews">News hinzufügen</a></li>
<li><a href="index.php?section=editgb">Gästebuch bearbeiten</a></li>
</ol>
Code: inhalt.php
<?php
if(isset($_GET['section']) AND isset($dateien[$_GET['section']])) {
include $dateien[$_GET['section']];
} else {
include $dateien['editnews'];
}
?>
Code: newnews.php
<?php
$id = "";
$pw = "";
$host = "";
$database = "News";
$table = "News";
$conn_id = mysql_connect($host,$id,$pw) OR die("Konnte DB-Server nicht erreichen");;
mysql_select_db($database,$conn_id);
if ($submit){
$DatenOK = 1;
$error = "";
if ($titel == ""){
$DatenOK = 0;
$error .= "Es muß ein Titel eingegeben werden<br>\n";
}
if ($inhalt == ""){
$DatenOK = 0;
$error .= "Ein Eintrag ohne Inhalt mach nicht viel";
$error .= " Sinn, oder?<br>\n";
}
if ($autor == ""){
$DatenOK = 0;
$error .= "Wer hats geschriben??";
}
if ($DatenOK){
mysql_query(sprintf('insert into News
(Titel,Inhalt,Datum,Autor)
VALUES ("%s","%s",now(),"%s")',
addslashes($titel),
addslashes($inhalt),
addslashes($datum),
addslashes($autor)));
echo mysql_error();
header('Location: http://'.$HTTP_HOST.
substr($PHP_SELF,0,strrpos($PHP_SELF,'/')).'/');
die();
}
}
?>
<html>
<body>
<?php
if ($submit && !$DatenOK){
echo "<h2>Fehler:</h2>\n";
echo $error;
}
?>
<form action="<?php echo $PHP_SELF; ?>" method="POST">
Titel:<br>
<input type="text" name="titel" size="30" maxlength="200"
value="<?php echo $titel; ?>">
<br>
Inhalt:<br>
<textarea rows="10" cols="50" wrap="virtual" name="inhalt">
<?php echo $inhalt; ?>
</textarea>
<br>
Autor:<br>
<input type="text" name="autor" size="30" maxlength="200"
value="<?php echo $autor; ?>">
<br>
<input type="submit" name="submit" value="Absenden">
</body>
</html>