wij willen een nieuwe website gaan maken..
er werd me hier gezegd dat ik beter gebruik kan maken van DIVS inplaats van frames zoals we dat nu hebben..

wat is het verschil??
en hoe werken DIVS??
'Kalle schreef op 10.10.2006 15:40'Of je voert niet de code in, maar je maakt gebruik van include().


zoals ik zojuist beschreef?
Ja inderdaad.
De opbouw blijft hetzelfde.

Er zijn dan verschillende manieren. Je kan bijvoorbeeld 1 pagina nemen, en daar andere pagina's in includen. Of je neemt meerdere pagina's, maar include steeds het gedeelte boven en het gedeelte onder je content (dus de gedeeltes die altijd hetzelfde blijven).

Dus of zo:

<html>
<etc>
<!-- Vanaf hier wil je je content hebben -->
<?php
  if(isset($_GET['p']) && !in_array($_GET['p'],$forbidden))
  {
    include('./pages/'.$_GET['p'].'.php');
  }
?>
<!-- Hier de rest van je HTML -->


Of zo:


<?php
require 'header.php';
  // Hier voer je je PHP uit, en zet je je HTML neer.
require 'footer.php';
?>

Edit:
Oke, voortaan niet tussendoor ook op IRC (Kom ook!) kletsen, maar eerst post afmaken :)
denk dat ik voor de eerste mogelijkheid ga, lijkt me makkelijkste bij mij, maar kun je t me misschien beetje beter uitleggen? wat die functies allemaal precies doen?


<?php
  if(isset($_GET['p']) && !in_array($_GET['p'],$forbidden))
  {
    include('./pages/'.$_GET['p'].'.php');
  }
?>

dus alle paginas staan bij jouw voorbeeld in de map pages..
en als p niet in de link is gedefinierd, dan print die $forbidden? ofzo
snap dit stukje niet helemaal namelijk:

<?php
!in_array($_GET['p'],$forbidden)
?>
Met in_array kijk je of een bepaalde waarde in een array voorkomt. Dus of de waarde die in $_GET['p'] zit, wel in de array met toegestane includes voorkomt. Je kunt die array trouwens beter $allowed noemen, dat is correcter.
Jan Koehoorn schreef op 10.10.2006 15:56
Met in_array kijk je of een bepaalde waarde in een array voorkomt. Dus of de waarde die in $_GET['p'] zit, wel in de array met toegestane includes voorkomt. Je kunt die array trouwens beter $allowed noemen, dat is correcter.


azow, dus hier kijkt die zeg maar of die pagina bestaat??
en kan ik ook als standaard iets instellen? bijv als iemand op onze site komt, gaat die naar index.php en niet naar index.php?p=home ofzo

zo bedoel je dat met allowed?

!in_array($_GET['p'],$allowed)

<?php
if(isset($_GET['p']) && !in_array($_GET['p'],$forbidden))
{
include('./pages/'.$_GET['p'].'.php');
}
?>


Daarvoor is de else

Dus:
<?php
if(isset($_GET['p']) && !in_array($_GET['p'],$forbidden))
{
include('./pages/'.$_GET['p'].'.php');
}
else{
include('standaard.php');
}
?>


azow, dus hier kijkt die zeg maar of die pagina bestaat??

Nee hij kijkt of ie in de array voor komt. Voor het bestaan van paginas gebruik je file_exist().
Kalle schreef op 10.10.2006 16:17
Nee hij kijkt of ie in de array voor komt. Voor het bestaan van paginas gebruik je file_exist().


wat doet die dan wel precies? en hoe kan ik dat doen met die allowed zoals jan zei?
Ik zei het al en Jan ook al.

Het kijkt of de waarde in array voorkomt, zoja dan geeft ie true terug, zonee dan false.

En met allowed bedoelt hij de naam die je geeft aan de array. Niet echt van belang.

Maar de waardes die je geeft in de array zijn de pagina's die bestaan en morgen worden gebruikt /toegestaan (allowed). Vandaar allowed. En jij had forbidden, en het zijn niet de pagina's die verboden zijn, maar juist toegestaan.
wat is een array dan precies(A)?

kijkt die dan niet of p niet in $forbidden voorkomt?
omdat er ! voor in_array staat??

en waaruit bestaat $forbidden dan?
is dat een lijst met paginas die dus niet zijn toegestaan?
of als het $allowed is (moet dan eigenlijk ook dat ! of zonder?) een lijst met paginas die wel zijn toegestaan?

en als gewoon alle bestanden zijn toegestaan in die map?
zo?

<?php
  if(isset($_GET['p']))
  {
    include('./pages/'.$_GET['p'].'.php');
  }
else{
   include('home.php');
}
?> 
denk dat ik hem zo dan goed heb?? of niet?


<?php
$forbidden = array("Admin");

  if(isset($_GET['p']) && !in_array($_GET['p'],$forbidden))
  {
    include('./pages/'.$_GET['p'].'.php');
  }
else{
   include('standaard.php');
}
?> 


of eenvoudig, dus als ik de admin page in een andere map zet, zoals hierboven in t vorige bericht?

Reageren