PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 16-03-2010 14:12:26

loran
Membre
Inscription : 16-03-2010
Messages : 3

encore un problème de débutant avec include

bonjour,

Alors voila, j'ai commence à pragrammer mon tout premier site il y a deux jours et voici le probleme sur lequel je bute depuis quelques heures déjàs

ma page index.php se compose de deux div

un div menu avec des liens, disons lien 1, lien 2, lien 3
et un div contenu

Quand je clique sur un des liens celui-ci s'affiche dans le div contenu de la page index . Jusque là pas de problemes .
Ma page lien 2 comporte egalement 2 div, 1 menulien2 avec lien a, lien b, lien c et un contenu.

Donc quand je clique sur lien 2 ma page index affiche bien le contenu du lien 2 (menuLien2 et page par default), ça tombe bien, c'est exactement ce que je voulais . Ensuite quand je clique sur lien a, b, ou c, ma page index disparait et je me retrouve avec ma page lien 2, son menu et ma page a,b,ou c

Pourquoi ma page index affiche-t-elle ma page lien 2 avec ma page par default et pourquoi elle disparait au profit de la page lien 2 quand je veux
afficher les pages a,b,ou c ?

page index.php

<div>
<?
include('menu.php')
</div>
<div>
<?php
  $pageOK = array('lien 1' => 'lien1.php',
                  'lien 2' => 'lien2.php', 
                  'lien 3' => 'lien3.php');
                
  if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) )
{
    include($pageOK[$_GET['page']]);
  }
else
{
    include('lien1.php');
  }
?>
</div>

page lien2.php

<div>
<?php
include ('menulien2.php')
?>
</div>
<div>
<?php
  $pageOK = array('a' => 'pagea.php',
                  'b' => 'pageb.php', 
                  'c' => 'pagec.php',
      'default' => 'default.php');

  if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) {
    include($pageOK[$_GET['page']]);   
  }
else
{
    include('default.php');   
  }
?>
</div>


Merci pour votre aide.

Dernière modification par loran (16-03-2010 14:14:35)

Hors ligne

#2 16-03-2010 16:32:02

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : encore un problème de débutant avec include

Ton premier tableau vérifies les indices lien1, lien2 et lien3 alors que ton second vérifies les indices a,b et c.
La variable $_GET['page'] ne peut pas être égales à ces deux valeurs en même temps. C'est comme dire que la fraise est aussi de la vanille.

Hors ligne

#3 16-03-2010 17:21:33

loran
Membre
Inscription : 16-03-2010
Messages : 3

Re : encore un problème de débutant avec include

merci pour la reponse,

j'ai change les noms des fonctions  page et pageOK en pagelien2 et pagelien2OK dans mes pages lien2 et menulien2 en mais j'ai toujours le même probleme d'affichage.
quand je clique sur lien2 voici l'URL

http://localhost/monsite/index.php?page=lien2

et quand je clique sur le lien a ca devient ça

http://localhost/monsite/lien2.php?pagelien2=a

alors que j'aimerais pouvoir rester sur ma page index.

Hors ligne

#4 17-03-2010 07:04:13

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : encore un problème de débutant avec include

Pourrait-on voir la tête de tes liens ?

Dans tous les cas la fonction include ne remplace pas l'adresse dans ton navigateur. Donc si tu arrives sur une page lien2.php c'est que ton lien l'y envoyait.

Hors ligne

#5 17-03-2010 23:31:41

loran
Membre
Inscription : 16-03-2010
Messages : 3

Re : encore un problème de débutant avec include

<body>
<ul>
   <li><a href="index.php?page=lien2&lien2.php?pagelien2=pagea">a</a></li>
   <li><a href="index.php?page=lien2&lien2.php?pagelien2=pageb">b</a></li>
</ul>
</body>
Suite a ta question j'ai modifier mes liens en y ajoutant la partie   index.php?page=lien2&  que je n'avais pas avant.
mon URL est maintenant

http://localhost/monsite/index.php?page=lien2&lien2.php?pagelien2=pagea

l'affichage reste bien sur la page index mais j'ai maintenant la page default.php en contenue alors que d'après l'URL je devrais avoir la page pagea.php

Je sais je suis un peu long à la detente mais mon cerveau a reçu un peu trop de données ces trois derniers jours entre HTML, CSS, et PHP .
Je devrais peut-être faire une petite pause pour mettre tout ça dans l'ordre .

Hors ligne

#6 18-03-2010 10:24:57

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : encore un problème de débutant avec include

l'url devrait être :
http://localhost/monsite/index.php?page=lien2&pagelien2=pagea

Hors ligne

Pied de page des forums