Hallo, Gast! (Registrieren)

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


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
smilies loeschen
#1
Hallo!

Folgendes macht mir zu schaffen:

Ich hab in mein testforum ein paar smilies hochgeladen,in den dafuer vogesehenen Ordner.
Ueber den Plugin Manager muss man diese dann in der smilie Datenbank importieren,damit sie im PM und Post Bereich neben der Antwortbox sichtbar sind.
Soweit so gut!

Nun aber,habe zwecks einer groessenanapassung,die smilies von den Ordner geloescht und moechte sie durch andere ersetzen.
Doch das Loschen beeintraechtigt wohl nicht die Datenbank denn in den PMs etc,erscheinen die geloeschten smilies nach wie vor,sprich: man sieht den Namen und lauter "X"s!!!!

Ich denke ich muss die Datenbank aufraeumen.Doch wie stelle ich es an,den ich kann / will nicht ueber den Plugin Manager muehsam jeden "X" smilie loeschen!!!!
Macht das vielleicht ein SQL Query???

Danke im voraus!
sub specie aeternitatis!
Zitieren
#2
Du hast die Smilies nur vom Server gelöscht, also die Dateien? In diesem Fall wird der Alternativtext im Forum, in diesem Fall eben die Abkürzung, gezeigt.

Du hast 2 Möglichkeiten:
a) Du löschst die Smilies einzeln im Admin-CP oder per phpMyAdmin in der Datenbank (danach nicht vergessen den Cache smilies zu erneuern)
b) du schreibst ein skript, das die Daten zu den Smilies aus der Datenbank abfragt und überprüft welche Dateien nicht mehr existieren und dann die entsprechenden Einträge entfernt.

Einfach per Query geht es nicht, woher soll der Query wissen welche Dateien es noch gibt und welche nicht?

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#3
Tja....
Pech gehabt!

Ich hab die Möglichkeit a) in Betracht gezogen,und per phpMyAdmin die Tabelle mybb_smilies zu löschen versucht.
Ich dachte dummerweise dass das das Problem lösen würde.

Vorsichtshalber aber, habe ich nur eins von den 6 Feldern gelöscht (weiss nicht mehr den Namen).
Jetzt habe ich nur die Felder Name,Find,Image,disporder und showclickable dort und ich kann nun nicht mehr via Smiliemanager an die smilies heran. Ich krieg error message:

mySQL error: 1054
Unknown column 'gid' in 'where clause'
Query: SELECT image FROM mybb_smilies WHERE gid = '0' ORDER BY disporder ASC LIMIT 0,1

Kann man das gelöschte wiederherstellen,und wie?
Und wo genau via phpMyAdmin kann ich die einzelnen smilies finden und vielleicht schneller löschen als mit der "einzeln löschen" methode?


sub specie aeternitatis!
Zitieren
#4
Du darfst nicht die ganze Tabelle löschen, sondern nur die Einträge der Smilies. Im phpMyAdmin gibt es die Funktion, alle Einträge auszuwählen, damit geht es dann auch schneller.
Ich kann dir jetzt nicht sagen, was du wieder einfügen musst, damit der Fehler nicht mehr auftritt, weil ich gerade kein Board online habe, um nachzugucken. Entweder ein netter User postet mal seine Tabelle, du benutzt ein Backup oder du beißt in den sauren Apfel und installierst parallel ein zweites Board und guckst dir die Struktur von da ab.
Vantage-Forum: http://vantage-forum.de/
Zitieren
#5
Du solltest in Erwägung ziehen die Smilies komplett neu anzulegen. Du kannst auch nur die Fehlende Spalte sid wiederherstellen, allerdings fehlen dann die Inhalte. Das ist problematisch, da diese Spalte die IDs der Smilies enthält. Foldende Queries stellen die Tabelle wieder her (ohne Inhalte):
Code:
DROP TABLE IF EXISTS `mybb_smilies`;
CREATE TABLE `mybb_smilies` (
  `sid` smallint(5) unsigned NOT NULL auto_increment,
  `name` varchar(120) NOT NULL default '',
  `find` varchar(120) NOT NULL default '',
  `image` varchar(220) NOT NULL default '',
  `disporder` smallint(5) unsigned NOT NULL default '0',
  `showclickable` char(3) NOT NULL default '',
  PRIMARY KEY  (`sid`)
) ENGINE=MyISAM;
PS: Es ging darum die Inhalte der Tabellen, also die Smilies, zu löschen. Du solltest natürlich nicht die Tabellen oder Teile davon entfernen.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#6
Ok...
Die Tabelle hab ich laut Michaels Anweisung wiederhergestellt...
(Danke Michael! Ich suchte vergebens nach einer Lösung,die die Datenbank nicht beschädigt).

Die smilies hab ich auch gelöscht vom Ordner images/smilies.

Nur:beim aufrufen jetzt des Smiliemanagers krieg ich leider die Fehlermeldung

mySQL error: 1054
Unknown column 's.gid' in 'where clause'
Query: SELECT s.*, g.name AS groupname FROM mybb_smilies s, mybb_sg_smiliegroups g WHERE g.gid=s.gid ORDER BY disporder ASC LIMIT 0, 15

Warum klappt es jetzt nicht???
sub specie aeternitatis!
Zitieren
#7
Hast du das Addon-Installiert, das Smilies in Kategorien ordnet? Installiere dieses neu, da scheint es Probleme zu geben.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren