[TYPO3-german] SELECT_mm Abfrage ?

"M. Graßhoff" m.grasshoff at signup-design.de
Mon Aug 17 13:25:08 CEST 2009


Hallo liebe Liste,

ich habe gerade ein Problem mit Typo-konformen DB Abfragen. Möchte 
langsam mal lernen, mich an die T3 Code Conventions zu halten.
Nun habe ich ein Problem mit folgender Abfrage:

//$uid kommt aus tx_dgapraxen_praxis
$results2 = 
$this->getItems('*','tx_dgapraxen_praxis_mitarbeiter_mm','uid_local="'.$uid.'"'); 
//getItems macht ne normale SELECT-Anw.
            while(list($d,$row2) = each($results2)){
                $uid_foreign = $row2['uid_foreign'];
           
                $results3 = 
$this->getItems('*','tx_dgapraxen_mitarbeiter',('uid="'.$uid_foreign.'" 
AND hidden=0 AND deleted=0'));
           
                while(list($e,$row3) = each($results3)){
                    $arztNachName = $row3['nachname'];
                    $arztVorName = $row3['vorname'];
                    $art = $row3['art'];
                    $titel = $row3['titel'];
                    $inSuche = $row3['in_suche'];
                    if($inSuche == 1){
                        $alleMitarbeiter[$i] = $titel.' '.$arztVorName.' 
'.$arztNachName;
                    }
                    $i++;
                }
            }

Wie kann ich das ganze in eine T3-konforme SELECT_mm Query umwandeln?

Alle meine bisherigen Versuche scheiterten mit der Fehlermeldung: Call 
to a member function exec_SELECT_mm_query() on a non-object
Letzter Versuch sah so aus:
$results2 = $GLOBALS['TYPO_DB']->exec_SELECT_mm_query(
                                                    
'tx_dgapraxen_praxis.*','tx_dgapraxen_praxis_mitarbeiter_mm.uid_foreign 
AS UIDFOREIGN,tx_dgapraxen_mitarbeiter.nachname, 
tx_dgapraxen_mitarbeiter.vorname,' .
                                                    
'tx_dgapraxen_mitarbeiter.art, tx_dgapraxen_mitarbeiter.titel, 
tx_dgapraxen_mitarbeiter.in_suche ',
                                                    
'tx_dgapraxen_praxis',//Tablename, local table
                                                    
'tx_dgapraxen_praxis_mitarbeiter_mm',//Tablename, relation table
                                                    
'tx_dgapraxen_mitarbeiter',//Tablename, foreign table
                                                    
'tx_dgapraxen_praxis_mitarbeiter_mm.uid_local='.$uid.' AND ' .
                                                            
'tx_dgapraxen_mitarbeiter.uid=UIDFOREIGN AND hidden=0 AND 
deleted=0',//where clause
                                                    '',
                                                    '',
                                                    '') ;
            while($row2 = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($results2)){
                    $arztNachName = $row2['nachname'];
                    $arztVorName = $row2['vorname'];
                    $art = $row2['art'];
                    $titel = $row2['titel'];
                    $inSuche = $row2['in_suche'];
                    if($inSuche == 1){
                        $alleMitarbeiter[$i] = $titel.' '.$arztVorName.' 
'.$arztNachName;
                    }
                    $i++;
                }

Danke für Eure Hilfe!!!

Gruß,
M-ko



More information about the TYPO3-german mailing list