[TYPO3-german] Re-2: Anfängerprobleme: erstes einfaches Plugin und DB-Ausgabe

Detlef Fluess fluess at 2-ad.de
Thu Dec 20 11:00:45 CET 2007


> Nabend Detlev!
> 
> Ich bin gerade nur zufällig auf Dein Posting gestoßen... Studieren geht 
> über probieren, das stimmt! Da biste also auf dem richtigen Weg.
> 
> Aber gönne Dir den Gefallen es von vorn herein über die TYPO3 API zu machen.
>  Das hält Deinen Code sauberer und macht ihn besser wiederverwertbar.

Dazu muss ich aber sagen ,dass der Code vom Kickstarter erzeugter StandardCode und der CodeSchnipsel direkt eine Lösung von Kasper Skårhøj ist. Ich habe auch gar kein Interesse daran exotisches zusammenzukleben. 

Aber naja, vielleicht erwarte ich zu viel, wenn ich auf eine funktionierende Lösung meines Problems warte. Ich dachte nur, dass ich nicht der Einzige bin, der vor solch einem Problem stand dachte eine Woche erfolglose "Bastelei" wäre genug um danach nach einer möglichen Lösung zu fragen. Ich verliere nämlich langsam die Lust daran. 

Gibts am Ende keine so einfache Lösung? Ich brauche erstmal das Erfolgserlebnis, um mich weiteren Herausforderungen anzunehmen. Nur wie es aussieht, finde ich hier wohl auch nicht was ich suche. Aber vielleicht klapts ja noch. 

vg, Detlef 


 
> Verabschiede Dich also von sämtlichen MySQL befehlen die Du so kennt und 
> studiere diese Seite hier:
> 
> http://typo3.org/fileadmin/typo3api-4.0.0/de/d07/classt3lib__DB.html
> 
> Eine Instanz der Klasse findest Du in
> $GLOBALS['TYPO3_DB']
> 
> Und wenn Du wissen möchtest was für ein Query generiert wurde schreibst Du 
> vor der eigentlichen Abfrage
> 
> $GLOBALS['TYPO3_DB']->store_lastBuiltQuery = 1;
> 
> und nach der Abfrage
> 
> debug($GLOBALS['TYPO3_DB']->debug_lastBuiltQuery);
> 
> Damit das dann auch was bewirkt musst Du allerdings noch die Extension cc_
> debug installieren und im Installtool unter All configuration einen IP 
> Adressfilter so ändern, dass Dir Debugmeldungen auch angezeigt werden.
> 
> Und nun wieder viel Spaß und Erfolg beim weiteren ausprobieren...
> 
> Viele Grüße,
> Stefan Precht
> 
> 
>   (ist manchmal auch prima um im phpMyAdmin mal etwas mit dem Query 
> herumzuspielen)
> 
> 
> Detlef Fluess wrote:
> > Hallo liebe TYPO3 ler, > > nun habe ich schon seit Tagen einige Foren 
> > durchforstet und ihr seid meine letzte Hoffnung.
> > > Ich habe mit dem Kickstarter eine Extension mit Plugin erstellt und möchte 
> > > folgedes erreichen... vereinfache mal ein wenig die Beschreibung:
> > > Es gibt zwei Tabellen. > > Tabelle 1 enthält einige Felder mit 
> > > Informationen
> > Tabelle 2 die Felder PLZ und ORT
> > > Die Tabelle 2 habe ich als DB Relation in die Tabelle 1 gehängt, wobei 
> > > mehrere PLZ dem Datensatz der Tabelle 1 zugeordnet werden können/sollen.
> > > Das Plugin zeigt im FE die Tabelle 1, ich bekomme eine schöne Liste und mit 
> > > Klick lande ich in der Single-Ansicht mit allen Details der Tabelle 1.
> > > Das erste Problem, die zugehörigen PLZ's werden nicht ausgegeben, sondern 
> > > nur die uid des in Tabelle 2 zugehörigen Datensatzes. > Dieses Problem 
> > > konnte ich aber mit Hilfe des Videos von Kasper (Rendering The Category 
> > > Title) zum Teil beheben. Denn das klappt nur, wenn _EINE_ PLZ zugeordnet 
> > > ist. > > Problem 1: Sobald mehrere PLZ zugeordnet sind, erfolgt gar keine 
> > > Ausgabe. > Problem 2: Das nächste, aber viel wichtigere ist, dass die PLZ 
> > > mit in die Suche mit aufgenommen wird. Das funktioniert nicht.
> > > Ich versuche nun schon seit einer Woche diese Probleme zu knacken. Kann mir 
> > > vielleicht jemand helfen? Gern sende ich auch die ganze class.
> > > Der Schnipsel in der function "getFieldContent($fN)" sieht so aus:
> > [code]
> > case 'kd_plz':
> > 	if (!count($this->plzBereichCache)) {
> > 	$query = 'SELECT * FROM tx_dfhsw_plz WHERE pid=118  '.$this->cObj->
> > enableFields('tx_dfhsw_plz');
> > > //das funktioniert nicht, denn für "intval($GOBALS['TSFE']->id" wird immer "
> > > 00" eingesetzt ????
> > //geht nicht $query = 'SELECT * FROM tx_dfhsw_plz WHERE pid='.intval($
> > GOBALS['TSFE']->id).' '.$this->cObj->enableFields('tx_dfhsw_plz');				> 	$
> > res = mysql(TYPO3_db, $query);
> > 	while ($row = mysql_fetch_assoc($res)) {
> > 		$this->plzBereichCache[$row['uid']] = $row;
> > 	}
> > 	}
> > 	return htmlspecialchars($this->plzBereichCache[$this->internal['currentRow'
> > ]['kd_plz']]['plz']);
> > 	break;
> > [code][/code] > > _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.netfielders.de
> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german
> 
> To: typo3-german at lists.netfielders.de




More information about the TYPO3-german mailing list