> Tous les forumsForum des Webmasters

 redirection en phpSujet résolu
Statut du sujet : RESOLU Imprimer
 t671
  Posté le 19/01/2007 @ 18:23  
 Astucien

1067 Messages

Bonjour,

Je veux construire un site sans frame en phph et html.
J'ai un problème pour la redirection en php (je voudrais en php faire pointer un lien vers un autre serveur).
Voilà ce que j'ai écrit :


<ul>
<li><a href="index.php?page=accueil">Accueil</a></li>
<li><a href="index.php?page=presentation">Présentation</a></li>
<li><a href="index.php?page=livredor">Livre d'or</a></li>
</ul>
</div>


<div class="frame">

<?php
$pages=array(
'accueil'=>'accueil',
'presentation'=>'presentation',
'livredor'=>'http://xxxx.free.fr/livredor/index.php'
);

Pourquoi le lien ne fonctionne t'il pas ? Où est mon erreur (je pense que cela provient de la syntaxe) ???

Merci

 Afficher le profil de t671 Envoyer un message privé à t671
 
 
Publicité
 Malcolm  Posté le 19/01/2007 à 18:30  
  Astucien


7299 Messages
faudrait voir l'erreur, parce que là, le code (si incomplet soit-il) ne devrait pas poser de pb.
Afficher le profil de Malcolm Voir la configuration de MalcolmEnvoyer un message privé à Malcolm
  Revenir en haut de la page
 millefeintes  Posté le 20/01/2007 à 01:26  
Petit astucien

480 Messages

salut, comme dit malcom, faudrait voir l'erreur que cela produit.

perso, j'aurai mis :

<ul>
<li><a href="index.php?page=accueil">Accueil</a></li>
<li><a href="index.php?page=presentation">Présentation</a></li>
<li><a href="http://xxx.free.fr/livredor/index.php">Livre d'or</a></li>
</ul>
</div>

sinon quel est le traitement fais tu avec le tableau $pages ?

Afficher le profil de millefeintes Voir la configuration de millefeintesEnvoyer un message privé à millefeintes
 Revenir en haut de la page
 t671  Posté le 20/01/2007 à 15:53  
Astucien

1067 Messages

Voici mon erreur quand je teste à partir de mon poste :

Warning: main(http://xxxxxx.fr/livredor/index.php.htm): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in D:\www\php\Pcigales\index.php on line 61

Warning: main(): Failed opening 'http://xxxxx.fr/livredor/index.php.htm' for inclusion (include_path='.;c:\php4\pear') in D:\www\php\Pcigales\index.php on line 61

Et voici l'erreur quand je teste en positionnant le fichier sur un serveur :

Warning: main(http://th1.free.fr/livredor/index.php.htm) [function.main]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /mnt/122/free.fr/1/4/th11/test/index.php on line 61

Warning: main() [
function.include]: Failed opening 'http://th1.free.fr/livredor/index.php.htm' for inclusion (include_path='/mnt/122/free.fr/1/4/th11/include:.:/usr/php4/lib/php') in /mnt/122/free.fr/1/4/th11/test/index.php on line 61

Afficher le profil de t671 Voir la configuration de t671Envoyer un message privé à t671
 Revenir en haut de la page
 t671  Posté le 20/01/2007 à 16:59  
Astucien

1067 Messages

Je crois avoir trouvé d'où vient l'erreur. Dans la suite de mon code, je dis ceci :

);
if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
include $pages[$_GET['page']].'.htm';

Donc, je lui dis d'ouvrir des pages htm, mais a un moment, je veux ouvrir une page php. Et je pense que c'est là que ça coince !!!!!

Mais je ne sais p)as comment on fait pour autoriser les 2 styles de page .....

Merci

Afficher le profil de t671 Voir la configuration de t671Envoyer un message privé à t671
 Revenir en haut de la page
 The Retriever  Posté le 21/01/2007 à 04:30  
Petit astucien

124 Messages

ben tu ajoute les extensions dans ta redirection

et tu enleves le '.htm' de ton ajout (ainsi, ca fera plus xxx.php.htm)

donc...

<ul>
<li><a href="index.php?page=accueil">Accueil</a></li>
<li><a href="index.php?page=presentation">Présentation</a></li>
<li><a href="index.php?page=livredor">Livre d'or</a></li>
</ul>
</div>


<div class="frame">

<?php
$pages=array(
'accueil'=>'accueil.htm',
'presentation'=>'presentation.htm',
'livredor'=>'http://xxxx.free.fr/livredor/index.php'
);

et

);
if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
include $pages[$_GET['page']].;

Afficher le profil de The Retriever Voir la configuration de The RetrieverEnvoyer un message privé à The Retriever
  Revenir en haut de la page
 t671  Posté le 21/01/2007 à 12:11  
Astucien

1067 Messages

Merci The retreiver,

J'ai fait comme tu m'as dit, j'ai enlevé le " '.htm' ", et j'ai comme réponse :

Parse error: parse error, unexpected ';' in D:\www\php\Pcigales\index.php on line 95

(la ligne 95 correspond à la ligne où il y avait le htm) ...........

Si j'écris (j'enlève " .'.htm' "):

if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
include $pages[$_GET['page']];
?>

la page php s'affiche, mais plus les pages htm .....



Modifié par t671 le 21/01/2007 12:21
Afficher le profil de t671 Voir la configuration de t671Envoyer un message privé à t671
 Revenir en haut de la page
 t671  Posté le 21/01/2007 à 15:52  
Astucien

1067 Messages

Merci à tous ............. j'ai trouvé .................

Afficher le profil de t671 Voir la configuration de t671Envoyer un message privé à t671
 Revenir en haut de la page
Haut de la page 
Inscrivez-vous !
- Posez vos questions

- Résolvez vos problèmes

- Aidez les autres

- Participez et créez vos discussions

- Dialoguez en privé avec d'autres membres

- Suivez vos sujets préférés

- Affichez les signatures des membres

TOUT EST GRATUIT !

Je crée mon compte



Vous avez besoin d'aide ?
Des centaines d'experts sont à votre disposition sur les forums PC Astuces pour vous aider gratuitement, 24h/24, 7j/7.

Les derniers sujets résolus !
 

 > Tous les forumsForum des Webmasters

 
Forum PC Astuces© 1997-2008 WebastucesAller en haut de la page