PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mySQL-Fehler 1052, wenn unregistrierte Gäste Rechte haben


Alles Gute
19.07.2009, 13:18
Sobald auch Unregistrierte das Recht haben, das Lexikon und seine Beiträge zu sehen, sendet das System in unregelmäßigen Abständen die Fehlermeldung "Datenbankfehler 1052" heraus.
Wenn das Lexikon auf www.cgjung-forum.de/vbglossar.php (http://www.cgjung-forum.de/vbglossar.php) auch den (nichtregistrierten) Gästen zugänglich gemacht wird*, sendet das System in unregelmäßigen Abständen (manchmal aber auch 50 mal in zwei Minuten) Fehlermitteilungen wie in den unten angehängten Beispielen.
*(Selbst bei nur 2 Rechten: "Kann Lexikon sehen" und "Kann Einträge sehen". Schreibrechte haben nur Admins bzw. spezielle Autoren, weil es sich um ein professionelles Nachschlagewerk handelt).

Von mySQL verstehe ich nichts. Kann mir jemand auf die Sprünge helfen, was dies bedeutet?
Sobald ich die (nichtregistrierten) Gäste ihrer Rechte komplett "beraube" ist da Ruhe im Busch: Keine Fehlermeldung mehr.

In einem anderen vBulletin* (www.om-om.com/om/vbglossar.php (http://www.om-om.com/om/vbglossar.php) - zur Zeit noch im Aufbau begriffen) auf demselben Strato-Server ist das gleiche Lexikon (mit denselben Inhalten) integriert. Auch hier haben nichtregistrierte Gäste lesenden Zugriff, aber dieses läuft bisher problemlos ohne Fehlermeldungen. Hier gibt es folgende Unterschiede:
*) Dieses vBulletin wird lediglich als Basissystem für vBCMS, vbglossar und downloadsII genutzt - nicht als Forum! Es gibt also keine Forenbeiträge, und das Crosslinking ist nur innerhalb des Lexikons aktiv.
An Stelle von "Forennutzern" soll es hier später "Kunden" geben. Eventuell kann das Forum dann für Kundenfeedback genutzt werden.
Viele Grüße
Alles Gute

Hier einige wahllos herausgegriffene Beispiele von Fehlermeldungen:

Datenbankfehler in vBulletin 3.8.3:

Invalid SQL:

SELECT COUNT(*) AS count
FROM cgj_vbglossar_entry AS entry
LEFT JOIN cgj_vbglossar_category AS cat ON(cat.id = entry.categoryid)

WHERE entry.status IN (1)
AND cat.status IN(1)
AND userid = 30
AND name LIKE("T%");

MySQL-Fehler : Column 'name' in where clause is ambiguous
Fehler-Nr. : 1052
Fehler-Zeit : Friday, 17.07.2009 @ 21:14:09
Datum : Friday, 17.07.2009 @ 21:14:10
Skript : http://www.cgjung-forum.de/vbglossar.php?u=30&sort=name&ltr=T&order=ASC&do=userentries
Referrer : http://www.cgjung-forum.de/member.php?u=20
IP-Adresse : 81.3.59.47
Benutzername : Unregistriert
Klassenname : vb_database
MySQL-Version :

*********************************************

Datenbankfehler in vBulletin 3.8.3:

Invalid SQL:

SELECT COUNT(*) AS count
FROM cgj_vbglossar_entry AS entry
LEFT JOIN cgj_vbglossar_category AS cat ON(cat.id = entry.categoryid)

WHERE entry.status IN (1)
AND cat.status IN(1)
AND userid = 1
AND name LIKE("Y%");

MySQL-Fehler : Column 'name' in where clause is ambiguous
Fehler-Nr. : 1052
Fehler-Zeit : Friday, 17.07.2009 @ 21:05:08
Datum : Friday, 17.07.2009 @ 21:05:08
Skript : http://www.cgjung-forum.de/vbglossar.php?u=1&sort=name&ltr=Y&order=ASC&do=userentries
Referrer : http://www.cgjung-forum.de/vbglossar.php?u=1&do=userentries
IP-Adresse : 81.3.59.47
Benutzername : Unregistriert
Klassenname : vb_database
MySQL-Version :

********************************************

Datenbankfehler in vBulletin 3.8.3:

Invalid SQL:

SELECT COUNT(*) AS count
FROM cgj_vbglossar_entry AS entry
LEFT JOIN cgj_vbglossar_category AS cat ON(cat.id = entry.categoryid)

WHERE entry.status IN (1)
AND cat.status IN(1)
AND userid = 33
AND name LIKE("S%");

MySQL-Fehler : Column 'name' in where clause is ambiguous
Fehler-Nr. : 1052
Fehler-Zeit : Friday, 17.07.2009 @ 08:50:10
Datum : Friday, 17.07.2009 @ 08:50:12
Skript : http://www.cgjung-forum.de/vbglossar.php?do=userentries&u=33&ltr=S&sort=name&order=ASC
Referrer :
IP-Adresse : 66.249.71.132
Benutzername : Unregistriert
Klassenname : vb_database
MySQL-Version :

*********************************************

Datenbankfehler in vBulletin 3.8.3:

Invalid SQL:

SELECT COUNT(*) AS count
FROM cgj_vbglossar_entry AS entry
LEFT JOIN cgj_vbglossar_category AS cat ON(cat.id = entry.categoryid)

WHERE entry.status IN (1)
AND cat.status IN(1)
AND userid = 33
AND name LIKE("E%");

MySQL-Fehler : Column 'name' in where clause is ambiguous
Fehler-Nr. : 1052
Fehler-Zeit : Friday, 17.07.2009 @ 12:51:34
Datum : Friday, 17.07.2009 @ 12:51:35
Skript : http://www.cgjung-forum.de/vbglossar.php?do=userentries&u=33&ltr=E&sort=name&order=ASC
Referrer :
IP-Adresse : 66.249.71.170
Benutzername : Unregistriert
Klassenname : vb_database
MySQL-Version :

**********************************************

usw....

ragtek
19.07.2009, 21:17
1. hast du die aktuellste Version?

2. Duplikat
3. Lösung: http://www.vbulletin-germany.org/project.php?issueid=224

Alles Gute
19.07.2009, 23:51
1. hast du die aktuellste Version?

Ja, die 1.1.0


2. Duplikat

Ich verstehe nicht, was Du mit "Duplikat" meinst.


3. Lösung: http://www.vbulletin-germany.org/project.php?issueid=224

Sorry, dass ich dies nicht selbst fand. Habe gerade die dort beschriebenen Änderungen in die vbglossar.php übertragen - und lasse mich jetzt überraschen.

Herzlichen Dank
Alles Gute

ragtek
20.07.2009, 09:37
Duplikat habe ich nur "für die Entwickler" geschrieben, damit man sich auskennt;)

Alles Gute
20.07.2009, 12:22
Ah - so.
Und wie ich heute sehe, ist das Problem tatsächlich seit der Codeänderung nicht mehr aufgetreten. Die Lösung war erfolgreich. Vielen Dank.

Alles Gute