Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 4 Gast/Gäste
Mysql Error bei Foren-Ansicht
#11
auch ich bekomme seit gestern ständig Fehlermeldungen, hatte heute früh, 1400 Mails, immer die gleichen.


Your copy of MyBB running on Hundeforum HundeLexi (http://www.hundelexi.de) has experienced an error. Details of the error include:
---
Type: 20
File: (Line no. 0)
Message
SQL 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 ')
ORDER BY p.dateline' at line 4
Query:
SELECT u.*, u.username AS userusername, p.*
FROM mybb_posts p
LEFT JOIN mybb_users u ON (u.uid=p.uid)
WHERE p.pid IN ()
ORDER BY p.dateline


Ich weiß leider nicht, wo ich da suchen kann Thinking
#12
Welche Plugins benutzt du?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#13
ich vermute mal das ist sein IRC Chat
#14
Wie kommst du denn jetzt darauf?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#15
Habe am Board seit Wochen nichts verändert, die Fehlermeldungen hageln aber erst seit gestern.

Habe folgende Plugins:

Ads after first post (2.2)

Advanced Forum Signatures (1.2.0) deaktiviert

Birthday Mailer (2.0.1)

Game Section (1.2)

Google SEO (1.1.13)

Hello World! (1.0) deaktiviert

Overview (3.2.1)

Profile Twitter (1.1)

Skype MyBB! (1.4.1)

Trash Can Forum (2.0)

Users Browsing Thread (1.1)

Welcome-Activate-New Users-Missyou box (1.6)

Profile YouTube Channel (1.2)
#16
(21.06.2010, 09:59)StefanT schrieb: Wie kommst du denn jetzt darauf?

Weil ich mich gerade in seinem Forum umsehe, und der IRC Chat haut einen gleich Sicherheitswarnungen um die Ohren.
aha, ich hab gerade was gefunden....

SQL-Error #1064

Aufgabe:
Export der Datenbank-Struktur und -Inhalte via WBB 2.x ACP mit anschließendem Import in eine neue Datenbank via phpMyAdmin, um sämtliche Inhalte des alten Boards über die Datenimport-Funktion auf ein neues Board übertragen zu können.

In meinem Fall:
- altes Board: WBB 2.3.4
- neues Board: WBB Lite 2.0.1


Problem:
Wenn man bei WBB 2.x über das ACP ein Datenbank-Backup erstellt, um dieses via phpMyAdmin in eine neue Datenbank zu importieren, bekommt man einen SQL-Error (#1064). Das Ganze liegt wohl darin begründet, dass Feldnamen nicht in Backticks sind - das führt zu Komplikationen bei Namen, die gleichzeitig MySQL-Schlüsselwörter sind.


Lösung:
Mit Hilfe von MySQLDumper (kostenloses PHP/Perlskript, um MySQL-Daten zuverlässig zu sichern und gegebenenfalls wiederherzustellen) kann man die Datenbank in ein anderes Format umwandeln, welches die "Fehler" des ACP-Exports automatisch korrigiert.


Schritt für Schritt:
MySQLDumper herunterladen auf: http://www.mysqldumper.de

> Die heruntergeladenen Dateien auf den Webserver laden
> Installations-Datei über den Browser aufrufen
> SQL-Zugang für den MySQLDumper einrichten
> Im Admin-Bereich unter "Verwaltung" die SQL-Datei hochladen, welche über das ACP erstellt wurde.
> Anschließend ebenfalls unter "Verwaltung" das Tool "Backup-Konverter" ausführen
> Bei "zu konvertierende Datei" die soeben hochgeladene SQL-Datei auswählen und irgend einen Namen für die neue Datei vergeben
> Konvertierung starten
> Nach erfolgreicher Konvertierung im Bereich "Wiederherstellung" die soeben erstellte MDF-Datei auswählen
> Anschließend vor dem Dateinamen das Häkchen setzen und oben links auf "Wiederherstellen" klicken
> Fertig Smile


Ich hoffe ich kann damit ein paar Leuten helfen ...


PS: Die einfachste Lösung ist immer noch, wenn man direkten Zugriff auf die Datenbank des alten Boards hat. Diese Anleitung ist daher für all diejenigen, die wie ich den entsprechenden Zugriff nicht haben, sondern lediglich die ACP-Backup-Funktion nutzen können.

http://forum.fachinformatiker.de/datenba...suche.html
################################

haha, bei mir ist der Fehler weg....

1. Das Zauberwort heißt, Verwaiste Daten suchen,

2. UTF8 Konventierungen durchführen lassen

3. Datenbank optimieren lassen.

und worla, der Fehler ist verschwunden!
#17
Ich hab das Prefix Plugin einfach wieder installiert aber deaktiviert.

Edit:
Gibt's irgend eine Möglichkeit das Plugin ganz zu deinstallieren? Es fügt einfach Zahlen vor den Prefixen, die ich durch das Feature von 1.6 hinzugefügt hab.
Ich poste mal den Inhalt der Prefix.php:

PHP-Code:
<?php

function prefix_info()
{
    return array(
        
"name"        => "Prefix-Plugin",
        
"description" => "adds a prefix before the thread-subject",
        
"website"     => "http://mods.mybboard.net",
        
"author"      => "XxAnimusxX",
        
"authorsite"  => "http://www.k-under.de",
        
"version"     => "1.0",
        
"guid"        => "3fb2b1ec27e31aa2b05bb8d444bfda55",
        
"compatibility" => "15*"
        
);
}

$plugins->add_hook("forumdisplay_thread""addPrefix_forumdisplay");
$plugins->add_hook("newthread_end""addPrefix_newthread");
$plugins->add_hook("editpost_end""addPrefix_editpost");
$plugins->add_hook("editpost_do_editpost_start""savePrefix_editpost");
$plugins->add_hook("newthread_do_newthread_end""savePrefix_newthread");

$plugins->add_hook("admin_config_menu""prefix_toolsmenu");
$plugins->add_hook("admin_config_action_handler""prefix_actionhandler");


function 
prefix_toolsmenu($sub_menu)
{
        
$sub_menu[] = array(
                      
"id" => "prefix",
                      
"title" => "Prefix-Manager",
                      
"link" => "index.php?module=config/prefix"
                      
);
}



function 
prefix_actionhandler($action)
{
        
$action['prefix'] = array('active' => 'prefix''file' => 'prefix.php');
}



function 
prefix_is_installed()
{
        global 
$db;

        if (
$db->field_exists("prefix""threads"))
        {
                return 
true;
        }
        return 
false;
}



function 
prefix_install()
{
        global 
$db;

        
$db->query("ALTER TABLE ".TABLE_PREFIX."threads ADD prefix VARCHAR(126) NOT NULL");

        
$find preg_quote("{\$gotounread}");
        
$replace "{\$gotounread}{\$thread['prefix']}";
        
prefix_replace_templatesets("forumdisplay_thread"$find$replace);

        
$find preg_quote("trow2\"><input");
        
$replace "trow2\">{\$prefix_menu}<input";
        
prefix_replace_templatesets("newthread"$find$replace);
        
prefix_replace_templatesets("editpost"$find$replace);

        
$db->query("CREATE TABLE ".TABLE_PREFIX."prefix (
                           pid INT UNSIGNED NOT NULL AUTO_INCREMENT,
                           title VARCHAR(126) NOT NULL,
                           fid TEXT NOT NULL,
                           gid TEXT NOT NULL,
                           PRIMARY KEY (pid)
        )"
);
}



function 
prefix_uninstall()
{
        global 
$db;

        
$db->query("ALTER TABLE ".TABLE_PREFIX."threads DROP prefix");

        
$find preg_quote("{\$gotounread}{\$thread['prefix']}");
        
$replace "{\$gotounread}";
        
prefix_replace_templatesets("forumdisplay_thread"$find$replace);

        
$find preg_quote("trow2\">{\$prefix_menu}<input");
        
$replace "trow2\"><input";
        
prefix_replace_templatesets("newthread"$find$replace);
        
prefix_replace_templatesets("editpost"$find$replace);
        
        
        
$db->query("DROP TABLE ".TABLE_PREFIX."prefix");
}



function 
addPrefix_forumdisplay()
{
        global 
$thread;

        if (
$thread['prefix'])
        {
                
$thread['prefix'] = "<strong>[".$thread['prefix']."]</strong> ";
        }
}



function 
addPrefix_newthread()
{
        global 
$prefix_menu$fid;

        
$prefix_menu build_prefixmenu($fid);
}



function 
addPrefix_editpost()
{
        global 
$thread$fid$pid$prefix_menu;

        if (
$thread['firstpost'] != $pid) return false;
        
$prefix_menu build_prefixmenu($fid$thread['prefix']);
}



function 
savePrefix_editpost()
{
        global 
$mybb$thread$db;

        
$pid intval($mybb->input['prefix']);
        if (!
$thread['prefix'] && !$pid) return false;

        
$prefix $db->fetch_array($db->simple_select("prefix""title""pid=".$pid));

        if ((
$prefix['title'] == $thread['prefix']) || (!$prefix['title'] && $pid)) return false;
        
$db->update_query("threads", array("prefix"=>$prefix['title']), "tid=".$thread['tid']);
}



function 
savePrefix_newthread()
{
        global 
$mybb$db$tid;

        
$pid intval($mybb->input['prefix']);
        if (!
$pid) return false;

        
$prefix $db->fetch_array($db->simple_select("prefix""title""pid=".$pid));
        if (!
$prefix['title']) return false;

        
$db->update_query("threads", array("prefix"=>$prefix['title']), "tid=".$tid);
}



function 
build_prefixmenu($fid 0$selected "")
{
        global 
$mybb$db;
        if (!
$fid) return false;

        
$query $db->simple_select("prefix");
        
$menu "";
        while (
$prefix $db->fetch_array($query))
        {
                
$checked "";
                
$gids explode(","$prefix['gid']);
                
$fids explode(","$prefix['fid']);

                
$group in_array($mybb->user['usergroup'], $gids);
                if ((
in_array($fid$fids) && $group) || (!$prefix['fid'] && $group))
                {
                        if (
$prefix['title'] == $selected$checked " selected";
                        
$menu.="<option value=\"".$prefix['pid']."\"".$checked.">".$prefix['title']."</option>";
                }
        }

        if (
$menu)
        {
                return 
"<select name='prefix'><option value=\"0\"></option>".$menu."</select> ";
        }
}



function 
prefix_replace_templatesets($template$find$replace)
{
        global 
$db;

        
$query $db->simple_select("templates""template, tid""title='".$template."'");
        while (
$template $db->fetch_array($query))
        {
                
$tid $template['tid']; $body $template['template'];
                
$body preg_replace("!".$find."!"$replace$body);

                
$db->update_query("templates", array("template" => $db->escape_string($body)), "tid=".$tid);
        }
}

?>
Mein Forum über die Warcraft 3 Map OmG:
Oh-my-Forum
#18
Du musst das Plugin deinstallieren, dann kannst du es löschen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#19
Wenn ich es deinstalliere krieg ich wieder den blöden Error.
Ich müsste die vom Prefix geänderten Datenbanken finden und verändern,
aber das ist leider nicht so leicht.
Mein Forum über die Warcraft 3 Map OmG:
Oh-my-Forum
#20
Zum einen Deinstalliert sich das Plugin korrekt, zum anderen kann ein nicht vorhandenes Plugin nicht den Fehler auslösen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  mysql Error bei Suche forumfreund 2 1.696 10.06.2010, 12:08
Letzter Beitrag: forumfreund
  MySQL-Error bei Abfrage "Alle Beiträge finden" Jockl 7 3.358 28.04.2010, 20:25
Letzter Beitrag: Jockl
  MySQL-ERROR bei Forenumzug (Import mit MySQLDumper) Michael Malin 2 2.513 28.01.2010, 21:29
Letzter Beitrag: Michael Malin