Page 1 sur 1

la fonction include avec un lien

Posté : 08 déc. 2005, 11:53
par mibs
Hello,

Voilà ce que je cherche à faire ici dessous ma page d'index contient un div. ou à l'intérieur il y a un lien et lorsque on est donc sur cette page d'index et que l'on clique sur le lien il doit faire un include, de la page addnew.php sur la page index, mais mon lien ne marche pas correctement et met des erreurs, mon code est pas formulé correctement ?
<div id="menucadre"><A HREF="new/addnew">ZONE AJOUTER NEW &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A><br>
<?php
    $page = $_GET['new/addnew'];
    include("$page.php"); 
 ?> 
</div id="menucadre">

J' ai essayé de mettre ceci aussi
<A HREF="$page">
au lieu de
<A HREF="new/addnew">
Mais cela ne marche pas non plus... j'aurai besoin de votre aide merci beaucoup...

Posté : 08 déc. 2005, 11:59
par charabia
Ton code n'est pas bon. La méthode $_GET sert à récupérer une variable transmise par URL.

Exemple :

Code : Tout sélectionner

<a href="index.php?ta_variable=toto">coucou</a>
Pour récupérer cette variable toto, tu utilises :

Code : Tout sélectionner

$_GET['ta_variable']

Posté : 08 déc. 2005, 12:29
par Invité
merci de ton aide je me suis aidé du code que tu as montré à un autre membre, :)

<div id="menucadre" >
<a href="principale.php?page=addnew" title="Ajouter la new">*NEW*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A><br>

<?php if (isset($_GET['page'])) include($_GET['page'].'.php');?>
</div id="menucadre">
ca marche trés bien, juste une chose il faut bien que je sécurise ? car maintenant ce n'est pas sécurisé ?

Posté : 08 déc. 2005, 12:37
par charabia
Pour le sécurisé, utilises la source finale que tu verras dans l'autre post avec les tableaux ;)

Posté : 08 déc. 2005, 15:00
par mibs
Hello je voulais vous montrer ma sécurité pour voir si c'est correct j' ai fais ceci
/*php <?php  
if (($_GET['ajoutdenew'] == "new/addnew")or ($_GET['ajoutdenew'] == "")) {
     
if (isset($_GET['ajoutdenew'])) include($_GET['ajoutdenew'].'.php'); // inclus addnew grace à include dans l'url du menu 
} else { 
?>
<center>PAGE INVALIDE ERROR </center>
<?
}
?>
 /php*/
Mais en fait ma sécurité ne fait que de mettre un message... je pense que je devrais plutôt faire ceci
/*php <?php  
if (($_GET['ajoutdenew'] == "new/addnew")or ($_GET['ajoutdenew'] == "")) {
     
if (isset($_GET['ajoutdenew'])) include($_GET['ajoutdenew'].'.php'); // inclus addnew grace à include dans l'url du menu 
} else { 

if (isset($_GET['erreur404'])) include($_GET['erreur404'].'.php');
<?
}
?>
 /php*/

Voilà que je serai à présent redirigé vers une page erreur 404 que pensez vous ? C'est peut être pas méga sécurisé mais je suis pas un expert et je veux pas faire trop compliqué pour commencer

merci

Posté : 08 déc. 2005, 15:12
par charabia
<?php 

  // On définit le tableau contenant les pages autorisées 
  // ---------------------------------------------------- 
  $pageOK = array('ajoutdenew' => 'news/addnew.php'); 

  // On teste que le paramètre d'url existe et qu'il est bien autorisé 
  // ----------------------------------------------------------------- 
  if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) { 
    include($pageOK[$_GET['page']]);   // Nous appelons le contenu central de la page 
  } else { 
    include('erreur404.php');   // Page par défaut quant elle n'existe pas dans le tableau 
  } 

?>
et ton lien

Code : Tout sélectionner

<a href="ta_page.php?page=ajoutdenew">cliquez ici</a>