Neues: datei.php?mode=xy - an tpl zugeordnet

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
YoOoOoOo
Mitglied
Beiträge: 71
Registriert: 01.05.2006 16:34
Wohnort: YoOoOoOoOo
Kontaktdaten:

Neues: datei.php?mode=xy - an tpl zugeordnet

Beitrag von YoOoOoOo »

Welche Codeschnipsel muss ich in datei.php einfügen, damit ein mode entsteht, sodass es in der adressleiste heisst:
datei.php?mode=xy :)
Diese Mode sollte dann auch noch an ein TPL zugeordnet werden können ....

Ich habs mal folgendermassen versucht:

Code: Alles auswählen

switch( $mode )
{
        case 'memberlist':
        break;
}
	$template->set_filenames(array(
                'memberlist' => 'groupcp_memberlist.tpl')
	);
Aber das funktioniert leider nicht. Wenn ich nun datei.php?mode=memberlist öffne, erscheint bloss der Inhalt von datei.php :(

Yo
Benutzeravatar
Simlau
Mitglied
Beiträge: 279
Registriert: 18.02.2006 14:06
Wohnort: Bayreuth
Kontaktdaten:

Beitrag von Simlau »

Was ist bei dir deine $mode Variable?

Die müsste in etwa so aussehen:

Code: Alles auswählen

$mode = $_GET['mode'];
YoOoOoOo
Mitglied
Beiträge: 71
Registriert: 01.05.2006 16:34
Wohnort: YoOoOoOoOo
Kontaktdaten:

Beitrag von YoOoOoOo »

Jap, aber funktioniert leider auch so noch nicht :(

Code: Alles auswählen

mode = $_GET['mode'];

switch( $mode )
{
        case 'memberlist':
        break;
}
	//
	// Load templates
	//
	$template->set_filenames(array(
                'memberlist' => 'groupcp_memberlist.tpl')
	);
Benutzeravatar
punkface
Mitglied
Beiträge: 3579
Registriert: 12.08.2004 23:37

Beitrag von punkface »

Hallo

Der Code kann auch gar nicht funktionieren. Der(/Das?) switch hat keine Funktion, ist somit komplett sinnlos, und bei der Zuweisung der Template-Datei wird überhaupt kein Bezug auf die Variable $mode genommen.

Wenn du mit einem switch arbeiten willst, dann gehts so:

Code: Alles auswählen

$tpl_datei = '';

switch($mode)
{
	case 'memberlist':
		$tpl_datei = 'datei.tpl';
		break;

	case 'bla':
		$tpl_datei = 'bla.tpl';
		break;

	default:
		$tpl_datei = 'groupcp_memberlist.tpl';
		break;
}

$template->set_filenames(array( 
	'memberlist' => $tpl_datei) 
);
faraday
Mitglied
Beiträge: 291
Registriert: 22.03.2006 19:45
Wohnort: Wilhelmshaven

Beitrag von faraday »

Das kannst du auch mit einem Template machen. Das heißt nur eine tpl Datei:

Code: Alles auswählen

// Definiere Variablen
$mode = $_GET['mode'];

$switch = "";

switch($mode)
{
   case 'memberlist':
      $switch = 'switch_memberlist';
      break;

   case 'bla':
      $switch = 'switch_bla';
      break;

   default:
      $switch = 'switch_groupcp_memberlist';
      break;
}

// Lade $switch für Block
$template->assign_block_vars($switch, array());

// Wähle Template Dateien
$template->set_filenames(array(
'body' => 'deine_tpl_datei.tpl')
);

// Lade Template Dateien
$template->pparse('body');
Dann brauchst du in deine_tpl_datei.tpl nur:

Code: Alles auswählen

<!-- BEGIN switch_memberlist -->
Dein memberlist-code
<!-- END switch_memberlist -->

<!-- BEGIN switch_bla -->
Dein Bla-code
<!-- END switch_bla -->


<!-- BEGIN switch_groupcp_memberlist -->
Dein groupcp_memberlist-code
<!-- END switch_groupcp_memberlist -->
machen

Gruß fara
Benutzeravatar
Jan500
Ehemaliges Teammitglied
Beiträge: 4199
Registriert: 01.03.2003 21:32
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Jan500 »

hi

und wie groß soll dann die tpl werden? O_O


was spricht gegen mehrere tpl dateien? :-?

Jan
"Life begins at 40 Knots...!" :D
kein (kostenlosen) Support per pn, mail, icq usw. | Kostenlosen Support gibt es hier im Forum!
YoOoOoOo
Mitglied
Beiträge: 71
Registriert: 01.05.2006 16:34
Wohnort: YoOoOoOoOo
Kontaktdaten:

Beitrag von YoOoOoOo »

Soweit so gut. Wie ist es denn anhand von Switches möglich, dass, wenn man z.B. auf einen Button oder auf einen Link klickt, nur noch der Inhalt eines bestimmten Switches sichtbar ist?

Yo
faraday
Mitglied
Beiträge: 291
Registriert: 22.03.2006 19:45
Wohnort: Wilhelmshaven

Beitrag von faraday »

Jan500 hat geschrieben:hi

und wie groß soll dann die tpl werden? O_O


was spricht gegen mehrere tpl dateien? :-?

Jan
War ja nur ein Vorschlag 8)
YoOoOoOo
Mitglied
Beiträge: 71
Registriert: 01.05.2006 16:34
Wohnort: YoOoOoOoOo
Kontaktdaten:

Beitrag von YoOoOoOo »

YoOoOoOo hat geschrieben:Soweit so gut. Wie ist es denn anhand von Switches möglich, dass, wenn man z.B. auf einen Button oder auf einen Link klickt, nur noch der Inhalt eines bestimmten Switches sichtbar ist?

Yo
Hat jemand hierzu eine Idee?

Yo
Benutzeravatar
MagMo
Ehemaliges Teammitglied
Beiträge: 584
Registriert: 30.10.2005 16:06
Wohnort: Köln
Kontaktdaten:

Beitrag von MagMo »

Hi,
YoOoOoOo hat geschrieben:Soweit so gut. Wie ist es denn anhand von Switches möglich, dass, wenn man z.B. auf einen Button oder auf einen Link klickt, nur noch der Inhalt eines bestimmten Switches sichtbar ist?

Code: Alles auswählen

$mode = $_GET['mode'];
$tpl_datei = '';

switch($mode)
{
	case 'memberlist':
		$tpl_datei = 'datei.tpl';
		break;

	case 'bla':
		$tpl_datei = 'bla.tpl';
		break;

	default:
		$tpl_datei = 'groupcp_memberlist.tpl';
		break;
}

$template->set_filenames(array( 
'body' => $tpl_datei) 
);

// Lade Template Dateien 
$template->pparse('body');
dann ruft ein Link auf datei.php?mode=memberlist den Inhalt der tpl-Datei memberliste auf, ein Link auf datei.php?mode=bla den Inhalt der tpl-Datei bla usw.

Grüße
MagMo
Antworten

Zurück zu „Coding & Technik“