Seite 1 von 1

Kategorien und Artikel lassen sich nicht mehr hinzufügen

Verfasst: Mi 19. Jan 2005, 11:06
von gborchers
Hallo,
ich habe auf meinem WebSpace mehrere Contenido-Installationen laufen. Seit kurzem ist es bei 2 Installationen nicht mehr möglich, Kategorien oder Artikel hinzuzufügen. Im Error Log erscheint dann z.B.:

[19-Jan-2005 10:15:40] Invalid SQL: INSERT INTO m4o_cat (idcat, parentid, preid, postid, idclient) VALUES('16', '25', '0', '0', '1')<br><br>
[19-Jan-2005 10:15:41] Invalid SQL: INSERT INTO m4o_cat_lang (idcatlang, idcat, idlang, name, visible, public, idtplcfg) VALUES('16','16','1','Start ·','0','1','0')<br><br>

Auf meinem PC läuft das System unter XP einwandfrei und der Fehler läßt sich nicht nachbauen. Ich habe auch schon die Tabellen aus der examples.sql von meinem PC auf die Datenbank im Web übertragen, weil ich eine Schlüsselverletzung vermutet habe. Haut aber auch nicht hin, es ändert sich nichts.
Gruss, Guenter

Verfasst: Mi 19. Jan 2005, 12:20
von timo
ähm kannst du mal das Statement in den phpMyAdmin einfügen und uns verraten, was dort herauskommt?

Verfasst: Mi 19. Jan 2005, 12:36
von gborchers
Es gibt eine Fehlermeldung und die lautet:

#1062 - Duplicate entry '16' for key 1

Es ist also doch ein Schlüsselfehler, aber wodurch entsteht er?

Verfasst: Mi 19. Jan 2005, 13:41
von timo
vermutlich stimmen die Einträge in der con_sequence nicht...

Welche Contenido-Version ist das?

Verfasst: Mi 19. Jan 2005, 13:47
von gborchers
Ich arbeite mit 4.4.4

Ich habe gerade mal in der con_sequence nachgesehen: für die con_cat und con_cat_lang ist als Wert jeweils die 16 eingetragen, also der reklamierte Schlüssel. Tatsächlich ist aber der letzte Schlüssel in beiden Tabellen 36.

Darf ich das zu Fuß ändern und wodurch kommt das zustande?

Verfasst: Mi 19. Jan 2005, 13:54
von timo
Woher das kommt weiß ich nicht - hast du zufällig mal Daten von einer anderen Installation eingespielt?

Beheben kannst du es mit der Datei "updateseqruntime.php" - diese setzt die Werte in der con_sequence auf die aktuellsten Werte.

Verfasst: Mi 19. Jan 2005, 14:43
von gborchers
Klasse! Das hat funktioniert.

Ja, ich habe die Tabellen, die in der examples.sql sind, auf meine Contenido-Installation gespielt. Das ist dann also bisher zufällig gut gegangen.

Danke!

Verfasst: Mi 19. Jan 2005, 14:46
von timo
ja von Hand solltest du die auf keinen Fall einspielen ;)

Nur über das Setup...weil dann dort auch die sequence-Tabelle geupdatet wird.

Ich verschiebe das mal, da kein Bug ;)

Verfasst: Mi 19. Jan 2005, 15:25
von gborchers
Das Setup will ich ja aber gar nicht neu aufrufen. Ich habe es sogar gelöscht, damit nicht jemand anderes meine Installation optimiert :wink:

Kann man denn sagen: die Tabellen aus der examples.sql + updateseqruntime.php ist ein sicherer Weg?

Verfasst: Mi 19. Jan 2005, 15:29
von timo
nein eigentlich nicht...


die examples werden doch installiert, wenn du das Setup aufrufst? Wozu spielst du die nochmals händisch ein?

Verfasst: Mi 19. Jan 2005, 15:37
von gborchers
... weil ich nicht das Contenido-Beispiel installieren möchte, sondern die von mir entwickelte Struktur und meine Inhalte.

Mein Grundsatzproblem ist eigentlich, dass ich eine Art Workflow brauche, um Modelle, die ich auf meinem PC entwickelt habe, für verschiedene Kunden - also mehrmals - im Web zu installieren

Verfasst: Mi 19. Jan 2005, 15:39
von timo
gut, dann habe ich aber nicht verstanden, warum du die examples.sql einspielen möchtest.

Was ich auch noch nicht ganz verstanden habe:

- Entwickelst du Projekte zuhause und möchtest du diese auf ein Live-System installieren (quasi eine Art Staging)

oder

- Hast du dir eine Standard-Umgebung gebaut, die du zu den Kunden ausliefern möchtest (quasi eine Art Systemvorlage)?

Verfasst: Mi 19. Jan 2005, 15:58
von gborchers
Über die examples.sql habe ich bisher immer die für meine Installationen vorgesehene Struktur und die Inhalte transportiert.

Ich bin darauf gekommen, weil es die Datei ist, mit der beim Setup das Standardbeispiel von Contenido installiert wird.

Ich entwickel meine Projekte zuhause und installiere sie anschließend auf meiner Domain

Verfasst: Mi 19. Jan 2005, 16:02
von timo
- Bei dem ersten "Transport" und gleichzeitiger Installation von Contenido:

examples.sql ersetzen, setup mit den Beispielen ausführen.

- Bei einem einspielen von der examples.sql auf ein bestehendes System ohne Update von Contenido:

upgradeseqruntime.php ausführen.

Verfasst: Mi 19. Jan 2005, 16:06
von gborchers
Alles klar & Danke!