if (isset($_POST["text"]) === false || empty($_POST["userid"]) === true || is_numeric($_POST["userid"]) === false || empty($_POST["litid"]) === true || is_numeric($_POST["litid"]) === false) { // Wenn ja, gebe Fehler aus echo "<p id=\"error\">Kommentar konnte nicht angelegt werden, da es ein Fehler bei der Übertragung der Informationen des Kommentars gab</p>"; } else { // Wenn nicht, lege Kommentar an und gebe Erfolgsmeldung aus Kommentar::Insert($_POST["text"], $_POST["userid"], $_POST["litid"]); echo "<p style=\"text-align: center\">Kommentar wurde angelegt</p>"; } // Wurde eine Literaturnummer übergeben, gebe Zurückbutton aus if (empty($_POST["litid"]) === false) { echo form_back("lit.{$ext}", $_POST["litid"]); } } elseif (isset($_GET["update"]) === true) { // Fehlerhafte Daten zum Ändern übertragen? if (isset($_POST["text"]) === false || empty($_POST["id"]) === true || is_numeric($_POST["id"]) === false) { // Wenn ja, gebe Fehler aus echo "<p id=\"error\">Kommentar konnte nicht geändert werden, da es ein Fehler bei der Übertragung der Informationen des Kommentars gab</p>"; } else { // Wenn nicht, ändere Kommentar und gebe Erfolgsmeldung aus Kommentar::Update($_POST["id"], $_POST["text"]); echo "<p style=\"text-align: center\">Kommentar wurde geändert</p>"; } // Wurde eine Literaturnummer übergeben, gebe Zurückbutton aus if (empty($_POST["litid"]) === false) { echo form_back("lit.{$ext}", $_POST["litid"]); } } ?> </div> <?php require_once "include/footer.php";
function Insert($text, $verfasser_nr, $literatur_nr) { global $db_config, $sqldb, $login; // Liegen Administratorrechte vor? Alternativ Mitgliedsrechte // (aber nur, wenn der Verfasser gleich der eingeloggte User ist) if ($login->IsAdministrator() === true || $login->IsMember() === true && $verfasser_nr == $login->Nr) { // Suche nach Literatureintrag mit übergebener Literatur_Nr $literatur_nr $sqlExists = "SELECT Literatur_Nr FROM " . $db_config['prefix'] . "Bibliothek\n\t\t\t\t\t\tWHERE Literatur_Nr='{$literatur_nr}'"; $sqldb->Query($sqlExists); // Existiert eine Literatur mit $literatur_nr? if ($sqldb->Fetch() !== false) { // Suche ob schon Kommentar von Mitglied zur Literatur existiert $sqlAlready = "SELECT Kommentar_Nr FROM " . $db_config['prefix'] . "Kommentare\n\t\t\t\t\t\t\tWHERE Literatur_Nr='{$literatur_nr}' AND Mitglieds_Nr='{$verfasser_nr}'"; $sqldb->Query($sqlAlready); $cur = $sqldb->Fetch(); // Existiert noch kein Kommentar zur Literatur von Mitglied? if ($cur === false) { // Wenn ja, füge neuen Kommentar hinzu, wenn Text angegeben wurde if (empty($text) === false) { $sql = "INSERT INTO " . $db_config['prefix'] . "Kommentare\n\t\t\t\t\t\t\t\tVALUES (NULL, '{$text}', '{$literatur_nr}', '{$verfasser_nr}')"; $sqldb->Query($sql); } } else { // Existiert schon ein Kommentar, dann ändere diesen Kommentar::Update($cur->Kommentar_Nr, $text); } } } }
function Update() { global $login, $sqldb; $login->Level = 1; $sqldb->ExpectQuery('DELETE FROM.*Kommentare', 1); Kommentar::Update(1, ""); // Wenn Text leer ist, soll Kommentar gel�scht werden $dbResult = $sqldb->Verify(); if ($dbResult !== true) { $dbResult->Unit = 'Kommentar'; $dbResult->Test = 'Update (leer)'; return $dbResult; } $sqldb->ExpectQuery('UPDATE.*Kommentare.*WHERE.*Mitglieds_Nr', 1); Kommentar::Update(1, "Neuer Text"); $dbResult = $sqldb->Verify(); if ($dbResult !== true) { $dbResult->Unit = 'Kommentar'; $dbResult->Test = 'Update (Mitglied)'; return $dbResult; } $login->Level = 2; $sqldb->ExpectQuery('UPDATE.*Kommentare.*WHERE', 1); Kommentar::Update(1, "Neuer Text"); $dbResult = $sqldb->Verify(); if ($dbResult !== true) { $dbResult->Unit = 'Kommentar'; $dbResult->Test = 'Update (Admin)'; return $dbResult; } return true; }