Zum Inhalt springen

aus php tt_content ausgeben...

Erstellt am 18. August 2006 · 2 Antworten · letzte Antwort am 3. Januar 2007

Tags: Frage

erskine ·

Hallo,

ich arbeite gerade an meiner aller ersten Extension ( wenn Sie den Namen überhaupt verdient :-) ).

Die Extension soll es ermöglichen, den Inhalt der Seiten für FE-User zu personalisieren. Also wenn ich

'www.domain.de/index.php?meineExt[member]=Meier'

aufrufe, dann sollte die Homeseite mit den Inhalten des FE-Users 'Meier' angezeigt werden.

Dazu habe ich eine Tabelle angelegt, die die Inhalte pro FE-User pro Seite speichert und lasse diese dann durch meine Extension ausgeben:

function main($content,$conf)	{

$this->conf = $conf;
$this->pi_setPiVarDefaults();
$this->pi_USER_INT_obj = 1;

$member = $this->piVars['member'] ? $this->piVars['member'] : 0 ;

$res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*", "fe_users","last_name = '".$member."'");
$row = $GLOBALS["TYPO3_DB"]->sql_fetch_assoc($res);
$feuser = $row["uid"];


if ($member) {
$res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*", "user_membercontent_table", "deleted = 0 and hidden = 0 and fe_user= ".$feuser." and pid=".$GLOBALS["TSFE"]->id);

while ($row = $GLOBALS["TYPO3_DB"]->sql_fetch_assoc($res)) {
$content .= "<p>".$row["header"]."</p>";
$content .= "<p>".$row["bodytext"]."</p>";	
}	
}

return $content;
}

Naja, ich weiß nicht optimal, aber es funktioniert. Allerding möchte ich natürlich den 'normalen' Inhalt aus tt_content ausgeben, wenn kein Name angegeben wurde. Auch weiß ich nicht, wie ich alle folgenden internen Links um den Zusatz 'meineExt[member]=Meier' erweiteren kann. Da ja nicht nur die Homeseite personalisiert sein sollte!

Später möchte ich das ganze dann mit 'realurl' verschönern :-)

Ich hoffe ich konnte einigermaßen erklären worauf ich hinaus will ?!

Vielen Dank für jede Art von Anregung und Tips!

bis dann!

erskine ·

Bitte, bitte,

irgendein noch so kleiner Hinweis oder ein Link zu dem Thema würde mir schon weiterhelfen.

Vielen Dank.

swingtra ·

interne Links erweitern ...

hm ...
vielleicht ist es über arrays gelöst worden
habe selbst gerade mit php angefangen nicht fluchen

es ist nur so ne Idee die Typolinks an die url dranzubasteln

<?php
/* Arrays einbinden "*/
include "typo3links.php";

/*  Hyperlinks mit Anhang ausgeben   */
for($i=0; $i<sizeof('index.php?id='.$GLOBALS['TSFE']->id.'); $i++)

	echo "<br><a ref='index.php?id='.$GLOBALS['TSFE']->id.[$i].'&meier'</a>";

//&meier sollte dann als erray ausgegeben werden.'meineExt[member]=Meier' - das //wären dann 3 arrays ...

//echo "<br><a href='index.php?id='.$GLOBALS['TSFE']->id.[$i].'meineExt[member]=Meier'</a>";
?>

es ist nur ein Ansatz...eine Idee mehr nicht.
Die andere Sache habe ich nicht so ganz verstanden mit dem normalen Content anzeigen (wohl ohne Anhang) allerdings könnte man was erreichen.

<?php
if (isset ('index.php?id='.$GLOBALS['TSFE']->id.'))
{
funktion-typo3-normales arbeiten ...;
}
else if (isset('index.php?id='.$GLOBALS['TSFE']->id.[$i].'&meier'))
{
meineExt...;
}
?>