Seite 1 von 1

Kategorie hat eine ungültige post-id

Verfasst: Mi 12. Mai 2021, 15:40
von Bernhard_4711
Moin Zusammen,
nach längerer Zeit muß ich erneut nerven.
Ich habe die Suche bemüht, aber keine wirklich zielführende Info gefunden. Ich muß dazu sagen, ich bin kein SQL-Experte...
Mein Problem:
Ich wollte einen Kategorienbaum duplizieren, was aber nicht wie gewünscht geklappt hat.
Es wurde ein Artikel mit nnnn-(Kopie) angelegt und auch zwei Unter-Artikel mmmm-(Kopie) etc, aber sonst nichts. Keine Kategorien.
Ich habe dann versucht, in der DB manuell herumzufuhrwerken, aber ich habe den Eindruck, damit mehr kaputt zu machen, als zu reparieren. Immerhin konnte ich die fehlerhaften Artikel löschen, aber das aktuelle Ergebnis ist dieses (siehe anl. Bild).
Und da bin ich leider am Ende meiner Weisheit.
Die Kategorie 32 benötige ich!
Sorry...

Re: Kategorie hat eine ungültige post-id

Verfasst: Fr 14. Mai 2021, 21:30
von Faar
ohje... :?

Re: Kategorie hat eine ungültige post-id

Verfasst: Sa 15. Mai 2021, 10:50
von Bernhard_4711
Ich habe die post-id auf eine existierende id "verbogen", habe mich aber noch nicht getraut, weiter im Kategorienbaum herumzufuhrwerken.
Was genau ist denn die post-id? Wozu ist diese gut? Das erschließt sich mir leider nicht.
Sorry für diese evtl. stupiden Fragen, aber ich weiß es tatsächlich nicht.

Edit: Damit ist o.g. Fehlermeldung weg.

Re: Kategorie hat eine ungültige post-id

Verfasst: Sa 15. Mai 2021, 17:36
von Faar
Hallo Bernhard,
es sind schon einige Jahre her aber eine Kategorie braucht in der Datenbank eine pre-id und eine post-id, damit das CMS-Programm die Kateogrie einordnen kann.
Also man muss dem Programm sagen, welche Kategorie vorher kommt und welche nachher.
Zudem gibt es eine parent-id, die besagt, welche Kategorie oberhalb der ausgewählten Kategorie ist.
Ich hoffe, ich vermische jetzt da nicht was aus Wordpress :shock:
Aber so in der Art funktioniert das.
Du kannst im Menü auf der Seite schauen, wenn die noch geht, wie die Kategorien angeordnet sind.
Meistens geht der Artikelbaum im Backend auch noch, so dass man hier die Anordnung sieht.
Eine Kategorie ist zumindest die erste und eine die letzte.

Re: Kategorie hat eine ungültige post-id

Verfasst: Sa 15. Mai 2021, 19:49
von Bernhard_4711
Parent-id leuchtet mir ein.
Sehe ich das also richtig, daß die pre- und post-id's nur aufeinander folgende Nummern sind, die in keinem logischen oder funktionalen Zusammenhang stehen, also quasi nur Weiter-Zählungen sind?
Sprich:
Ich lege Kategorie "a" an, die bekommt die id 1, die pre-id 0 (weil ja die erste Kategorie) und als post-id wird pauschal 2 eingetragen?
Und dann bekommt die nächste Kategorie "b" die id 2, die pre-id 1 (wurde nach der ersten angelegt) und als post-id die 3?

Edit: Das hieße aber, wenn ich eine Kategorie lösche, paßt das CMS sämtliche id's automatisch an? Dann könnte ich ja in der Datenbank in der Tabelle "con_cat" nachsehen, wie das ausschaut.

Re: Kategorie hat eine ungültige post-id

Verfasst: Sa 15. Mai 2021, 20:31
von Faar
Bernhard_4711 hat geschrieben:
Sa 15. Mai 2021, 19:49
Ich lege Kategorie "a" an, die bekommt die id 1, die pre-id 0 (weil ja die erste Kategorie) und als post-id wird pauschal 2 eingetragen?
Und dann bekommt die nächste Kategorie "b" die id 2, die pre-id 1 (wurde nach der ersten angelegt) und als post-id die 3?
...
Dann könnte ich ja in der Datenbank in der Tabelle "con_cat" nachsehen, wie das ausschaut.
Genau.
Wenn man versteht, wie es zusammenhängt, kann man dort die Fehler finden.
Und von der con_cat wird die con-cat-tree abgeleitet, die eigentlich nichts anderes ist als ein ferftiger Kategoriebaum und das als Cache funktioniert.
Ändert man etwas in den Kategtorien, wird die con_cat_tree neu erzeugt.
Und ich vermute, dass hierbei der Fehler angezeigt wurde, weil die con_cat nicht mehr stimmte.

Ich mag jetzt nicht in eine DB schauen aber so sollte es sein.

Re: Kategorie hat eine ungültige post-id

Verfasst: So 16. Mai 2021, 20:02
von Bernhard_4711
Ok. Dann werde ich mir mal in einer stillen Stunde die DB und die id's genauer ansehen.

Vielen Dank für die Hilfe! :wink:

Re: Kategorie hat eine ungültige post-id

Verfasst: Mi 19. Mai 2021, 13:19
von Bernhard_4711
Nachtrag: Es hat alles nichts genützt; ich mußte ein Backup der MySQL-Datenbank einspielen! Jeglicher Versuch einer Reparatur hat alles nur verschlimmbessert... :?
Jetzt habe ich wieder eine stabile Basis, mit der ich arbeiten kann.

Re: Kategorie hat eine ungültige post-id

Verfasst: Mi 19. Mai 2021, 22:10
von homtata
Nein, das mit dem pauschalen Weiterzählen konnte so nicht klappen. Es funktioniert anders.
Jede Kategorie hat eine interne ID, die "catid"; wo diese ID im Gesamtzusammenhang eines Baums auftaucht, kann unterschiedlich sein.
Die pre-id und die post-id sagen, welche Kategorie (bzw. welche catid) vor bzw. nach dieser Kategorie IN DER GLEICHEN KATEGORIEBENE kommen. Ist an dieser Stelle eine Ebene zu Ende, ist meines Wissens die post-id "0". Ebenso ist pre-id "0", wenn die aktuelle Kategorie die erste in dieser Ebene ist. Üder die parent-id werden dann die Ebenen gesteuert.
Es ist je nach Projekt recht mühselig, diese Datenbankeinträge händisch zu korrigieren. Man muss dazu sicherheitshalber erstmal ermitteln, zu welchen Kategorienamen welche catid gehören, dann sich am besten eine eigenen Baum aufmalen mit Ebenen und die IDs dazuschreiben und dann daraus Eintrag für Eintrag in der DB checken, ob alle post/pre/parent-Einträge stimmen.

Re: Kategorie hat eine ungültige post-id

Verfasst: Do 20. Mai 2021, 14:52
von Bernhard_4711
homtata hat geschrieben:
Mi 19. Mai 2021, 22:10
Nein, das mit dem pauschalen Weiterzählen konnte so nicht klappen. Es funktioniert anders.
Du hast recht!
Ich habe mir meinen jetzt wieder funktionierenden Kategorienbaum dahingehend angesehen und es ist genauso, wie Du schriebst.
Danke für die Richtigstellung! :wink:

Re: Kategorie hat eine ungültige post-id

Verfasst: Fr 21. Mai 2021, 15:13
von Oldperl
Servus,

für diejenigen, die sich gerne mal das Grundprinzip von Nested Sets bzw. Nestet Trees, auf denen die Contenido Navigation basiert, anschauen möchten, hier mal ein Link zu einem Artikel von Arne Klempert, der schon im Jahre 2003 im PHP-Magazin erschienen ist.

:arrow: https://www.klempert.de/nested_sets/

Gruß aus Franken

Ortwin