So, ich wieder mal.
Wir haben den riddleeditor als vorlage genommen und einen
Newseditor gebastelt.
Jetzt ist nur das Problem, das auf der ersten Seite, die allerersten
News stehen und auf der allerletzten, ganz unten, die neusten News.
Auch fehlt noch das Datum und die Uhrzeit der News.
1) Wie kann man erreichen, dass auf der ersten Seite, ganz oben,
die neusten und auf der letzten Seite, ganz unten, die ältesten News
aufgelistet werden?
2) Wie bekomme ich als eigene Spalte, Datum und Uhrzeit der einzelnen News ausgegeben?
Die Seitenblätternfunktion funktioniert, die Editfunktion geht, die Löschfunktion geht, News über Editor hinzufügen geht auch.
Vielleicht kann jemand mal nen Blick drauf werfen und ne Lösung
anbieten.
[php]<?php
// 17092004
/*
riddle editor for 0.9.7 ext GER by anpera
based on the code from creature editor by mightye
modify to newseditor 13112007
*/
require_once "common.php";
isnewday(4);
page_header("Newseditor");
addnav("G?Zurück zur Grotte","superuser.php");
addnav("W?Zurück zum Weltlichen","village.php");
if ($_POST['save']<>""){
if ($_POST['id']!=""){
$sql="UPDATE news SET newstext='{$_POST['newstext']}',accountid='{$_POST['accountid']}',changedby='{$session['user']['name']}' WHERE newsid={$_POST['id']}";
output(db_affected_rows()." ".(db_affected_rows()==1?"Eintrag":"Einträge")." geändert.");
}else{
$sql="INSERT INTO news (newstext,newsdate,accountid,changedby) VALUES ('{$_POST['newstext']}',NOW(),'{$_POST['accountid']}','{$session['user']['name']}')";
}
db_query($sql) or output("`\$".db_error(LINK)."`0`n`#$sql`0`n");
}
if ($_GET['op']=="del"){
$sql = "DELETE FROM news WHERE newsid={$_GET['id']}";
db_query($sql);
if (db_affected_rows()>0){
output("News gelöscht`n`n");
}else{
output("News nicht gelöscht: ".db_error(LINK));
}
$_GET['op']="";
}
if ($_GET['op']==""){
$sql2 = "SELECT count(newsid) AS c FROM news";
$result2 = db_query($sql2);
$row2 = db_fetch_assoc($result2);
$totalnews = $row2['c'];
$newsperpage=50;
$pageoffset = (int)$_GET['page'];
if ($pageoffset>0) $pageoffset--;
$pageoffset*=$newsperpage;
$from = $pageoffset+1;
$to = min($pageoffset+$newsperpage,$totalnews);
$limit=" LIMIT $pageoffset,$newsperpage ";
if ($_GET['subop']=="search"){
$search="%";
for ($x=0;$x<strlen($_POST['text']);$x++){
$search .= substr($_POST['text'],$x,1)."";
}
$search.="%";
$search=" newstext LIKE '".addslashes($search)."' ";
$sql = "SELECT * FROM news WHERE $search ORDER BY newsid $limit";
}else{
$sql = "SELECT * FROM news ORDER BY newsid $limit";
}
$result = db_query($sql) or die(db_error(LINK));
addnav("News hinzufügen","newseditor.php?op=add");
addnav("Seiten");
for ($i=0;$i<$totalnews;$i+=$newsperpage){
addnav("Seite ".($i/$newsperpage+1)." (".($i+1)."-".min($i+$newsperpage,$totalnews).")","newseditor.php?page=".($i/$newsperpage+1));
}
output("<form action='newseditor.php?subop=search' method='POST'>Wortsuche: <input name='text'><input type='submit' class='button' value='Suchen'></form>",true);
addnav("","newseditor.php?subop=search");
output("<table><tr><td>Ops</td><td width='50%'>News</td><td>Acctid</td></tr>",true);
addnav("","newsditor.php");
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
output("<tr><td valign='top'> [<a href='newseditor.php?op=edit&id={$row['newsid']}'>Edit</a>|".
"<a href='newseditor.php?op=del&id={$row['newsid']}' onClick='return confirm(\"Bist du dir sicher, dass du diese News löschen willst?\");'>Del</a>] </td><td>",true);
addnav("","newseditor.php?op=edit&id={$row['newsid']}");
addnav("","newseditor.php?op=del&id={$row['newsid']}");
output($row['newstext']);
output("</td><td>",true);
output($row['changedby']);
output("</td></tr>",true);
}
output("</table>",true);
}else{
if ($_GET['op']=="edit" || $_GET['op']=="add"){
if ($_GET['op']=="edit"){
$sql = "SELECT * FROM news WHERE newsid={$_GET['id']}";
$result = db_query($sql) or die(db_error(LINK));
if (db_num_rows($result)<>1){
output("`4Fehler`0, diese News wurde nicht gefunden!");
}else{
$row = db_fetch_assoc($result);
}
}
output("<form action='newseditor.php' method='POST'>",true);
output("<input name='id' value=\"".HTMLEntities($_GET[id])."\" type='hidden'>",true);
output("<table border='0' cellpadding='2' cellspacing='0'>",true);
output("<tr><td>News:</td><td><textarea name='newstext' class='input' cols='50' rows='9'>".HTMLentities($row['newstext'])."</textarea></td></tr>",true);
output("<tr><td>Accountid: </td><td><input name='accountid' maxlength='10' size='10' value=\"".HTMLentities($row['accountid'])."\"></td></tr>",true);
output("<tr><td colspan='2'><input type='hidden' name='save' value='Save'><input type='submit' class='button' name='submit' value='Speichern'></td></tr>",true);
output("</table>",true);
output("</form>",true);
addnav("","newseditor.php");
}else{
}
addnav("Zurück zum Newseditor","newseditor.php");
}
page_footer();
?>[/php]
_________________ so long
Stefan
---------
Source im Profil
|