Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

MySQL Fehler nach Änderung einer PHP Datei

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
mark007q
PostRank 5
PostRank 5
Beiträge: 225
Registriert: 11.09.2005, 15:43
Wohnort: Bochum

Beitrag von mark007q » 09.05.2006, 18:28

Hi zusammen,

eine Modifikation, die erfolgreich unter der Version MySQL 4.x getestet wurde, erzeugt leider eine Fehlermeldung bei meiner Version 4.0.23 bzw. auch bei 3.23.58.

Im Detail handelt es sich um folgende Modifikation in der Datei members.php:

Dies:

Code: Alles auswählen

#
#
### Sortier - Feld
switch ($_GET['sortfield']) {
    case 'name':
        $SORT_BY = 'name';
        break;
wurde am das erweitert:

Code: Alles auswählen

case 'plz':
        $SORT_BY = 'plz';
        break;
und folgendes:

Code: Alles auswählen

#
#
### Liste ausgeben
$result = $_db->query('SELECT *
                       FROM `'.$_cfg['DB_PREFIX'].'user` '.$where.'
                       ORDER BY '.$SORT_BY.' '.$_GET['sortorder'].'
                       LIMIT '.$L_AB.', '.$_config['ANZ_MEMBERS']);
Wurde durch das ersetzt:

Code: Alles auswählen

#
#
### Liste ausgeben
$result = $_db->query('SELECT *
                       FROM `'.$_cfg['DB_PREFIX'].'user` u
                       LEFT JOIN
                        (SELECT name as fieldname, value as plz, user_id FROM `'.$_cfg['DB_PREFIX'].'user_field_value` ufv
                          LEFT JOIN `'.$_cfg['DB_PREFIX'].'user_field` uf ON ufv.field_id=uf.id WHERE name="plz") ufv ON u.id=ufv.user_id
                       '.$where.'
                       ORDER BY '.$SORT_BY.' '.$_GET['sortorder'].'
                       LIMIT '.$L_AB.', '.$_config['ANZ_MEMBERS']);
Wenn nun die Datei members.php aufgerufen wird, erscheint folgende
Fehlermeldung:


SQL Error: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT name as fieldname, value as plz, user_id FROM `pmf_user_

SELECT *
FROM `pmf_user` u
LEFT JOIN
(SELECT name as fieldname, value as plz, user_id FROM `pmf_user_field_value` ufv LEFT JOIN `pmf_user_field` uf ON ufv.field_id=uf.id WHERE name="plz") ufv ON u.id=ufv.user_id

ORDER BY reg DESC
LIMIT 0, 50

Wo genau liegt der Fehler ... hat jemand eine Idee?