koppeling openen in dezelfde pagina

Status
Niet open voor verdere reacties.

VOC Brasschaat

Gebruiker
Lid geworden
8 dec 2008
Berichten
28
Beste,

Even "me" voorstellen. VOC-Brasschaat is een opvangcentrum voor wilde dieren (dit is louter vrijwilligers werk, dus niet van commerciele aard). En ik heb me even gewijd aan het ontwerpen van de site... Helaas zat ik al snel vast.

Dit door de koppelingen (misschien niet onbelangrijk, ik werk met dreamweaver), Ik heb een spry-menubalk ingevoegd. Tot zover snap ik het. Enkel het lastige is. Dat hij telkens een volledig nieuwe pagina begint voor de verschillende koppelingen. En dan moet ik ook telkens die koppelingen opnieuw invoegen. Waardoor er namenlijk verschillen gaan optreden. En dat is eigenlijk niet het plan...

Wat ik wel weet, is dat je kan linken naar een frame/div... enkel weet ik niet precies hoe. Ik heb hier op het forum al wel een uitleg gezien van ene "jeroen". Maar die werkte hier niet echt.

je hebt dus bijvoorbeeld deze menubalk:

PHP:
<ul id="MenuBar1" class="MenuBarHorizontal">
    <li><a href="index.php">Home</a></li>
      <li><a class="MenuBarItemSubmenu" a href="#">Opvang</a>
        <ul>
          <li><a href="vrijwilligers.php" class="MenuBarItemSubmenu">vrijwilligers</a>
            <ul>
              <li><a href="#">naam 1</a></li>
              <li><a href="#">naam 2</a></li>
            </ul>
          </li>
          <li><a href="kooien.php">De Kooien</a></li>
          <li><a href="EHBO.php">EHBO</a></li>
        </ul>
      </li>

en de div waarnaar deze verschillende menu's moeten verwijzen is de "maincontent". Zo heb ik eigenlijk 1 pagina waarop alles word bekeken. (dat is toch uiteindelijk het doel)

ik hoop dat men vraag een beetje duidelijk is... en anders hoor ik het wel.
 
Laatst bewerkt:
tijdens het zoeken heb ik gemerkt dat zo'n functie niet mogelijk is met divs... tenzij je gaat verbergen... maar dat maakt het ook maar onoverzichtelijk.

Is er dan toch een mogelijkheid via dreamweaver of een script dat ik er tussen kan voegen dat deze menubalk maar op 1 plaats bewerkt moet worden. En niet op elke pagina appart? (elke pagina word opnieuw geopent met header, main & footer)
 
Laatst bewerkt:
Via een klein stukje PHP met een paar include tags moet je een heel eind kunnen komen.

Je kunt via <?php include 'filename.ext' ?> een bestand in je huidige pagina opnemen.

Dan wordt de inhoud van die file gewoon letterlijk in je huidige pagina geplakt.

Je moet er dan alleen op letten dat je dus je bestand de extensie .php geeft, anders wordt ie niet uitgevoerd, maar komt de code gewoon op de pagina te staan.
 
Via een klein stukje PHP met een paar include tags moet je een heel eind kunnen komen.

Je kunt via <?php include 'filename.ext' ?> een bestand in je huidige pagina opnemen.

Dan wordt de inhoud van die file gewoon letterlijk in je huidige pagina geplakt.

Je moet er dan alleen op letten dat je dus je bestand de extensie .php geeft, anders wordt ie niet uitgevoerd, maar komt de code gewoon op de pagina te staan.


Dat trucje werkt nu... helaas word de rest van men css genegeerd waardoor ik enkel die 'filenaam.ext' zie. (de pagina ziet er nu zo uit: www.voc-brasschaat.be/PHP/index.php)

normaal heb ik nog een mainframe en sidebar...

enig idee waar het foutje zit?

edit: ben nog wat aan het knoeien hier en daar... dus het verandert de hele tijd nog. Maar het gaat er steeds gekker uitzien.
 
Laatst bewerkt:
Hm, aangezien de php-code gewoon rechtstreeks op het scherm verschijnt, vermoed ik dat je helemaal geen PHP geinstalleerd hebt op je server?

Heb je hem in eigen beheer?

De meeste hosting pakketten leveren wel PHP op hun machines, maar als het je eigen server is, dan zul je het er zelf op moeten zetten.

Het kan NOOIT gebeuren dat als je PHP werkt en je de extensie .php hebt, er een <?php ?> tag op het scherm verschijnt; hij moet op zijn minst vervangen worden door een error melding...
 
Hm, aangezien de php-code gewoon rechtstreeks op het scherm verschijnt, vermoed ik dat je helemaal geen PHP geinstalleerd hebt op je server?

Heb je hem in eigen beheer?

De meeste hosting pakketten leveren wel PHP op hun machines, maar als het je eigen server is, dan zul je het er zelf op moeten zetten.

Het kan NOOIT gebeuren dat als je PHP werkt en je de extensie .php hebt, er een <?php ?> tag op het scherm verschijnt; hij moet op zijn minst vervangen worden door een error melding...

dat was ff een copietje van jou code (niet met de php extensie achter). Vandaar dat die er nog tussen stond. Maar de server (one.com) ondersteunt php, dat had ik eerst even gecontroleerd.

maar het wil me dus niet lukken. Als ik de pagina include valt de rest van mijn pagina weg. En krijg ik enkel de "header.php". Mijn code is als volgt:

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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Naamloos document</title>
<style type="text/css"> 
<!-- 
body  {
	font: 100% Verdana, Arial, Helvetica, sans-serif;
	background: #666666;
	margin: 0;
	padding: 0;
	text-align: center; 
	color: #000000;
}
.twoColFixRtHdr #container { 
	width: 780px; 
	background: #FFFFFF;
	margin: 0 auto; 
	border: 1px solid #000000;
	text-align: left; 
} 
.twoColFixRtHdr #header { 
	background: #DDDDDD; 
	padding: 0 10px 0 20px; 
} 
.twoColFixRtHdr #header h1 {
	margin: 0; 
	padding: 10px 0; 
}
.twoColFixRtHdr #sidebar1 {
	float: right; 
	width: 200px; 
	background: #EBEBEB; 
	padding: 15px 10px;
}
.twoColFixRtHdr #mainContent { 
	margin: 0 250px 0 0; 
	padding: 0 20px;
} 
.twoColFixRtHdr #footer { 
	padding: 0 10px 0 20px;
} 
.twoColFixRtHdr #footer p {
	margin: 0; 
	padding: 10px 0;
}
.fltrt { 
	float: right;
	margin-left: 8px;
}
.fltlft { 
	float: left;
	margin-right: 8px;
}
.clearfloat { 
	clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}
</style>
<script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
<link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
</head>

<body class="twoColFixRtHdr">

<div id="container">
  <div id="header">
  <p><?php include 'header.php' ?></p>
  <!-- end #header --></div>
  <div id="sidebar1">
    <h3>Inhoud sidebar1</h3>
  </div>
  <div id="mainContent">
    <h1> Hoofdinhoud </h1>
    <br class="clearfloat" />
  <div id="footer">
    <p>Footer</p>
  </div>
</div>
</body>
</html>

de header.php:
Code:
<!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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>VOC-Brasschaat</title>
<style type="text/css">
<!--
body {
	font: 100% Verdana, Arial, Helvetica, sans-serif;
	background: #666;
	margin: 0; 
	padding: 0;
	text-align: center; 
	color: #FFF;
}
.oneColLiqCtrHdr #container {
	width: 100%; 
	background: #C39;
	margin: 0 auto;
	border: 1px solid #000;
	text-align: center; 
}
.oneColLiqCtrHdr #header {
	background: #000; 
	padding: 0 10px 0 20px;  
}
.oneColLiqCtrHdr #header h1 {
	margin: 0; 
	padding: 10px 0; 
}

</style>
<script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
<link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
</head>

<body class="oneColLiqCtrHdr">

<div id="container">
  <div id="header">
    <h1>VOGELOPVANGCENTRUM </h1>
    <h1>BRASSCHAAT</h1>
    <ul id="koppelingen" class="MenuBarHorizontal">
--> indeling menubar
</div>
  
</div>
<script type="text/javascript">
<!--
var MenuBar1 = new Spry.Widget.MenuBar("koppelingen", {imgDown:"SpryAssets/SpryMenuBarDownHover.gif", imgRight:"SpryAssets/SpryMenuBarRightHover.gif"});
//-->
</script>
</body>
</html>

ik heb de include code al op verschillende plaatsen uitgeprobeerd.. maar dat wil dus niet lukken. Meestal valt alles dan weg.

Mmm, zijn er hier duidelijke (voor dummies:rolleyes:) nederlandse boeken over? ik ga vandaag waarschijnlijk die van dreamweaver halen/kopen (3 delen). Maar daar staat waarschijnlijk de werking van PHP niet in uitgelegd :)
 
Laatst bewerkt:
Geen idee of er boeken van zijn :)

Wat ik wel zie is dat je in je header.php opnieuw een DOCTYPE hebt.

Maar een include statement zet de tweede file letterlijk in de eerste... die hoeft dus geen doctype te hebben. Alleen het stuk wat je graag op die plek zou zien.

Dat zou aardig moeten helpen :)
 
Probleem opgelost:

De pagina die gelinkt moet worden:
PHP:
<script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
<link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
</head>
<style>

#header { 
	background: #000; 
	color:#FFF;
	width: 780px;
	margin: auto;
	}
	</style>
<body class="oneColFixCtr">
<div id="header">
      <img src="Images/logo.jpg" alt="voc-logo" width="99" height="100" hspace="10" vspace="10" align="left" />
    <h1>VOGELOPVANGENTRUM
      <br />
    BRASSCHAAT</h1>
    <ul id="MenuBar1" class="MenuBarHorizontal">
      <li><a class="MenuBarItemSubmenu" href="#">Item 1</a>
        <ul>
          <li><a href="#">Item 1.1</a></li>
          <li><a href="#">Item 1.2</a></li>
          <li><a href="#">Item 1.3</a></li>
        </ul>
      </li>
      <li><a href="#">Item 2</a></li>
      <li><a class="MenuBarItemSubmenu" href="#">Het Centrum</a>
        <ul>
          <li><a class="MenuBarItemSubmenu" href="#">De kooien</a>
            <ul>
              <li><a href="hok_ree.php">Ree&euml;nkot</a></li>
              <li><a href="#">Item 3.1.2</a></li>
            </ul>
          </li>
          <li><a href="#">Item 3.2</a></li>
          <li><a href="#">Item 3.3</a></li>
        </ul>
      </li>
      <li><a href="index.php">Home</a></li>
    </ul>

<!-- end #container --></div>
<script type="text/javascript">
<!--
var MenuBar1 = new Spry.Widget.MenuBar("MenuBar1", {imgDown:"SpryAssets/SpryMenuBarDownHover.gif", imgRight:"SpryAssets/SpryMenuBarRightHover.gif"});
//-->
</script>
</body>

En dan heb je bij Dreamweaver een knop bij algemeen die heet "include-codes op server". Die genereert dan volgende code:

<?php require_once('home.php'); ?>

Die heb ik in body geplaatst... en het werkt dan uiteindelijk :thumb: Dankje Frats voor de hulp !!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan