hallo,
ich möchte für eine frontend plugin extension eine SelectListe mit db content füllen.
die select box soll folgendes enthalten, liste mit allen seiten die unter einem bestimmten wurzelverzeichnis liegen. angezeigt wird der title, value ist die uid.
sql technisch kein problem:
$query = "SELECT title, uid FROM `pages` WHERE pid = 13 ORDER BY title";
mein problem is das ich aus der datei class.tx_image_tx_image_details_country.php wo der sql befehl drin steht keine gescheite über gabe an
$params["items"][]=Array($pObj->sL(?),?); hinbekomme.
class.tx_image_tx_image_details_country.php:
<?
class tx_image_tx_image_details_country {
function main(&$params,&$pObj) {
$query = "SELECT title FROM `pages` WHERE pid = 13 ORDER BY title";
$res = mysql(TYPO3_db,$query);
$out= array();
while($row = mysql_fetch_assoc($res)){
$out[]=$row;
}
$params["items"][]=Array($pObj->sL(???),???);
}
}
if (defined("TYPO3_MODE") && $TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/image/class.tx_image_tx_image_details_country.php"]) {
include_once($TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["ext/image/class.tx_image_tx_image_details_country.php"]);
}
?>
Wie muss die klasse richtig aussehen?
was mus ich an $pObj->sL() übergeben?
Was macht die funktion?
wo gibt es eine referenz zu $pObj? in TREF steht nix!
Bin für alle tipps, erklärungen, ...
SEHR DANKBAR 🙁
Problem gelöst,
$pObj...
intressiert mich aber weiterhin
Das hört sich fast so an also ob es in Typoscript nicht möglich wäre...
dabei bin ich verzweifelt am Suchen nach einer Möglichkeit sqlAbfragen auch mit typo3 zu machen....
mein jetztiger Ansatz ist dabei folgender...
# Default PAGE object:
page = PAGE
page.typeNum = 0
page.10 = TEXT
page.10.value = HELLO WORLD!
page.40 = CONTENT
page.40{
table = tt_content
select {
pidInList = 51
orderBy = sorting
where = colPos=0
#limit = 2, 2
max = 1
}
}
soweit bekomme ich aber nur das letzte Element...
wo gibt es denn eine Dokumentation ob ich limit einsetzen kann....
zudem quält mich das Problem...
in Typo3-Form zu schreiben:
PHP:
SELECT pid FROM pages WHERE uid = 49
// also alle direkten unterseiten der Seite 49
um dann mit den result1 , 2, 3 ....
die Abfrage nach den CONTENT zu machen und auszugeben
also
SELECT * FROM tt_content WHERE pid = result1
SELECT * FROM tt_content WHERE pid = result2
SELECT * FROM tt_content WHERE pid = result3
SELECT * FROM tt_content WHERE pid = result4
Oder gibt es eine Andere Möglichkeit von den ersten 4 Unterseiten... welche aber evtl auch hinzugefügt werden können..
ein Contentelement zu holen was z.B. immer links steht.?
um eine Antwort wäre ich dankbar
Danke für den Link momentan habe ich einen eigenen Lösungsansatz und bekomme nur nicht eine wahrscheinlich ganz kleine Kleinigkeit nicht hin.
ich erhalte in meinem Script immer einen wert der in eine field feld eingetragen werden muss.
die Zahlen zeigt der Browser auch schön an nur brauch ich sie um die nächste Abfrage zu machen...
für alle die es interessiert und die mir vielleicht doch noch einen tip geben können mein Script:
# Default PAGE object:
page = PAGE
page.typeNum = 0
page.10 = TEXT
page.10.value = HELLO WORLD!
# erste Seite
# gibt die uid Unterseiten von 0 - 4 (begin bis begin+max) von der Seite mit der uid 50 aus
page.20 = CONTENT
page.20{
table = pages
select {
pidInList = 50
orderBy = sorting
begin = 0
max = 4
}
wrap = <br> | <br>
renderObj = TEXT
renderObj.field = uid
renderObj.intval = 1
renderObj.wrap = <br> | <br>
}
##################(klappt)##############################
temp = CONTENT
temp {
table = pages
select {
pidInList = 50
orderBy = sorting
begin = 0
max = 1
}
wrap = <br> | <br>
renderObj = TEXT
renderObj.field = uid
renderObj.intval = 1
renderObj.wrap = <br> | <br>
}
##################################################
#########und zeigt sie an #############################
##################################################
page.49 = TEXT
page.49.value = <table widht = 800 height = 300 border=1 cellpadding=0 cellspacing=0><tr><td>
page.50 < .temp
##################################################
###hier muesste bei pidInList = irgendwas mit .temp.renderObj.field##
### stehen bin noch am staunen und rätseln ##################
##################################################
page.60 = CONTENT
page.60{
table = tt_content
select {
pidInList = temp.renderObj.field
orderBy = sorting
where = colPos=1
begin = 0
max = 1
}
}
page.61 = TEXT
page.61.value = </td></tr></table><br>
page.100 < temp