Rechercher : dans
Par :

Include en php pour site web

Dernière réponse le 25 jun 2009 à 00:33:16 Gandhi78, le 22 jun 2009 à 22:42:13 
 Signaler ce message aux modérateurs

Bonjour,

Je suis sur le point de reprogrammer un site. Pour cela je voudrais utiliser les fonctions include en PHP. Mais cela me pose problème, j'aurai trois include le haut, le milieu et le bas. dans l'include du haut j'aurai un bandeau de petits drapeaux pour les langues. J'aimerai quand je clique sur un des drapeaux changer le langage de toute la page et aussi celui des includes voir même changer d'include car l'include du haut comporte une bannière d'image avec des écritures différente en fonction de la languge.

Est ce possible

Je vous remercie d'avance. Je vous mets le site en copie pour vous donner une idée: http://www.borispatagonia.com/fr/

Configuration: Windows XP
Firefox 3.0.11

Meilleures réponses pour « Include en php pour site web » dans :
[Aspirateur de pages HTML] Comment aspirer un site Web ? VoirHTTrack est un excellent aspirateur, gratuit en licence GNU GPL (libre). HTTrack permet de télécharger un site web d'Internet vers votre disque dur, en construisant récursivement tous les répertoires, récupérant html, images et fichiers du serveur...
[Téléchargement] Récupérer un site web en .chm (Windows Help) VoirIl peut être pratique d'avoir en local certains sites web, par exemple pour consulter des documentations sur un ordinateur portable pendant un voyage. Voici comment récupérer un site web sous forme de fichier .chm Pourquoi le format .CHM ? C'est...
Webmastering - Conception d'un site web VoirConception d'un site web La conception d'un site web doit être une démarche participative, orientée utilisateurs, c'est-à-dire qu'elle doit se faire, autant que possible, en concertation avec un ensemble de représentants de l'entreprise ou de...
Mesure d'audience d'un site web VoirMesure et qualification de l'audience d'un site web L'objectif de tout webmaster est de développer l'audience de son site web, c'est-à-dire d'accroître le nombre de visites journalières. Il lui est ainsi indispensable de disposer d'indicateurs lui...
Webmaster (Administrateur de site web) VoirWebmaster (Administrateur de site web) Le webmaster (également appelé administrateur de site web ou webmestre) est chargé du maintien et de l'évolution du site web de l'entreprise. A ce titre, il travaille à définir l'architecture et l'arborescence...

1

amjahed, le 24 jun 2009 à 00:50:58

Salam,
Je vous propose cette astuce,
- Le fichier d'entête haut-fr.html, haut-ang.html, haut-es.html ...
- Une variable globale $langageSite (sa valeur peut être déplacé via un formualire invisible
- le clique sur le drapeau Espagnol entraine l'affectation de la valeur "es" à $langageSite, donc include "haut-".$langageSite.".html" donnera haut-es.html

Je donne cette astuce sans trop examiner les détails, et je crois que vous pouvez faire mieux
Bonne chance. Je ne suis pas le biologiste, je suis juste son guide dans la forêt.
J'utilise : Ubuntu, OpenOffice, Firefox, GIMP, Inkscape, 7zip, audacity ... 

Répondre à amjahed

2

Gandhi78, le 24 jun 2009 à 18:42:03

Merci pour cette réponse, je vais étudier cette solution dans mon code.

J'ai commencer à refaire l'index mais ça me donne une erreur dans mes includes:

if ($_GET['page'] == "/fr/qui") il n'aime pas ces lignes là j'ai essayer ceci if ($_GET['page'] == "qui") mais apparemment il ne trouve pas la page qui se troue dns un dossier /fr je ne vois pas trop l'erreur je pense qu'elle doit être simple mais je ne vois pas. J'ai mis le code entier ci dessous.
.
<?php

//page html
echo '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Boris Patagonia</title>
<meta http-equiv="Content-Type" content="texte/html;charset=iso-8859-1" />
</head>
<body>
<div id="conteneur">
';
include "entetes/top.php";

echo'<div id="center">';

if ($_GET['page'] == "/fr/qui")
{
include("./fr/qui.php");
}

if ($_GET['page'] == '/fr/argentinechili')
{
include('./fr/argentinechili.php');
}

if ($_GET['page'] == '/fr/services')
{
include('./fr/services.php');
}
else
{
include('./fr/activites.php');
}
echo'</div>';

include "entetes/bottom.php";


echo '
</div>
</body>
</html>
';
?>

Répondre à Gandhi78

3

amjahed, le 24 jun 2009 à 18:49:54

Puisque le code suivant marche :

include "entetes/top.php";
et celui là :
include("./fr/qui.php"); 
ne l'ai pas, essayer d'eliminer le point et le slash de "./fr ..." Je ne suis pas le biologiste, je suis juste son guide dans la forêt.
J'utilise : Ubuntu, OpenOffice, Firefox, GIMP, Inkscape, 7zip, audacity ... 

Répondre à amjahed

4

Gandhi78, le 24 jun 2009 à 19:03:35

C'est vraiment les lignes : if ($_GET['page'] == "/fr/qui") ; if ($_GET['page'] == 'argentinechili') ;if ($_GET['page'] == "services")

Qui pose problème les includes en dessous il ne me met pas d'erreur, j'ai tester ces trois types de codes mais il me met toujours l'erreur:

Notice: Undefined index: page in C:\Program Files\EasyPHP 3.0\www\index.php on line 18

en faite je voudrai afficher les pages des include si il trouve le mot écrit entre " " dans URL du liens que l'utilisateur vient de cliquer

Répondre à Gandhi78

5

amjahed, le 24 jun 2009 à 20:40:24

Pour enlever les messages d'erreurs, suivez la procédure :
http://www.npds.org/viewtopic.php?topic=8174&forum=28

Pour "/fr/qui", ça veut dire que le dossier fr se trouve à la racine : enlever le slash.

Peut être que ça peut t'aider pour déboguer (remplacer par vos valeurs) :

<?php
if(file_exsists('themes/'.$theme.'/index.php'))
   include('themes/'.$theme.'/index.php');
else
   require('themes/default_theme/index.php');
?>

Source : http://fr2.php.net/manual/en/function.include.php
Je ne suis pas le biologiste, je suis juste son guide dans la forêt.
J'utilise : Ubuntu, OpenOffice, Firefox, GIMP, Inkscape, 7zip, audacity ... 

Répondre à amjahed

6

Giglagla, le 24 jun 2009 à 20:49:02

Salut, ton problème c'est que quand tu n'as pas $_GET['page'] dans l'url, tu demande à ton code de tester $_GET['page '] mais il n'éxiste pas ^^.
Il suffit juste de tester si ta get éxiste avant, remplace : if ($_GET['page'] == "/fr/qui")
par : if (isset($_GET['page']) == "/fr/qui")
et ce pour chaque condition ;)

Répondre à Giglagla

7

Gandhi78, le 24 jun 2009 à 21:10:08

J'ai plus d'erreur MERCI!! , mais sa ne m'arrange pas que j'ai rien dans l'url car en faite je voudrai changer que mon conteneur et quand je clique sur un liens de mon include top et là il me change toute la page.
J'ai diviser mon site en 3: un include top, le conteneur et l''include bottom.

Dois je changer les liens de l'include top. Je suis avec easyPHP si au cas ou il y a des différences avec wamp

Quand je clique sur un liens mon url se présente comme ça http://127.0.0.1/fr/qui.php localhost dossier de la age et la page.

Répondre à Gandhi78

8

Giglagla, le 24 jun 2009 à 21:21:25

Pour ce qui est de ne plus rien avoir dans l'url, si tu n'as plus rien alors tu sera dans la condition else :

else include('./fr/activites.php');

je n'ai pas bien compris la phrase suivante ^^ : "je voudrai changer que mon conteneur et quand je clique sur un liens de mon include top il me change toute la page."
Tu voudrais changer seulement ton contenu mais ?

Répondre à Giglagla

9

Gandhi78, le 24 jun 2009 à 21:27:31

Oui, ce que je cherche à faire est seulement de changer le milieu de mon site le contenu. Mon idée est de charger mes autres pages dans un include. Quand je clique sur un liens j'aimerai que la page qui est associer s'affiche dans un include entre mon top et mon bottom.

Répondre à Gandhi78

10

Giglagla, le 24 jun 2009 à 21:44:27

J'ai compris, je ne pense pas que ce soit possible en php (je me trompe peut être), si tu ne veux pas rafraichir entierement ta page lorsque celle ci change (c'est bien ce que tu souhaite ? ^^) jette un coup d'oeil à la balise html <iframe> mais je crois qu'elle n'éxiste plus en xhtml.

Je t'ai trouvé sa : http://www.siteduzero.com/tutoriel-3-4710-iframe-loading.html
Bonne lecture ^^

Répondre à Giglagla

11

Gandhi78, le 24 jun 2009 à 21:47:08

Je connais les iframes mais c'est pas terrible pour le référencement c'est pour cela je voulais passer par des include

Répondre à Gandhi78

12

Giglagla, le 24 jun 2009 à 21:56:10

Non je ne pense pas que ce soit possible en php désolé.

Répondre à Giglagla

13

Gandhi78, le 24 jun 2009 à 22:19:23

Bha en faite si, mais c'est pas encore top j'ai mi <a href="?page=nomdelapage.php"> dans les liens.

Voici mon code de mon top:
<?php

echo'

<ul id="menu_horizontal">
<li><a href="?page=qui.php">Qui suis je ?</a></li>
<li><a href="?page=argentinechili.php">Argentine & Chili</a></li>
<li><a href="?page=services.php">Services</a></li>
<li><a href="?page=activites.php">Activités</a></li>
<li><a href="?page=extras.php">Autres destinations</a></li>
<li><a href="?page=videos.php">Vidéos</a></li>
<li><a href="?page=temoignages.php">Témoignages</a></li>
<li><a href="?page=partenaires.php">Partenaires</a></li>
<li><a href="?page=contact.php">Contact</a></li>
</ul>

';
?>

Quand je clique sur un liens il me met bien la page dans mon include du milieu tout en gardant mon top et mon bottom le seul problème c'est que quand je clique sur un lien il me met toutes les pages de mon menu à la suite entre mon top et bottom alors que je veux qu'il affiche que le lien cliquer.

J'ai plus qu'a trouver comment afficher que le lien cliquer de mon include top et non tous les liens et c'est gagné.

Répondre à Gandhi78

14

Giglagla, le 24 jun 2009 à 22:29:19

Je pense que ce sont tes conditions qui ne sont pas bonnes, essai de remplacer

if (isset($_GET['page']) == "/fr/qui") include("./fr/qui.php"); 
if (isset($_GET['page']) == '/fr/argentinechili') include('./fr/argentinechili.php'); 
if (isset($_GET['page']) == '/fr/services') include('./fr/services.php'); 
else include('./fr/activites.php');  

par
if (isset($_GET['page']) == "/fr/qui") include("./fr/qui.php"); 
elseif (isset($_GET['page']) == '/fr/argentinechili') include('./fr/argentinechili.php'); 
elseif (isset($_GET['page']) == '/fr/services') include('./fr/services.php'); 
else include('./fr/activites.php');  


l'idée c'est de faire :
si(condition) affiche la page a ;
sinon si(condition) affiche la page b;
.
.
.
sinon affiche la page z;

Répondre à Giglagla

15

Gandhi78, le 24 jun 2009 à 22:55:56

C'est ok ça marche, j'arrive bien à affiher mon include top, le contenue du liens et le bottom. Mainteant je vais voir comment je vis pouvor passer d'une page à l'autre car je reste bloquer sur la page afficher comme si il supprimai la parti de if et elseif par le nouveau contenu.

Répondre à Gandhi78

16

amjahed, le 24 jun 2009 à 23:55:27

1 - passer le fil en résolue
2 - Ou était exactement le problème ? Je ne suis pas le biologiste, je suis juste son guide dans l­a forêt.
J'utilise : Ubuntu, OpenOffice, Firefox, GIMP, Inkscape, 7zi­p, audacity ... 

Répondre à amjahed

17

 Gandhi78, le 25 jun 2009 à 00:33:16

Le problème a été resolue par les liens dans le bottom deux réponse au dessus. Merci encore

Répondre à Gandhi78