hi!
also ich hab in der datenbank eine tabelle erstellt "news"
und darin sind die Felder..
newsid (Primary Key)
titel (varchar)
text (text)
link (varchar)
author (varchar)
datetime (datetime)
so dann hab ich ne news.php erstellt wo die news erstmal ausgegeben werden:
wenn ich jetzt auf "news_edit" in dem betreffenden beitrag klick wird die "edit.php" aufgerufen und die newsid soll übergeben werden, um die datensätze in dem formular in der news_edit.php einzufügen:
Die SQL Logindaten sind in einer externen datei gespeichert..
wenn ich jetzt auf "edit" klicke wird nur eine weiße seite aufgebaut, weil ich denke, dass die newsid nicht übergeben wird..
ich hab es jetzt schon zum 2. mal von vorn gemacht aber ich entdecke keinen fehler, ich hoffe ihr könnt mir helfen.
also ich hab in der datenbank eine tabelle erstellt "news"
und darin sind die Felder..
newsid (Primary Key)
titel (varchar)
text (text)
link (varchar)
author (varchar)
datetime (datetime)
so dann hab ich ne news.php erstellt wo die news erstmal ausgegeben werden:
PHP-Code:
<html>
<head>
</head>
<body>
<?php
include("mySQL/login_data.php");
// Datendefinition für die Clientausgabe
$start = (isset($start)) ? abs((int)$start) : 0;
$limit = 10; // Datensätze pro Ausgabeseite
// Verbindung zu MySQL-Datenbank herstellen oder sterben.
@mysql_connect($host,$user,$password)
or die("Abbruch: Verbindung zu '$host'"
." konnte nicht hergestellt werden.");
// Benötigte Datenbank auswählen oder sterben.
@mysql_select_db($database)
or die("Abbruch: Datenbank '$database' konnte nicht"
." selektiert werden.<br><br>MySQL sagt: ".mysql_error());
// Feststellen der Anzahl der verfügbaren Datensätze.
$resultID = @mysql_query("SELECT COUNT(newsid) FROM ".$table);
$total = @mysql_result($resultID,0);
// Ggf. $start korrigieren (falls Parameter in
// der URL manipuliert wurde)
$start = ($start >= $total) ? $total - $limit : $start;
// Datenbankabfrage ausführen.
$query = "SELECT newsid, titel, text, link, author, datetime FROM $table ORDER by newsid desc LIMIT $start,$limit";
$resultID = @mysql_query($query);
// Ergebnisse lesen und an den Client ausgeben
while ($data = mysql_fetch_array($resultID))
{
$newsid=$data["newsid"];
$titel=$data["titel"];
$text=$data["text"];
$link=$data["link"];
$author=$data["author"];
$datetime=$data["datetime"];
?>
<table width="706" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="50%" height="16" align="left"><b><?php echo $titel; ?></b>
[<a href="central.php?type=del&newsid=<?php echo $newsid; ?>" target="_self">del</a>]
[<a href="news_edit.php?newsid=<?php echo $newsid; ?>" target="_self">edit</a>]</td>
<td width="50%" height="16" align="right"><?php echo $datetime; ?></td>
</tr>
<tr>
<td colspan="2" width="708" height="16" align="left"><?php echo $text; ?>
<?
if($link != "") {
?>
<p><b>Link:</b> <? echo $link; ?>
<?
}
else { }
?>
</td>
</tr>
<tr>
<td colspan="2" width="708" height="16" align="right"><?php echo $author; ?></td>
</tr>
</table><p>
<?php
}
// Zurück- und Vorblättern
if ($start > 0)
{
$newStart = ($start - $limit < 0) ? 0 : ($start-$limit);
echo "<a href=".$_SERVER['PHP_SELF']."?start=".$newStart
.">< zurück</a>";
}
if ($start + $limit < $total)
{
$newStart = $start + $limit;
echo " <a href=".$_SERVER['PHP_SELF']."?start=".$newStart
.">weiter ></a>";
}
// ENDE: HAUPTFENSTER INHALT
?>
</body>
</html>
PHP-Code:
<html>
<head>
</head>
<body>
<?php
// ANFANG: HAUPTFENSTER INHALT
include("mySQL/login_data.php");
if ($newsid) {
// Verbindung zu MySQL-Datenbank herstellen oder sterben.
@mysql_connect($host,$user,$password)
or die("Abbruch: Verbindung zu '$host'"." konnte nicht hergestellt werden.");
// Benötigte Datenbank auswählen oder sterben.
@mysql_select_db($database)
or die("Abbruch: Datenbank '$database' konnte nicht"." selektiert werden.<br><br>MySQL sagt: ".mysql_error());
// Datenbankabfrage ausführen.
$query = "SELECT titel, text, link, author, datetime FROM $table WHERE newsid=$newsid";
$resultID = @mysql_query($query);
// Ergebnisse lesen und an den Client ausgeben
while ($data = mysql_fetch_array($resultID))
{
$titel=$data["titel"];
$text=$data["text"];
$link=$data["link"];
$author=$data["author"];
$datetime=$data["datetime"];
}
echo $newsid;
?>
<form action="central.php?type=edit&newsid=<?php echo $newsid; ?>" method="POST" name="newsedit">
<table>
<tr><td>Poster</td><td><input type="text" name="author" size="35" maxlength="30" class="felder" value="<?php echo $author; ?>"></td></tr>
<tr><td>Titel</td><td><input type="text" name="titel" size="35" maxlength="80" class="felder" value="<?php echo $titel; ?>"></td></tr>
<tr><td>Link (optional)</td><td><input type="text" name="link" size="35" maxlength="80" value="<?php echo $link; ?>"></td></tr>
<tr><td>News</td><td><textarea name="text" rows="9" cols="50"><?php echo $text; ?></textarea></td></tr>
<tr><td align="center"><input type="submit" value=" News editieren "></td></tr>
</table>
</form>
<?
}
// ENDE: HAUPTFENSTER INHALT
?>
</body>
</html>
wenn ich jetzt auf "edit" klicke wird nur eine weiße seite aufgebaut, weil ich denke, dass die newsid nicht übergeben wird..
ich hab es jetzt schon zum 2. mal von vorn gemacht aber ich entdecke keinen fehler, ich hoffe ihr könnt mir helfen.
Kommentar