TYPO3Jack.net - Das TYPO3 Mailinglist Forum Archiv

TYPO3 Mailingliste: nicht fragen - lesen!

TYPO3 Mailingliste: nicht fragen - lesen!_RR_1-->
Zurück   TYPO3Jack.net - Das TYPO3 Mailinglist Forum Archiv > TYPO3-Mailinglisten: DEUTSCH > typo3-german@lists.netfielders.de

Registrieren Hilfe Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren
  #1  
Alt 19.12.2007, 18:53
Detlef Fluess
Gast
 
Beiträge: n/a
Standard [TYPO3-german] Anfängerprobleme: erstes einfaches Plugin und DB-Ausgabe

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;

_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #2  
Alt 19.12.2007, 23:54
Stefan Precht
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german]Anfängerprobleme: erstes einfaches Plugin und DB-Ausgabe

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.

Verabschiede Dich also von sämtlichen MySQL befehlen die Du so kennt und
studiere diese Seite hier:

http://typo3.org/fileadmin/typo3api-...t3lib__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;
> >
>

_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #3  
Alt 20.12.2007, 15:09
Steffen Kamper
Gast
 
Beiträge: n/a
Standard Re: [TYPO3-german] Anfängerprobleme: erstes einfaches Plugin und DB-Ausgabe

_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
  #4  
Alt 21.12.2007, 00:48
bernd wilke
Gast
 
Beiträge: n/a
Standard [TYPO3-german] Re: Anfängerprobleme: erstes einfaches Plugin und DB-Ausgabe

Detlef Fluess schrieb am Wed, 19 Dec 2007 17:53:02 +0000:

> 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.


klingt nicht gerade nach "einfaches Plugin", zumindest nicht so ohne
genauere Kenntnisse der TYPO3-API bzw. auch der von TYPO3 benutzten
Datenstrukturen.

> 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.


Frage: wie legt TYPO3 mehrere Werte in einem Feld ab?
in einer Kommaseparierten Liste. Oder in einer eigenen Relationen-
Tabelle, wenn man das im Kickstarter so gewählt hat.
Bei deiner Beschreibung geh ich von der Kommaseparierten Liste aus.
Bei der Anzeige musst du das Feld also erstmal auseinanderpflücken, dann
mit den Werten ersetzen, dann wieder zusammen packen.


> 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.


überleg mal wie gesucht wird:
select * from tab1 where feld like "%suchstr%" ...
wie soll das gehen, wenn die eigentlichen Werte gar nicht in Tabelle tab1
sondern in tab2 sind?

Entweder du arbeitest auf einem JOIN (macht die API nicht so einfach
mit ) oder du schaltest die Suche intelligent davor.

vielleicht hilft dir meine Extension opera_visits. Ich hab zwar nicht die
Mehrfach-Einträge, aber ich sortiere und suche da über die Felder der
zweiten Tabelle.
Ich glaube aber dass du für Mehrfacheinträge einen anderen Ansatz
brauchst!

viel Spaß
Bernd
_______________________________________________
TYPO3-german mailing list
TYPO3-german (AT) lists (DOT) netfielders.de
http://lists.netfielders.de/cgi-bin/...o/typo3-german
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
 

Lesezeichen

Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
[TYPO3-german] Einfaches Shopsystem oder ähnliches Christian Voigt typo3-german@lists.netfielders.de 0 09.10.2007 18:01
[TYPO3-german] Plugin Konfiguration aus FE-Plugin heraus setzen Adler, Jesse typo3-german@lists.netfielders.de 1 03.09.2007 20:53
[TYPO3-dev] howto display a record from another plugin in myfe-plugin? Markus Schorer typo3-dev@lists.netfielders.de 2 14.05.2007 18:34
[TYPO3-german] Erstes Projekt Übernahmen von Formularen? dirvish typo3-german@lists.netfielders.de 2 15.03.2007 14:48
[TYPO3-german] XML Ausgabe von tt_address mit 'xml_contentrendering' Jesse Adler|Illuminatus Web Design Berlin typo3-german@lists.netfielders.de 1 24.12.2006 13:54


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:45 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.1.0
Template-Modifikationen durch TMS

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75