MyBB.de Forum

Normale Version: Blog System
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4 5

Dave

http://davethemaniac.uttx.net/blog.php
Einfach einen der Beiträge auswählen, dann runterscrollen zu den Kommentaren

Das ist ja mein Problem, ich habe keine Ahnung von JS, daher, wo muss ich das definieren?
Der Code für den Button muss statt:
Code:
javascript:Thread.deleteComment(14);
so heißen:
Code:
javascript:Comment.deleteComment(14);
Und die comment.js würde ich so schreiben:
Code:
var Comment = {
    deleteComment: function(cid)
    {
        confirmReturn = confirm(deletecomment_confirm);
        if(confirmReturn == true) {
            form = document.createElement("form");
            form.setAttribute("method", "post");
            form.setAttribute("action", "editcomment.php?action=deletecomment&delete=yes");
            form.setAttribute("style", "display: none;");

            var input = document.createElement("input");
            input.setAttribute("name", "cid");
            input.setAttribute("type", "hidden");
            input.setAttribute("value", cid);

            form.appendChild(input);
            document.getElementsByTagName("body")[0].appendChild(form);
            form.submit();
        }
    }
}
Außerdem muss in das Template vor:
Code:
</head>
das:
Code:
<script language="Javascript" type="text/javascript">
<!--
    var deletecomment_confirm = "Willst du wirklich den Kommentar löschen?";
// -->
</script>

Dave

Ok, vielen Dank. Funktioniert jetzt.

//Edit Ok, wollen wir den Tag mal nicht vor dem Abend loben. Ich bekomme jetzt durch meinen PHP-Code folgende Fehlermeldung:
Code:
Fatal error: Call to a member function query() on a non-object in /www/usersites/a-f/davethemaniac/pub/inc/functions.php on line 1548

Die entsprechenden Zeilen sind:
PHP-Code:
/**
 * Deletes a comment from the database
 *
 * @param int The comment id
 */
function delete_comment($cid)
{
    
$delquery $db->query("DELETE * FROM ".TABLE_PREFIX."blogcomments WHERE cid='".$cid."'");


Wo liegt da der Fehler?
Hallo Dave,

Ersetze deinen Code durch:
PHP-Code:
/**
 * Deletes a comment from the database
 *
 * @param int The comment id
 */
function delete_comment($cid)
{
    global 
$db;
    
// Eine Variable ist nur nötig, wenn du mit dem Query weiter arbeiten musst
    //$delquery = $db->query("DELETE * FROM ".TABLE_PREFIX."blogcomments WHERE cid='".$cid."'");
    
$db->query("DELETE * FROM ".TABLE_PREFIX."blogcomments WHERE cid='".$cid."'");


Mfg Garlant

Dave

Sry, hatte bis jetzt keine Zeit mich darum zu kümmern. Ich erhalte folgenden Fehlermeldung:
MySQLi error: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '* FROM mybb_blogcomments WHERE cid='15'' at line 1
Query: DELETE * FROM mybb_blogcomments WHERE cid='15'
Wie wäre es mit:
PHP-Code:
/**
 * Deletes a comment from the database
 *
 * @param int The comment id
 */
function delete_comment($cid)
{
    global 
$db;
    
$db->delete_query(TABLE_PREFIX.'blogcomments''"cid={$cid}");

Dave

Danke, so funktioniert es jetzt.

Dave

Hi, ich habe mal wieder ein Problem mit meinem Blog-System. nach Abschicken kommt nur eine weiße Seite, also ich bekomme keine Fehlermeldung. Könnt ihr mal den Quellcode und nach Fehlern schauen, ich habe keine gefunden, muss ja aber einen geben. Wäre euch sehr verbunden.
Die Datein sind die editcomment.php und die inc/datahandler/blog.php

Dave

Hi Leute, ich habe einige Probleme mit der editcomment.php für mein Blog-System. nach Klicken auf Abschicken bekomme ich nur eine weiße Seite angezeigt, ich finde aber keine Fehler im Quellcode, allerdings muss ja irgendwo einer sein.
Ich hänge mal die beiden Dateien editcomment.php und inc/datahandlers/blog.php als Attachments an, ich wäre euch sehr verbunden, wenn ihr die mal durchsucht.
Grüße
Dave
PHP-Code:
if($mybb->input['action'] == "do_editcomment" && $mybb->request_method == "post"
Wird als action do_editcomment übergeben und das ganze per POST? Folgende Zeile sollte im Code deines Formulars existieren:
Code:
<input type="hidden" name="action" value="do_editcomment" />
Seiten: 1 2 3 4 5