warum funktioniert name="main" als namengebung nicht?

Onkel-Timo

Mitglied
Hi Leute,

folgendes Problem: Auf der Homepage wil ich folgendes errichten. Wenn man links auf Verein klickt, soll rechts Vorstand, etc. erscheinen. Das klappt ja auch! Aber, was muss ich jetzt als Befehl eingeben, damit wenn man auf Vorstand klickt, das in der Mitte erscheint? Wie ihr sehen könnt, wird ein neues Fenster geöffnet!

Habe bereits einige Sachen ausprobiert... ohne Erfolg!

Hoffe ihr wisst etwas!
 
ich würde einfach in der mitte via include das ganze einfügen.
das heißt, du machst dann den link vorstand in etwa so:
index.php?cmd=verein&content=vorstand

und in der mittleren tablle fügst du einfach so was ein:
PHP:
switch ($content) {    
case "verein":
$include_datei = "verein.php";
break;    

switch ($content) {    
case "chronik":
$include_datei = "chronik.php";
break;    
.
.
.

include ($include_datei);
hoffe das stimmt - müsste aber so in der richtung funktionieren,
probier es halt mal aus!

mfg tezcatlipoca
 
Du darfst nicht einfach auf vorstand.htm linken.
Besser wäre als Ziel index.php?cmd=verein plus einer zusätzlichen Variable (inhalt z.B.).
Also müsste der Link dann in etwa so aussehen:
<a href="index.php?cmd=verein&inhalt=vorstand">Vorstand</a>

In deiner PHP-Seite inkludierst du dann einfach in der Mitte die Datei vorstand.htm, wenn $_GET['inhalt'] == vorstand.

Nach diesem Prinzip gehst du bei allen Seiten vor.
Ich hoffe, es war verständlich.

//EDIT: Ok, wieder mal zu spät...
 
Hi,

danke schonmal für die beiden Antworten :)

Muss leider dazu sagen, dass ich noch ein ziemlicher php-Neuling bin, und keine Ahnung habe, wie ich das jetzt einbinden soll!?


Wäre es möglich das noch n bisschen verständlicher für mich zu schreiben? :-(
 
naja, gut, ich bin auch noch ziemlicher anfänger. aber ich probiere es mal näher zu erklären.

im linken menü hast du ja den link http://www.onkel-timo.de/php/index.php?cmd=verein

das bedeutet, das dabei die variable $cmd auf die nächste seite (wieder index.php) mit dem wert "verein" übergeben wird.

auf der rechten seite hast du ja irgendwas mit include geschrieben.
wahrscheinlich
PHP:
<?PHP 
if(isset($cmd))
{
include($cmd."php");
}
?>
oder so was in der richtung.
das bedeutet, wenn die variable $cmd (die die du im link übergeben hast) definiert ist d.h. wenn ein wert darin ist, das dann die seite $cmd mit der endung .php da rein geladen wird. als hättest du sie direkt in die index.php geschrieben hast.

jetzt musst du auch noch in der datei verein.php den link ändern in z.B.: index.php?cmd=verein&content=vorstand

dann schreibst du in die mittlere tabelle ungefähr das gleiche wie in die rechte.
nur mit include($content...)

wenn du weitere frage hast, kannst du dich hier mal informieren oder einfach nochmal fragen.

PHP für dich (Variablen übergeben)
SelfPHP - Include Befehl

mfg tezcatlipoca
 
Also, das stück script

<td bgcolor="#000066" width="550" height="360" background=".jpg" valign="top" name="main" id="main"><center><div style="width:550px;height:360px;overflow:auto">

<?
if(!$cmd) { include("home.htm");}
if($cmd=="home") { include("home.htm"); }
if($cmd=="news") { include("news.htm"); }

if($cmd=="teams") { include("teams.htm"); }
if($cmd=="veranstaltungen") { include("veranstaltungen.htm"); }
if($cmd=="sponsoren") { include("sponsoren.htm"); }
if($cmd=="archiv") { include("archiv.htm"); }
if($cmd=="links") { include("links.htm"); }
if($cmd=="forum") { include(""); }
?>
</div></td>
<td bgcolor="#78C0FF" width="200" height="360" background="right.jpg" valign="top"><center>

<?
if(!$cmd) { include("leer.htm");}
if($cmd=="verein" ) { include("verein.htm"); }

if($cmd=="spielplan") { include("spielplan.htm"); }
if($cmd=="berichte") { include("berichte.htm"); }
if($cmd=="veranstaltungen") { include("veranstaltungen.htm"); }
if($cmd=="jugend") { include("jugend.htm"); }
if($cmd=="sponsoren") { include("sponsoren.htm"); }
if($cmd=="chronik") { include("chronik.htm"); }
if($cmd=="archiv") { include("archiv.htm"); }
if($cmd=="links") { include("links.htm"); }
if($cmd=="forum") { include(""); }

?>

sieht so aus. Das die enden nicht richtig sind, ist mir klar, aber da bin ich ja noch nicht bzw weiß nicht genau wie ich das machen will. Aber ich habe einfach Probleme "die variable zu definieren"?
also, mit meinen worten gesagt, ich kann das nicht so includen das der link von rechts weiß das er wieder auf eine neue seite zugreifen soll die in der mitte erscheinen soll...!

?

Danke aber dir schonmal =)
 
also im menü vorstand und in der rechten seite vorstand hast du den link ja schon richtig.

jetzt machst du einfach in deine index.php in das mittlere feld das rein:

PHP:
<?PHP
if(isset($content))
{
$file = $content . ".php";
include($file);
}

dabei muss jetzt im gleichen verzeichnis wie die index.php die datei vorstand.php sein.

mfg tezcatlipoca
 
PHP:
<?php
  $cmd = ( isset($_GET['cmd']) && !empty($_GET['cmd']) )
    ?  $_GET['cmd']
    :  FALSE;
  $valid_pages['navigation'] = array(
    "home" => "home",
    "news" => "news",
    "teams" => "teams",
    "veranstaltungen" => "veranstaltungen",
    "sponsoren" => "sponsoren",
    "archiv" => "archiv",
    "links" => "links",
    "forum" => ""
  );
  $valid_pages['inhalt'] = array(
    "verein" => "verein",
    "spielplan" => "spielplan",
    "berichte" => "berichte",
    "veranstaltungen" => "veranstaltungen",
    "jugend" => "jugend",
    "sponsoren" => "sponsoren",
    "chronik" => "chronik",
    "archiv" => "archiv",
    "links" => "links",
    "forum" => "",
    "leer" => "leer"
  );
?>
<td bgcolor="#000066" width="550" height="360" background=".jpg" valign="top" name="main" id="main"><center><div style="width:550px;height:360px;overflow:auto">
<?php
  $temp = ( ($cmd !== FALSE) && in_array($cmd, $valid_pages['navigation']) ) 
    ?  $temp = $valid_pages['navigation'][$cmd]
    :  $temp = $valid_pages['navigation']['home'];
  include($temp.".htm");
?>
</div></td>
<td bgcolor="#78C0FF" width="200" height="360" background="right.jpg" valign="top"><center>
<?php
  $temp = ( ($cmd !== FALSE) && in_array($cmd, $valid_pages['inhalt']) ) 
    ?  $temp = $valid_pages['inhalt'][$cmd]
    :  $temp = $valid_pages['inhalt']['leer'];
  include($temp.".htm");
?>
 
Zurück