Wird geprüft: Kategorieansicht im Backend verschwindet

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Wird geprüft: Kategorieansicht im Backend verschwindet

Beitrag von Oldperl » Sa 13. Jun 2009, 06:07

Bezugnehmend auf folgende Threads
:arrow: http://forum.contenido.org/viewtopic.php?f=62&t=23736
:arrow: http://forum.contenido.org/viewtopic.php?f=62&t=23932

habe ich hier einen, diesen Bug hoffentlich beseitigenden, Patch für die Contenido Version 4.8.12.
Bitte den Code in der Datei contenido/includes/include.str_overview.php von Zeile 47 bis Zeile 73 mit folgendem ersetzen.

Code: Alles auswählen

//Everybody is allowed to update aliases, if there is no Permission to update category names, this block updates category alias only
if(isset($_POST['newcategoryalias']) && isset($_POST['action']) && $_POST['action'] == 'str_renamecat') {
   
  $iIdCat = (int) $_POST['idcat'];
    
  if(!($perm->have_perm_area_action($tmp_area, "str_renamecat") || $perm->have_perm_area_action_item($tmp_area, "str_renamecat", $iIdCat)) ) {
    if (trim($_POST['newcategoryalias']) != '') {
        $sUrlName = capiStrCleanURLCharacters($_POST['newcategoryalias']);
        $sql = "UPDATE {$cfg['tab']['cat_lang']} SET urlname = '". Contenido_Security::escapeDB($sUrlName, $db) ."' WHERE idcat = '".Contenido_Security::toInteger($iIdCat)."' AND idlang = '".Contenido_Security::toInteger($lang)."'";
        $db->query($sql);
    } else {
        //Use categoryname as default -> get it escape it save it as urlname
        $sql = "SELECT name from {$cfg['tab']['cat_lang']} WHERE idcat = '".Contenido_Security::toInteger($iIdCat)."' AND idlang = '".Contenido_Security::toInteger($lang)."'";
        $db->query($sql);
        if ($db->next_record()) {
          $sUrlName = capiStrCleanURLCharacters($db->f('name'));
          $sql = "UPDATE {$cfg['tab']['cat_lang']} SET urlname = '". $sUrlName ."' WHERE idcat = '".Contenido_Security::toInteger($iIdCat)."' AND idlang = '".Contenido_Security::toInteger($lang)."'";
          $db->query($sql);
          $lang = Contenido_Security::escapeDB($lang, null);
          @unlink($cfgClient[$client]["path"]["frontend"]."cache/locationstring-url-cache-$lang.txt");
        }
    }
  }
}
An dieser Stelle wird der Alias der Kategorie geändert, bzw. wenn beim Ändern der Kategorie das Feld für Alias leer ist, neu aus dem Kat-Namen erstellt. Hier hatte sich ein Fehler in den DB-Queries eingeschlichen, der unter Umständen dazu führen konnte, das falsche Daten in die DB geschrieben wurden.

Ob dieser Bug nun ursächlich auch für das Verschwinden der Kategorien zuständig war, können nur weitere Tests zeigen. Daher meine Bitte um Rückmeldungen ob sich der Kategoriefehler nach dem Einbau des Patches noch zeigt. Danke.

Mit sonnigem Gruß aus dem erwachenden Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

econsul
Beiträge: 29
Registriert: Do 22. Jan 2004, 17:04
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von econsul » Mi 1. Jul 2009, 22:56

Der Patch behebt das "Kategorien verschwinden nicht.
Kategorien verschwinden immer noch. Ich habe mittlerweile ermittelt, welche Manipulationen die Kategorien zum Verschwinden bringen:

Unter Content > Kategrorie wird auf das "Baum verschieben" Symbol geklickt.
Anschliessend muss man das Zielverzeichnis wählen. Wenn man aber nicht direkt auf ein Symbol "Baum hier ablegen" klickt, sondern z.B eine Kategorie öffnet, dann ist der zu verschiebende Baum weg.

Die verschwundenen Kategorien müssen dann manuell aus der DB (con_cat und con_cat_lang) gelöscht werden. In der con_cat_tree gibts keine Einträge der verschwundenen Kategorien. Offenbar werden die beim Verschieben gelöscht.

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von Oldperl » Fr 3. Jul 2009, 08:37

Hallo econsul,

vielen Dank für die Information.
Ich habe dein Vorgehen in einer Demoinstallation (4.8.12) nachzuvollziehen versucht. Leider verschwinden bei mir dadurch keine Kategorien (Bäume).
Kannst du diesen Fehler bei dir reproduzierbar darstellen? Wenn ja, steht das Projekt online und kann man da mal reinschauen?

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

econsul
Beiträge: 29
Registriert: Do 22. Jan 2004, 17:04
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von econsul » Fr 3. Jul 2009, 14:38

Ja ist leider nachvollziebar.
Die "verlorenen" Kategorien sind unter Content > Artikel noch da
Im Kategorie-Menu aber weg.

Die Login-Daten habe ich per PN geschickt.
Achtung: Ist ein Testmandant in einem produktiven Grossprojeket mit 28 Mandanten...

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von Oldperl » Fr 3. Jul 2009, 16:37

Hallo econsul,

danke für den kurzen Einblick. Zumindest konnte ich den Fehler und das Fehlerbild mal sehen.
Ich werde nun versuchen hier lokal einen ähnlichen Testaufbau zu machen (Mehrmandant, mehrere Sprache, etc.). Das wird aber ein wenig dauern (auser jemand hätte eine DB für mich).

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

econsul
Beiträge: 29
Registriert: Do 22. Jan 2004, 17:04
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von econsul » Fr 10. Jul 2009, 15:53

Hallo Ortwin

Ohne in die Tiefe des Problems zu sehen.
Ist es nicht möglich, dass beim Verschieben einfach in der Tabelle con_cat, die "preid" falsch gesetzt oder eben nicht auf 0 gesetzt wird?

Gruss
Michael

MPSN
Beiträge: 3
Registriert: Mo 26. Mai 2008, 11:51
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von MPSN » Di 15. Sep 2009, 16:21

Hallo econsul, hallo Ortwin,

bei uns taucht das gleiche Problem auf (Kategorien unter Content/Artikel noch sichtbar, unter Content/Kategorien nicht mehr), im Frontend zusätzlich folgende Fehlermeldung:
Fatal error: Could not display error page. Error to display was: 'No start article in this category'
Warning: Cannot modify header information - headers already sent by (output started at /Pfad/mandant/front_content.php:385) in /Pfad/mandant/front_content.php on line 476

Es wird kein (in allen Kategorien korrekt gesetzter) Startartikel gefunden, da irgendwie nicht auf die Kategorien zugegriffen werden kann. Der Mandant lief bis zur Bearbeitung der Kategorien einwandfrei.

Das System ist auch Contenido 4.8.12, mehrere Mandanten, außer beim Demo-Mandanten jeweils nur eine Sprache.

Gibt es schon eine Lösung für das Problem? Oder wenigstens eine Möglichkeit, die Struktur wieder einfach herzustellen?

Grüße
Michael

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von Oldperl » Di 15. Sep 2009, 17:02

Hallo Michael,
MPSN hat geschrieben:Gibt es schon eine Lösung für das Problem? Oder wenigstens eine Möglichkeit, die Struktur wieder einfach herzustellen?
Weder noch, leider. Ich bin bisher noch nicht mal dazu gekommen einen Testaufbau zu haben um das nachzuvollziehen. Auch hat sich bisher noch niemand gemeldet der da mal ein DB-Backup für mich hätte.
Und wenn ich ehrlich bin ist das auch ein relativ hoher Zeitaufwand, der irgendwie nur sinnvoll ist, wenn man betroffen ist, bzw. wenn man dafür entlohnt wird. :roll:

Trotzdem würde ich mal schauen, wenn ich eine mehrmandanten DB hätte und diese mal auf nem Testserver aufsetzen könnte.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von xmurrix » Fr 4. Dez 2009, 13:09

Hallo zusammen,

ich habe auch gerade so einen Fall. Der Kategoriebaum unter Content -> Kategorie ist unvollständig, es fehlen also etliche Teile des Baums.

Unter Content -> Artikel wird der komplette Kategoriebaum aber dargestellt.

Vermutlich liegt es an fehlerhaften Datensätzen in {prefix}_cat (in parentid, preid, postid). Bevor ich jetzt die include.str_overview.php auseinander nehme, würde ich gerne wissen, ob jeman schon eine Lösung zur Rekonstruktion des Kategoriebaumes hat. Der Weg über das Leeren des {prefix]_cat_tree, mit Neuanlage von Kategorien war nicht erfolgreich.

Grüße
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

MPSN
Beiträge: 3
Registriert: Mo 26. Mai 2008, 11:51
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von MPSN » Fr 4. Dez 2009, 16:23

Hallo xmurrix,

die bekannten Lösungsvorschläge hast Du schon alle versucht? Ich fasse hier einfach nochmal meine damaligen Ergebnisse (die bei mir leider nicht geholfen haben) zusammen:

- verschwundene Kategorie über URL-Manipulation einer anderen Kategorie unterordnen
http://forum.contenido.org/viewtopic.ph ... 65&start=0

- con_cat_tree löschen:
http://forum.contenido.org/viewtopic.ph ... en#p114921

- preid der haupnavi auf 0 setzen:
http://forum.contenido.org/viewtopic.ph ... en#p102351

- unter "Kategorie" eine neue anlegen (ohne sie zu speichern) (wahrscheinlich nur 4.6):
http://forum.contenido.org/viewtopic.ph ... en#p115861

Vielleicht helfen die Tipps Dir ja.

Grüße
Michael

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von xmurrix » Fr 4. Dez 2009, 20:28

Hallo MPSN,

danke für die Auflistung der Links. Ein paar davon habe ich ausprobiert, eine die Variante mit der URL-Manipulation ist sehr aufwändig, da es sich in meinem Fall um etliche Kategorien handelt. Hatte gehofft, dass jemand da ein Script hat, mit dem sich die Kategoriestruktur wiederherstellen lässt. Wohl oder übel muss ich das dann händisch machen.

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

victor
Beiträge: 70
Registriert: Mo 27. Jan 2003, 08:54
Wohnort: Kassel
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von victor » Mi 13. Jan 2010, 16:05

Gibt es dazu jetzt eigentlich eine ECHTE Lösung oder nur diese Lösungsansätze. Hab nämlich auch das Problem das die Kategorien verschwinden und dadurch gleich alle 3 Mandanten rumspinnen.! Ist ne 4.8.12. Weil keiner der Lösungsansätze hat mir geholfen. Überlege schon ob ich aus den 3 Mandanten nicht je eine Installation mache.
"Niemand weiss mehr als alle zusammen"

DerFrank
Beiträge: 72
Registriert: Do 17. Dez 2009, 12:37
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von DerFrank » Mi 13. Jan 2010, 21:09

Ja, gibt es. Wird so schnell wie möglich zum Download angeboten. Dann übrigens mit Drag 'n Drop der Kategoriebäume. Also bitte noch ein wenig Geduld.
aitsu open source cms framework für contenido bei googlecode...

victor
Beiträge: 70
Registriert: Mo 27. Jan 2003, 08:54
Wohnort: Kassel
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von victor » Mi 13. Jan 2010, 21:14

Ok, ich werde jetzt die 2 betroffenen Mandanten trotzdem als neue Mandanten anlegen mit neuer Sprache, dann scheint es zu funktioniern. I hope. Jedenfalls habe ich das lokal getestet. Bei 6 CMS Seiten ist das ja auch nicht das Problem. Aber wenn jemand 100 Seiten und mehr hat, der ist verdammt am kotzen.
Busy Victor
"Niemand weiss mehr als alle zusammen"

Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Re: [4.8.12] Kategorieansicht im Backend verschwindet

Beitrag von Halchteranerin » Do 14. Jan 2010, 21:09

Ich kriege hier so ganz leicht die Krise. Aber nur ganz leicht. :twisted:

Also ... 4.8.12 Neuinstallation. Mit Beispielmandanten, Modulen etc. Inhalte des Beispielmandanten gelöscht, Main-Kategoriebaum geändert, Kategoriebäume Metanavigation und System erstmal so belassen. Zwischendurch Sprache von Deutsch auf Rumänisch geändert (das war wahrscheinlich der Fehler :twisted:) und Englisch gelöscht. Es gibt nur den einen Mandanten. Irgendwann fällt mir auf, dass der Text auf der Startseite nicht mehr erscheint. Gucke im Backend, Main-Kategoriebaum verschwunden. Die dort angelegten Kategorien sind vorhanden, die anderen beiden Kategorienbäume samt Inhalt sind ebenfalls verschwunden. Unter Content-Artikel ist noch alles vorhanden, außer der Kategoriebezeichnung "Main", dort steht nichts, nur darunter die Kategorien. Im Errorlog keine Einträge!

con_cat_tree geleert, neue Test-Kategorie angelegt, die Kategorien unter Main sind wieder da, aber Main selbst und die anderen beiden Kategorienbäume bleiben weg. Dann habe ich auch Ortwins obige Änderung eingebaut, hat nichts gebracht. Danach wieder con_cat_tree geleert, neuen Kategoriebaum angelegt, wieder wie oben: die Kategorien unter Main sind wieder da, aber Main selbst und die anderen beiden Kategorienbäume bleiben weg. Ich habe nicht viel Inhalt, aber ich hatte schon einige Startartikel angelegt und habe keine Lust, wieder bei Null anzufangen *heul*.

Hülfe bütte!
Bitte keine unaufgeforderten Privatnachrichten mit Hilfegesuchen schicken. WENN ich helfen kann, dann mache ich das im Forum, da ich auch alle Postings lese. PN werden nicht beantwortet!

Gesperrt