Zum Inhalt springen

Einfache SQL-Abfrage klappt nicht mit CONTENT

Erstellt am 29. Oktober 2008 · 5 Antworten · letzte Antwort am 29. Oktober 2008

Tags: Frage

Torsten.​E ·

Hier ein exemplarisches Beispiel:

temp.inhalt = CONTENT
temp.inhalt {
   table = tt_address
   wrap = |
   select {
     where=uid=5
   }
   renderObj = COA
   renderObj {
      10 = TEXT
      10 {
         field=email
         wrap=E-Mail: |
      }
   }
}
...
page.9000 < .temp.inhalt
...

Was ist an diesem Beispiel falsch ?

Torsten.E

Torsten.​E ·

Das ist nicht der Fehler.

Ich habe mal einen Fehler in die WHERE-Anweisung
geschrieben und zusätzlich SQL-Debug aktiviert.

Es wird immer nach noch zusätzlich nach der PID
gesucht. Damit finde ich natürlich nicht den
Datensatz, welchen ich Suche.

Wie kann ich diese "doofe" PID/UID Abfrage
deaktivieren. Bei RECORDS geht es mit dontCheckPid=1

Torsten.E

Torsten.​E ·

Dann mal die ganze Geschichte anders herum.

Ich habe zu bestimmten Seiten eine Adress hinterlegt (tt_address).
ganz normal im Backend. Diese Adresse wird für rggooglemap
herangezogen.

Jetzt will ich dieser Adress im Backend einen FE_USER zuweisen,
damit zusätzliche Angaben aus FE_USER angezeigt
werden können.

Ich dachte ich nehm einfach ein "Pseudo-Feld" in tt_adress
um hier den FE_USER einzutragen, damit ich diesen danach
ermitteln kann.

Danach frage ich einfach über CONTENT den zugehörigen
FE_USER ab.

Und wie stell ich das jetzt am schlausten an ?

Torsten.​E ·

Jetzt habe ich mas Beispiel komplett:

In tt_adress im Feld "title" trage ich die ID
des FE_USERS ein. Somit bestünde jetzt die Möglichkeit
zur aktuellen Seiten über tt_address den zugewiesenen
FE_USER zu suchen.

Geht aber nicht, da "uidInList.field=title" nicht funktioniert.

temp.inhalt = COA
temp.inhalt {
   5 = CONTENT
   5 {
      table=tt_address
      select{
         # Sollte eigentlich die Seiten-ID sein
         # aber Wert im Augenblick noch manuell
         pidInList=179
	 selectField=title
	 max=1
      }
      renderObj=COA
      renderObj{
         10 = CONTENT
         10 {
            table=fe_users
            select{
               # User-ID trage ich hier "uidInList=2"
               # ein, funktioniert es. D.h. er holt den
               # Wert nicht aus tt_address

               uidInList.field=title

	       # Seiten-ID von "Websitebenutzer"
               pidInList=119
	       max=1

               # Um SQL-Fehler zu prodzieren
               # fuer DEBUG-Zwecke
	       # where=7zuz
	       selectField=uid,email
            }
            renderObj=COA
            renderObj{
               10=TEXT
	       10{
	          field=uid
	          wrap=U: |
               }
	       20=TEXT
	       20{
	          field=email
	          wrap=E: |
	       }
            }
         }
      }	 
   }	 
}

page.9000 < .temp.inhalt

Torsten.E