SQL - Error

Hast du einen Fehler in der aktuellen Version gefunden ? Diesen kannst du uns hier mitteilen und uns bei der Fehlersuche helfen.
klaus
Beiträge: 152
Registriert: 12. Nov 2006, 13:04
Kontaktdaten:

SQL - Error

Beitrag von klaus »

Nach Update auf 2.1.2:
Zum Testen wollte ich einen gast Zugang angelegt, es tritt beim Speichern des Profiles ein SQL-Fehler auf:
S Q L - E R R O R

CODE: 1062

Duplicate entry '88-9' for key 2

B A C K T R A C E


FILE: adm_program/system/db/mysql.php
LINE: 193
CALL: db::db_error()

FILE: adm_program/system/db/mysql.php
LINE: 77
CALL: mysqldb->db_error()

FILE: adm_program/system/classes/table_access.php
LINE: 304
CALL: mysqldb->query()

FILE: adm_program/system/classes/user.php
LINE: 265
CALL: tableuserdata->save()

FILE: adm_program/modules/profile/profile_save.php
LINE: 276
CALL: user->save()
Jochen
Team
Beiträge: 1506
Registriert: 22. Feb 2006, 18:11

Beitrag von Jochen »

Ich hab von einem meiner Nutzer des Systems die gleiche Meldung geschickt bekommen. Kann sie aber bisher noch nicht nachvollziehen.

Gruß Jochen
klaus
Beiträge: 152
Registriert: 12. Nov 2006, 13:04
Kontaktdaten:

Beitrag von klaus »

Hallo Jochen,
die Daten sind in der DB angelegt. Nun habe ich in der Benutzerverwaltung "Alle Benutzer anzeigen" gedrückt und dann versucht einen solchen fehlerhaften Datensatz zu löschen. Nach "wollen sie wirklich löschen?" kommt die fplgende Meldung:

S Q L - E R R O R

CODE: 1146

Table 'db245032099.adm_lists' doesn't exist

B A C K T R A C E


FILE: adm_program/system/db/mysql.php
LINE: 193
CALL: db::db_error()

FILE: adm_program/system/db/mysql.php
LINE: 77
CALL: mysqldb->db_error()

FILE: adm_program/system/classes/table_users.php
LINE: 209
CALL: mysqldb->query()

FILE: adm_program/administration/members/members_function.php
LINE: 184
CALL: user->delete()


vielleicht hilft das weiter bei der Ursachensuche.
TKU
Beiträge: 1
Registriert: 28. Apr 2009, 16:43

Gleiche Fehlermeldung nach Update auf neueste Version

Beitrag von TKU »

Ich bekommen die gleiche Fehlermeldung nach Update auf neueste Version. Und seit neuestem wird bei einer Postleitzahl, welche mit 0 beginnt - diese nicht mehr übernommen.

Grüße Volker
Jochen
Team
Beiträge: 1506
Registriert: 22. Feb 2006, 18:11

Beitrag von Jochen »

:?

Ich hab mir grade mal den frischen Dump von der DB gezogen wo der Fehler auftritt. Lokal bei mir kein Problem.

Auf welchen PhP/SQL Versionen läuft euer System? (Orgaeinstellungen>Systeminfos)

Gruß Jochen
klaus
Beiträge: 152
Registriert: 12. Nov 2006, 13:04
Kontaktdaten:

Beitrag von klaus »

Hallo Jochen,
hier die Infos:

ADMIDIO: 2.1.2
PHP Version: 4.4.9
MySQL Server Version: 5.0.51a-log
Safe Mode: Off
handballer
Beiträge: 8
Registriert: 15. Okt 2008, 16:15

Duplicate entry

Beitrag von handballer »

Hallo,

ich habe das gleiche Problem wie Klaus, allerdings kann ich die Datensätze wieder ohne Fehler löschen...

Gruß vom Handballer
klaus
Beiträge: 152
Registriert: 12. Nov 2006, 13:04
Kontaktdaten:

Beitrag von klaus »

Hallo Jochen,
würde es etwas bringen, wenn ich die DB von 2.1.1 wieder zurückspiele und das DB-Update zu 2.1.2 nocheinmal wiederhole??
Geht das aus der 2.1.2 oder muss ich die gesamte Version zurücksetzen?

Ich habe aber diese Fälle bei der 2.1.1 nicht getestet, möglich, dass der Fehler auch schon dort aufgetreten ist!?
Jochen
Team
Beiträge: 1506
Registriert: 22. Feb 2006, 18:11

Beitrag von Jochen »

Hallo Klaus,

wir haben uns gestern mit ein paar admdio-Leuten getroffen und die Problematik eingehend diskutiert. Wir sind auf jeden Fall dran.

Bei alle anderen die den Fahler haben wird der User trotz Fehlermeldung in die DB geschrieben, er muss dann später nur noch eine Rolle zugeordnet bekommen. Auch das Löschen funktioniert bei uns normal.

Die Ursache wird ziemlich sicher schon seit 2.1.0 vorhanden sein. Wir wissen leider noch nicht was den Fehler dann plötzlich auslöst. Es ist ein bisschen orkakelt, aber man könnte mal ausprobieren was passiert, wenn man ein backup macht und es dann wieder einspielt.

Ein erneutes update von 2.1.1 würde gehen, Du müsstest natürlich den Ordner adm_install neu hochladen. Aber auch hier ist wie gesagt keine sicherheit das es dann besser ist, oder nach einre Weile wieder auftritt.

Gruß Jochen
klaus
Beiträge: 152
Registriert: 12. Nov 2006, 13:04
Kontaktdaten:

Beitrag von klaus »

Hallo Jochen,
was mir gerade aufgefallen ist:
Ich verwende für meine Admidio-DB den Präfix "mva".
In den Fehlermeldungen, die ich oben beschrieben habe wird aber die Tabelle

Table 'db245032099.adm_lists' doesn't exist

nicht gefunden!

Ist das hilfreich?
Jochen
Team
Beiträge: 1506
Registriert: 22. Feb 2006, 18:11

Beitrag von Jochen »

Hallo Klaus,

das erklährt zumindest schon mal warum bei Dir das Löschen nicht funktioniert.

adm_program/system/classes/table_users.php Zeile 207:

Code: Alles auswählen

WHERE lsc_lst_id IN (SELECT lst_id FROM adm_lists WHERE lst_usr_id = '.$this->getValue('usr_id').' AND lst_global = 0)';
ersetzen durch:

Code: Alles auswählen

WHERE lsc_lst_id IN (SELECT lst_id FROM '. TBL_LISTS.' WHERE lst_usr_id = '.$this->getValue('usr_id').' AND lst_global = 0)';
Gruß jochen
klaus
Beiträge: 152
Registriert: 12. Nov 2006, 13:04
Kontaktdaten:

Beitrag von klaus »

Danke Jochen, die Löschung funktioniert.
handballer
Beiträge: 8
Registriert: 15. Okt 2008, 16:15

Beitrag von handballer »

Gibt es schon was neues, am besten eine Lösung, für dieses Problem?
Ist zwar nicht dramatisch, aber etwas unschön ... :wink:

Gruß vom Handballer
Jochen
Team
Beiträge: 1506
Registriert: 22. Feb 2006, 18:11

Beitrag von Jochen »

Hallo Handballer,

wir kommen der Ursache näher, haben aber noch keine Lösung. Wir wissen bisher unter anderem, dass der Fehler nur bei PHP4 auftritt. Leider sorgt das dafür, das man ihn im Quellcode nicht direkt als solchen erkennt. :cry:

Sobald wir ihn haben wird sofort Version 2.1.3 erscheinen. Bis dahin könntest Du nur Deinen Provider bitten Deinen Server auf php5 upzudaten.

Gruß Jochen
handballer
Beiträge: 8
Registriert: 15. Okt 2008, 16:15

Beitrag von handballer »

Hallo Jochen,

Hey klasse, das war doch mal ein guter Hinweis! Habe mir jetzt im Hauptverzeichniss von Admidio eine .htaccess datei reingelegt mit folgendem Inhalt:

Code: Alles auswählen

AddHandler php5-cgi .php
Damit funktioniert das Speichern fehlerfrei und die Rollenzuordnung erscheint nach dem Speichern!

Vielen Dank und Gruß vom Handballer!
Antworten