Zum Inhalt springen

pi_list_makelist, sortieren

Erstellt am 26. Mai 2008 · 1 Antwort · letzte Antwort am 26. Mai 2008

Tags: Frage

LuckerKing ·

Hallo allerseits,

Ich will mir eine Tabelle durch die Methode pi_list_makelist
ausgeben lassen.
Das funktioniert auch soweit, nur leider beachetet er die Sortierung nicht.
D.h. wenn Sort $this->piVars["Sort"] angegeben ist passiert trotzdem nichts.

$this->conf["pidList"]=$GLOBALS["TSFE"]->id;
$this->internal["results_at_a_time"]=1000;

list($this->internal['orderBy'],$this->internal['descFlag']) = explode(':',$this->piVars['sort']);

$this->internal["currentTable"] = 'tx_nhscclosing_template';
//$this->internal["orderBy"]="name,firstname,sorting";
$this->internal["orderByList"]="name,firstname,uid,sorting";
		
$res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*", "tx_nhscclosing_template" ,"deleted=0");
//$res = $this->pi_exec_query('tx_nhscclosing_template',1);
$content .= $this->pi_list_makelist($res,  $this->pi_classParam('listTemplate'));

Da ich leider keine Vernünftige Beschreibung finde wie man mit pi_make_list eine Tabelle erstelle, habe ich mehr Schlecht als Recht
mir die Tabelle zusammengeschustert (so sieht es auch aus 🙂 )

Gruß Luckerking

LuckerKing ·

Problem ist jetzt gelöst.
Habe jetzt einfach $this->piVars["sort"] manuell ausgelesen und an der query rangehängt.

if(isset($this->piVars["sort"]) &&  $this->piVars["sort"]!="no"){
list($column, $attrib) = explode(":",$this->piVars["sort"], 2);
$orderby = $column;
if($attrib=='1'){
$orderby .= ' DESC';
}
else
{
$orderby .= ' ASC';
}
}
$res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*", "extension_table" ,"deleted=0" ,'', $orderby);

Trotzdem Danke
Luckerking