Archiv verlassen und diese Seite im Standarddesign anzeigen : dynamische Inhalte
Hallo Leute,
habe jetzt sämtliche Beiträge durchforstet aber nichts zu diesem Thema gefunden. Es handelt sich um sehr einfaches selbstgebautes pseudo-cms. (oder so ähnlich :) ) Weil ich mit den meisten fertigen cms-Systemen nichts anfangen kann.
In ein php-Gerüst werden über den Befehl "include" einzelne Module hineingeladen. Das ist kein Problem. Nun sind einige Module von einender abhängig und da wird es schwierig.
Angenommen ich habe die Spalten "links", "mitte" und "rechts". In der rechten Spalte habe ich einen Link, der auf die mittlere Spalte verweist. Blöd wäre es natürlich jetzt ein separates Gerüst mit anderen festen Anordnungen zu öffnen. Das sind Unmengen von Seiten mit all diesen Kombinationen. Was ist aber die Lösung? Lassen sich nicht über einen Link (z.B. in der rechten Spalte) zwei Variablen übergeben, die 1. die Position der Änderung ("mitte") und 2. den Dateinamen (mitte.php) des neuen Moduls übergeben und anschließend die Seite neu laden?
So etwas muss doch gehen, oder?
Danke im Voraus.
Christof
onemorenerd 26-01-2006, 13:37 Ich versteh ihn auch nicht. :dontknow:
Klingt irgendwie nach ?menu=foo§ion=bar usw., aber das hätte er in den sämtlichen Beiträgen ja schon gefunden.
Was war denn unverständlich?
Es müsste einfachstes php und etwas javaScript sein. Kenne mich aber nicht besonders aus in dieser Materie. Nach was soll ich suchen?
Es geht eigentlich nur darum einzelne extern ausgelagerte html/php-Module (html-Code-Abschnitte) in einer Datei zu organisieren.
Früher hätte man dafür ein Frame-Set verwendet, und es ewig verschachtelt. Suche aber nach einer eleganten Lösung.
Modul: "rechts", (z.B. Menu)
Link1 -> sende variablen position=mitte, modul=text1.php
& position=links, modul=text2.php - lade seite neu
usw.
irgendwo im <div>-Gerüst:
an der Position "mitte":
empfange Variable "modul" -> include (in diesem Fall text1.php)
an der Position "links":
empfange Variable "modul" -> include (in diesem Fall text2.php)
Ist es jetzt verständlicher?
..ist falsch gelandet
Es müsste einfachstes php und etwas javaScript sein. Kenne mich aber nicht besonders aus in dieser Materie. Nach was soll ich suchen?
Es geht eigentlich nur darum einzelne extern ausgelagerte html/php-Module (html-Code-Abschnitte) in einer Datei zu organisieren.
Früher hätte man dafür ein Frame-Set verwendet, und es ewig verschachtelt. Suche aber nach einer eleganten Lösung.
Modul: "rechts", (z.B. Menu)
Link1 -> sende variablen position=mitte, modul=text1.php
& position=links, modul=text2.php - lade seite neu
usw.
irgendwo im <div>-Gerüst:
an der Position "mitte":
empfange Variable "modul" -> include (in diesem Fall text1.php)
an der Position "links":
empfange Variable "modul" -> include (in diesem Fall text2.php)
Ist es jetzt verständlicher?
Gewöhne dir bitte endlich an, in deinem Thread zu antworten, und nicht jedesmal einen neuen zu erstellen!
*zusammenführ* zum zweiten Mal.
Mit dieser Methode müsste ich nur bei den Links (z.B. Menu) angeben an welcher Stelle des <div>-Gerüsts ("links", "mitte" oder/und "rechts") welcher html-Code-Schnipsel geladen wird. Jede Änderung im Modul (Code-Schnipsel) wirkt sich so auf unzähligen Seiten aus. Und alles bleibt übersichtlich.
Das wäre genial. :)
na dann übergib doch die Variablen mit $_GET
und werte sie dann aus:
if (isset $_GET(modul))
{
$m= $_GET(modul)
include "text".$m.".txt"
}
und in den Link schreibst Du <a href "xyz.php?modul=x">
in den div-Container in der Mitte käme dann:
<?php
if ($_GET(pos) == 2) //die "2" als Code für Mitte
{
if (isset($_GET(modul)
{
include .....
hmmmm..
das sieht schon ganz gut aus, wenigstens die Verfahrensweise. Jetzt noch bisschen ins Detail:
brauche unbedingt zwei Variablen (position und modul), die nur als Paar funktionieren und mehrmals einsetzbar sind. Es werden mehrere Module an verschiedenen Positionen mit gleichem Link geändert.
tja dann...
dann müßtest Du als GET-Parameter arrays übergeben, also mehrere Module in einem Modul-Array und mehrere in einem Position-Array.
Schau doch mal in der Doku ob so was geht.
Gibt es keine Tutorials für eine solche Methode? Hat es einen Namen nach dem man suchen kann? Bin ein totaller php-Anfänger. In Flash wäre das kein Problem.
Wie werden solche Systeme sonst gelößt (außer über cms natürlich)?
echt sorry. schon wieder falsch plaziert
... als die Polizei erlaubt.
Gibt es keine Tutorials für eine solche Methode? Hat es einen Namen nach dem man suchen kann? Bin ein totaller php-Anfänger. In Flash wäre das kein Problem.
Wie werden solche Systeme sonst gelößt (außer über cms natürlich)?
Was für Systeme meinst du überhaupt?
Du kannst mit GET auch nur eine Id übergeben und dann je nach Id-Nummer die Inhalte definieren:
if ($_GET(id)=10)
{
$pos1 = ....
$modul1 = ....
$pos2 = ....
$modul2 = ....
$pos3 = ....
$modul3 = ....
um einzelne include-Dateien (div-Module) zu verwalten. Mit Links in den Modulen definiere ich Variablen. An den Festen Positionen im div-Gerüst werden nach einem reload dann anhand der Variablen bestimmte include-Dateien geladen. Habe alles weiter oben beschrieben.
hast Du meine Antwort gelesen?
an Koala:
Bin gerade am überlegen :)
Das könnte funktionieren :)
Werde es gliech ausprobieren. Danke
Könntest Du ein Blick auf die Schreibweise werfen? Werden alle Variablen richtig deklariert? Die Verbindung von PHP und html ist die Hölle.
<?php
echo '<a href "'index.php?pos_rechts=1&modul=m_modul1'">link</a>'
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<?php
if (isset $_GET(pos_links)) {
if ($_GET(pos_links) == 1) {
if (isset $_GET(modul)) {
$m= $_GET(modul)
include $m.".php";
}
else {
include 'standard.php';
}
}
}
?>
</td>
<td>
<?php
if (isset $_GET(pos_mitte)) {
if ($_GET(pos_mitte) == 1) {
if (isset $_GET(modul)) {
$m= $_GET(modul)
include $m.".php";
}
else {
include 'standard.php';
}
}
}
?>
</td>
<td>
<?php
if (isset $_GET(pos_rechts)) {
if ($_GET(pos_rechts) == 1) {
if (isset $_GET(modul)) {
$m= $_GET(modul)
include $m.".php";
}
else {
include 'standard.php';
}
}
}
?>
</td>
</tr>
</table>
<?php
echo '<a href "'index.php?pos_rechts=1&modul=m_modul1'">link</a>'
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<?php
if (isset ($_GET['pos_links']))
{
if ($_GET['pos_links'] == 1)
{
if (isset ($_GET['modul'])) {
$m= $_GET['modul'];
include $m.".php";
}
else
{
include 'standard.php';
}
}
}
?>
</td>
</tr>
</table>
Die Verbindung von PHP und html ist die Hölle?
Ich finds klasse - macht die Sachen doch schön interaktiv und dynamisch.
Sorry eines noch:
<?php
echo '<a href="'index.php?pos_rechts=1&modul=m_modul1'">link</a>';
?>
Gibt folgende Fehlermeldung aus:
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /homepages/18/d73904980/htdocs/test/index.php on line 2
Welches Semikolon meint er? Habe schon alle Möglichkeiten ausprobiert.
Oh mann, Grundlagen. Guck mal wo du deinen String beginnst (') und wo du ihn beendest (') und was danach kommt.
Warum beendest du den String also so früh?
|