Hallo @all, ein frohes neues noch...
Ich habe meine Extension (fast) vollendet, läuft eigentlich so wie ich wollte. Nur ein Problrm besteht noch. Wie stelle ich an, dass eine andere Seite für das Plugin zur SingleAnsicht aufgerufen wird?
Im Plugin selbst wird ja "showUid" geprüft und falls übergeben die Single-Funktion aufgerufen, die dann aber auf einer anderen Seite angezeigt werden soll.
"Der Pferdefuss" die UID soll nicht über CMD, sondern aus einem Feld der DB ausgegeben werden; eigentlich auch noch kein Problem, so lange sich das Feld in der selben Tabelle, wie die Liste befindet. Diese UID ist aber in einer anderen Tabelle abgelegt, die sich zur Haupttabelle in Relation befindet.
Hat jemend eine Idee?
D.
Hallo,
leider nichts verstanden! gehts um den link zu einer singleview oder gehts um die singleview selbst oder was?
niemand hat deine extension bzw dessen Funktionen vor den Augen
georg
ok vielleicht ein wenig verwirrend ausgedrückt. :-)
Meine Extension erzeugt die klassische Liste eines Datensatzes. Klickt man auf einen Link in der Liste, dann wird der Datensatz komplett Angezeigt. Die Ausgabe erfolgt nun auf der selben Seite (UID) wo auch die Liste ausgegeben wird.
Ich möchte den einzelnen Datensatz (also singleView) aber auf einer anderen Seite Ausgeben.
In der tt_news-Extension ist es auch so gelöst, dass man in den Contstants die Ausgabe ID der SingleAnsicht bestimmen kann. Das ganze Konstrukt dort ist mir aber zu kompliziert, um das zu verstehen. Das geht sicher auch einfacher oder?
Das ist meine etwas unkonvetionelle Lösung.. wusste mir nicht anders zu helfen aber das funktioniert noch nicht.
vG Detlef
function plz_lookup($Feld, $ID) {
$ID = $this->getFieldContent('uid');
$Rueckgabe = '';
$Abfrage = 'SELECT '.$Feld.'
FROM tx_dfhsw_versorger
INNER JOIN (
tx_dfhsw_versorger_kd_plz_mm
INNER JOIN tx_dfhsw_plz
ON tx_dfhsw_versorger_kd_plz_mm.uid_foreign = tx_dfhsw_plz.uid
)
ON tx_dfhsw_versorger.uid = tx_dfhsw_versorger_kd_plz_mm.uid_local
WHERE (tx_dfhsw_versorger.uid='.$ID.')';
if (!$ErgebnisLookup = mysql_query($Abfrage)) {
$Rueckgabe = '';
} else {
$Zeile = mysql_fetch_row($ErgebnisLookup);
$Rueckgabe = $Zeile[0];
}
return $Rueckgabe;
}
Ok.. noch mal was zum besseren Verständnis angehängt.
Die Funktion gerade soll das Feld für den Link aus einer anderen Tabelle ermitteln, weil über "getFieldContent" nur die Felder der "currentTable" gefunden werden.
Den ermittelten Wert aus dem Feld möchte ich dann in den einzelnen Link der Liste dynamisch einbauen. Der Link lautet ja so:
http://meineUrl.de/[b]109[/b].html?&no_cache=1&tx_dfhsw_pi1[showUid]=1
Die 109 soll dann aus der Datenbank ersetzt werden.
Also ich habe das Problem jetzt mit dem Template gelöst:
<TD><a href="index.php?id=###SINGLE_PID###&tx_dfhsw_pi1[showUid]=###SHOW_UID###">###NAME###</a></TD>
Allerdings habe ich wohl noch ein Problemchen mit der query. Es wird nämlich zu jedem Datensatz die gleiche ###SINGLE_PID### ausgegeben, die normal anhand der uid der Tabelle 'tx_dfhsw_plz' unterschiedlich oder leer ist. Wahscheinlich ist diese verschachtelte INNER JOIN noch nicht korrekt oder es fehlt eine WHERE.
Hat ein DB-Profi vielleicht mal ein Auge für mich? 🙂
Danke schon mal.
D.