Forum : eXV2 ModuleTitel : Sections: Erstellungsdatum/user wird bei Änderung nicht aktu© 2004-2012 www.exv2.de http://www.exv2.de
URL dieser Diskussion
http://www.exv2.de/modules/newbb_plus/viewtopic.php?topic_id=1092&forum=7
|
uboot :
| 16.03.2004 12:58 |
Hallo,
Ich möchte jederzeit sehen wer die Artikel in den Sections verändert und auch wann. Da ich alle Artikel erstellt habe und eine ganze Reihe Autoren diese Regelmäßig abändern wäre das schon fast zwingend erforderlich. Bis jetzt sehe ich immer nur wer den Artikel das erste mal erstellt hat. Was muss ich machen damit beim jedem Klick auf Speichern des Artikel der Name und das Datum/Uhrzeit mit Neu gespeichert wird.
Vielen Dank
Andre |
|
|
Nobse :
| 17.03.2004 20:23 |
Schau mal welche Datei für das Update verantwortlich ist. Dort ist dann auch eine Update sql anweisung. Dies dann erweitern mit aktuellem Datum und der Userid von dem der die änderung macht. |
|
|
uboot :
| 18.03.2004 19:39 |
Also, komm nicht richtig weiter (Anfänger der sich aber Mühe gibt) Die Datei ist die /Admin/index.php Dort steht zum ändern des Artikels:
//---------------------------------------------------------------------------------------// /** * Description * * @param type $var description * @return type description */ function secartedit($artid, $preview="") { global $db, $myts, $secid, $title, $content, $byline;
xoops_cp_header();
echo "<br />";
OpenTable();
if ($preview) { $myts->setType('admin'); $ncontent = $myts->makeTareaData4Preview($content, 1, 1, 1); $title = $myts->makeTboxData4PreviewInForm($title); $content = $myts->makeTboxData4PreviewInForm($content); $byline = $myts->makeTboxData4PreviewInForm($byline);
echo " <table border='0' cellpadding='3' cellspacing='5' width='100%'><tr> <td><div class='indextitle'>$title</div><br /></td> </tr><tr> <td>$ncontent</td> </tr></table>";
} else { $result = $db->query("SELECT artid, secid, title, byline, content FROM ".$db->prefix(_MI_NSECCONT_TABLE)." WHERE artid='$artid'"); list($artid, $secid, $title, $byline, $content) = $db->fetch_row($result); $title = $myts->makeTboxData4Edit($title); $content = $myts->makeTboxData4Edit($content); $byline = $myts->makeTboxData4Edit($byline); }
echo " <h4>"._MD_EDITARTICLE."</h4> <form name='edit' action='./index.php' method='post'><br />";
echo _MD_GROUPPROMPT."<br />";
$access = new groupAccess('editArticle'); $access->loadGroups($artid, 'artid', _MI_NSECCONT_TABLE);
echo $access->listGroups();
echo " <br /><br /> <b>"._MD_TITLEC."</b><br /> <input type='text' class='text' name='title' size='60' value='$title' /><br /><br />";
$result2 = $db->query("SELECT secid, secname FROM ".$db->prefix(_MI_NSECTIONS_TABLE)." ORDER BY secname");
echo "<select class='select' name='secid'>"; while (list($sid, $secname) = $db->fetch_row($result2)) { $secname = $myts->makeTboxData4Show($secname); echo "<option value='$sid'"; if ($sid == $secid) { echo " selected='selected'"; } echo ">$secname</option>"; } echo "</select>";
echo " <br /><b>"._MD_CONTENTC."</b> <i>"._MD_PAGEBREAK."</i><br /><br /> <input type='hidden' name='artid' value='$artid' /> <input type='hidden' name='op' value='secartchange' />";
$desc = new XoopsFormDhtmlTextArea('', 'content', $content, 10, 50); echo $desc->render();
echo " <br /><br /><b>"._MD_BYLINEC."</b><br /> <input type='text' class='text' name='byline' value='$byline' size='85' maxlength='255' /><br />
<table border='0'><tr><td> "._PREVIEW." <input type='checkbox' class='checkbox' name='preview' value='1' /> </td><td> <input type='submit' class='button' value='"._SAVE."' /> </td> </form>
<form name='delete' action='./index.php' method='post'> <td> <input type='hidden' name='artid' value='$artid' /> <input type='hidden' name='op' value='secartdelete' /> <input type='submit' class='button' value='"._DELETE."' /> </td> </form>
</tr></table>";
CloseTable(); }
ich suche doch aber die Zeile die beim erstellen so wichtig ist:
$db->query("INSERT INTO ".$db->prefix(_MI_NSECCONT_TABLE)." SET artid='$newid', secid='$secid', groupid='$groupid', title='$title', byline='$byline', author='$author', date='$date', content='$content', counter='0'"); |
|
|
Nobse :
| 18.03.2004 19:59 |
In der Function secartedit wird nur der Inhalt geändert.
<input type='hidden' name='op' value='secartchange' />";
Diese Zeile besagt das bei absenden der Seite op = secartchange ist
in der index.php ganz unten wird op abgefragt und zur jeweiligen function gesprungen in diesem Fall zu
function secartchange
dort werden die daten gespeichert aber nicht über ein insert sondern update. Hoffe hielft weiter.
[ Geändert von Nobse an 18.03.2004 19:59 ] |
|
|
uboot :
| 18.03.2004 20:24 |
Ja hey - so macht es tatsächlich noch mehr Spass (man fühlt sich garnicht mehr wie ein Anfänger) Hab im folgenden Abschnitt fettgedrucktes hinzugefügt und nun werden alle Artikel beim ändern mit User und neuer Uhrzeit/Datum versehen.
//---------------------------------------------------------------------------------------// /** * Description * * @param type $var description * @return type description */ function secartchange($artid, $secid, $title, $content, $byline) { global $db, $xoopsUser, $myts, $HTTP_POST_VARS;
if ( empty($title) || empty($content) ) { $title = $myts->oopsStripSlashesGPC($title); $content = $myts->oopsStripSlashesGPC($content); $byline = $myts->oopsStripSlashesGPC($byline);
$title = urlencode($title); $content = urlencode($content); $byline = urlencode($byline); $groupid = urlencode(@implode(" ", $HTTP_POST_VARS['editArticle']));
$extra = "title=$title&content=$content&byline=$byline&groupid=$groupid&secid=$secid&preview=1"; redirect_header("./index.php?op=secartchange&$extra", "2", _ALL_FIELDS); exit(); }
$title = $myts->makeTboxData4Save($title); $content = $myts->makeTboxData4Save($content); $byline = $myts->makeTboxData4Save($byline); $author = $xoopsUser->uid(); $date = time(); $groupid = @implode(" ", $HTTP_POST_VARS['editArticle']);
$db->query("UPDATE ".$db->prefix(_MI_NSECCONT_TABLE)." SET secid='$secid', groupid='$groupid', title='$title', author='$author', date='$date', byline='$byline', content='$content' WHERE artid='$artid'"); build_rss(); redirect_header("./index.php?op=sections", "2", _UPDATED); exit(); }
´
Danke |
|
|
|