• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Inhalt zur php-Navigation?

Moez

Neues Mitglied
Hallo Leute,

ich bin gerade dabei eine Aufgabe für meinen Coding Unterricht zu lösen. Ich habe eine Navigationsleiste erstellt und diese in meine "Home" Seite eingefügt. Also MEine Home Seite ist die erste Seite die angezeigt wird und dort ist auch schon Inhalt drin. Wenn ich nun AUf den Menüpunkt "Contact" zum Beispiel drücke, dann habe ich das Problem, dass nur die Navigation mit dem entsprechenden Inhalt der contact.php angezeigt wird. Dabei fehlt komplett alles, was im Header stattfindet. Meine Frage ist nun, ob ich es bewerkstelligen kann, dass nach dem Auswählen eines neuen Menüpunkts alles nur ab der Navigation abwärts neugeladen wird ohne dass ich den Code des Headers in jedes php dokument einfüge. Oder muss ich echt in "About", "Contact" usw. jedes mal den gleichen Headercode einfügen?

Vielen Dank schonmal
 
Du baust eine Hauptseite mit Header, Navigation, Footer und einem Platzhalter für den Content. Diese Hauptseite wird jedes mal neu geladen und dabei innerhalb des Platzhalters der mit dem Link korrespondierende Content inkludiert.
 
Also ich habe jetzt diesen Code hier auf der "HOME" Page. Muss ich alles was vor dem Body steht in jeden unterpunkt der PhP einbauen?

HTML:
<?php $thisPage="home"; ?>


<!DOCTYPE HTML>
<html>
<head>
<link href='http://fonts.googleapis.com/css?family=Meie+Script' rel='stylesheet' type='text/css'>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Untitled Document</title>
<link href="css.css" rel="stylesheet" type="text/css">
<link href="responsive grid/custom.css" rel="stylesheet" type="text/css">
<link href="build.css" rel="stylesheet" type="text/css">
<link href="columnal.css" rel="stylesheet" type="text/css">
<link href="Style.css" rel="stylesheet" type="text/css">
</head>


<body>


<div class="container">


<div id="header2" class="col_12">
	<ul>
    	<li id="finnish2">Finnish</li>
    	<li id="english2">English</li>  
    </ul>
</div>


<div id="wrapper">


<div class="row">
	<nav id="top_logos" class="col_12 suf_5">
	
			<ul>            
        		<li id="arboretum" class="col_3"><img src="http://www.html.de/images/Arboretum_200px copy.png"></li>        
       			 <li id="viini" class="col_2"><img src="http://www.html.de/images/Viini_150px copy.png"></li>        
       			 <li id="taimitarhat" class="col_2"><img src="http://www.html.de/images/Taimi_150px copy.png"></li>     
		</ul>
        </nav><!-- end nav -->


	</div><!-- end row -->








<?php include("navi/navi.php");?>
 
Zuletzt bearbeitet von einem Moderator:
Ja, musst Du. Wobei Du den gesamten Kopfbereich auch in eine einzelne PHP-Datei auslagern kannst. Dann reicht es wenn Du diese eine Datei jedes Mal einbindest, statt den von dir zuletzt genannten Quellcode.
 
Ach auf die Idee bin ich gar nicht gekommen- Das ist natürlich auch ne Lösung :D Versuch ich gleich mal! Danke!
 
Ja, musst Du. Wobei Du den gesamten Kopfbereich auch in eine einzelne PHP-Datei auslagern kannst. Dann reicht es wenn Du diese eine Datei jedes Mal einbindest, statt den von dir zuletzt genannten Quellcode.

Ach unsin. Lern Ihm doch nicht wie man Redunanz erzeugt. Erstell einen Zentrallen aufbau. Dann reicht es auch wenn du die Datei nur einmal einbindest so ist sie dann überall verfügbar.

Schau dir auch das Eva Prinzip an.

Mfg Splasch
 
Sorry, aber deine Rechtschreibung ist grausig...

Nils aka XraYSoLo

Und wehm interresiert das? Das ist so als würdes du uns erzählen das in Cina ein Rad umgefallen ist.

Hier noch schnell ein kleines Beispiel: (Eines Zentrallen Aufbaues)

Index.php (bootstrap)

PHP:
<?php
/**
 * @name index.php
 *
 * Bootstrap
 *
 * @author Splasch
 * @version 0.1
 * @copyright Copyright (c) 2013, Splasch
 */
error_reporting(E_ALL | E_STRICT);                            // Fehlermeldungen einschalten
ini_set('display_errors', 1); 
// Definiere Absolute Pfad für die Konfiguration
define ('DIRSEP' , DIRECTORY_SEPARATOR);                    // Kompatibele Slash Operatoren
define ('DOCROOT',realpath(dirname(__FILE__)).DIRSEP);      // Start Verzeichniss
define ('VIEW'   ,realpath(DOCROOT.'view').DIRSEP);         // Default View
$url     = str_replace(chr(92),'/',DOCROOT);
$url     = str_replace($_SERVER['DOCUMENT_ROOT'],'',$url);   
define ('URL' ,$url.'index.php');                           // Default URL

$layout  = "index.php";                                     // Default Layout
$config  = DOCROOT."config".DIRSEP;                         // Konfiguration Datein

// Angeforderte Seite
$page  = filter_input(INPUT_GET, "geladene_seite", FILTER_SANITIZE_STRING);
$page  = $page == NULL ? 'start':$page;                     // Default Content(Inhalt)

// Navigation Daten Laden 
$navi  = include_once($config.'navigation.php'); 
$title = $navi[$page]['title'];                             // Aktueller Seiten Titel
  

// Default Layout Laden
include_once(VIEW.$layout);
?>

navigation
PHP:
<?php
/**
 * @name navigation.php
 *
 *
 * @author
 * @version 0.1
 * @copyright Copyright (c) 2013,
 */
defined('DOCROOT') or die('Kein direkter Script Zugriff erlaubt.');
return array( 
    'start' => array( 
        'title' => 'Hallo', 
        'file' => 'start.php',        
    ), 
    'seite1' => array( 
        'title' => 'Seite 1', 
        'file' => 'seite1.php',        
    ), 
    'seite2' => array( 
        'title' => 'Seite 2', 
        'file' => 'seite2.php',         
    ), 
    'seite3' => array( 
        'title' => 'Seite 3', 
        'file' => 'seite3.php', 
    ), 
);

View (index)
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta name="author" content="XXX"/> 
<meta name="description" content="XXX"/> 
<meta name="keywords" content="xxx"/> 
<meta name="date" content="2009-11-01"/> 
<meta name="copyrigth" content="&amp;copy: lala"/> 
<meta name="robots" content="index, follow, all"/> 
<link rel="stylesheet" href="format.css" type="text/css"/> 
<title><?=$title;?></title> 
</head> 
<body style="background-color:#ffebcd">
<!-- Leiste mit den Links -->
<div id='nav-leiste'>
  <table width='100%'>
   <tr>
<?  foreach($navi as $key => $val)
    {
      $c = ($key === $page) ? "#00ff00" : "#c0c0c0"; ?>
      <td align='center' bgcolor='<?=$c;?>'>
        <a href="<?=URL."?geladene_seite=".$key;?>"><?=$val['title']?></a>
      </td> 
<?  } ?>  
   </tr> 
  </table> 
</div>
<br/>
  
<!-- Content Ladet die ausgewählte Seite -->
<div id='Inhalt'>
  <? include(VIEW.$navi[$page]['file']);?>
</div>
    
</body> 
</html>


Mfg Splasch
 
Zuletzt bearbeitet:
Und wehm interresiert das? Das ist so als würdes du uns erzählen das in Cina ein Rad umgefallen ist.

[...]

Mfg Splasch

Gab schon bessere Konter.

Wenn du in deinem doch offenbar vorangekommenem Alter nicht den Sinn korrkter Grammatik und Rechtschreibung entdeckt hast, bitte. Es ist immer wieder hochwohlgeborene Freude zu sehen, wie unsere Sprache im Netz verkommt, die Schreiber sich lächerlich machen und das beste: Sie merken es nicht einmal.

Zu deinem Einwand: Ja es interessiert, da ich irgendeine PHP-Anweisung auch nicht nach eigenem Ermessen schreiben und dann erwarten kann, dass sie aufgrund meines Buchstabensalates funktioniert.

Nils aka XraYSoLo
 
Zurück
Oben