Redirection header (hébergeur Lycos)

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Redirection header (hébergeur Lycos)

Message le Mar Sep 04, 2007 23:40

Bonjour,

J'ai fais un site en php. Je l'ai programmé en php et html + css, le tout à l'aide de easyphp 2.0.

MON PROBLEME : j'ai mis le site en ligne chez Lycos. Je me rends compte que mes redirections ne marchent plus. Je me sert de header("Location:");
J'ai effectué une recherche dans les autres pot mais aucune explication de résout mon problème.


Voici les deux pages dans lesquelles le problème apparaît. Il y a une page qui affiche un éditeur html et quand je clique sur Submit , ça m'envoi vers une page qui insère les infos dans la base de données. A la fin de cette page , il y a ma redirection. Je vous joins les deux pages :

admin_ateliers.php :

Code: Tout sélectionner
<?php

include_once 'fonctions.php';


if (!isset($_SESSION['username'])){
echo "Cet espace est sécurisé. <p>Pour y avoir accès, ouvrez une session et introduisez votre nom d'utilisateur et votre mot de passe.</p> Merci.";

include "connexion.php";
exit();
}
else{
?>

<!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" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<link rel="stylesheet" type="text/css" href="secure.css" />
</head>

<body>

Modification de la page "Ateliers":<br/><br/>
        <?php
include("fckeditor/fckeditor.php") ;
connexion_DB('hxjonathan_db');

   $reqlog = mysql_query("SELECT * FROM contenu_pages WHERE nom_page='ateliers'")or die(mysql_error());
   $log=mysql_num_rows($reqlog);//on compte le nombre de ligne et ON met ce nombre dans la VARIABLE $log
   $info_user=mysql_fetch_array($reqlog);
   $essai=$info_user['contenu_page'];
?>

<form action="home.php?page=2226" method="post">
<?php


$oFCKeditor = new FCKeditor('FCKeditor1') ;
$oFCKeditor->BasePath = 'fckeditor/';
$oFCKeditor->Value = $essai;
$oFCKeditor->Width  = '100%' ;
$oFCKeditor->Height = '310' ;
$oFCKeditor->Create() ;
?>
<br>
<input type="submit" value="Submit">
</form>




<?php
}
?>
</body>
</html>




savedata_ateliers.php :
Code: Tout sélectionner
<?php
include_once 'fonctions.php';

connexion_DB('hxjonathan_db');

$sValue = stripslashes( $_POST['FCKeditor1'] ) ;

$sql = "UPDATE contenu_pages SET contenu_page = '".$sValue."' WHERE nom_page = 'ateliers'";

mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());

header("Location:http://membres.lycos.fr/hxjonathan/home.php?page=1116");



?>


Merci d'avance.


Krysss
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 139
Inscription: Ven Fév 02, 2007 9:36

Message le Mer Sep 05, 2007 9:48

La validation du formulaire n'appelle pas la page "savedata_atelier.php" mais "home.php?page=2226"

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Message le Mer Sep 05, 2007 9:59

home.php?page=2226 correspond justement à la page savedata_ateliers.php. Mes pages sont enregistrées dans un array. Je les appelle en passant un paramètre à l'url.

Tu as une idée pour mon problème ?

John


Krysss
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 139
Inscription: Ven Fév 02, 2007 9:36

Message le Mer Sep 05, 2007 10:08

Alors est ce que ton header est fait avant toute sortie
HTML (echo, print...) ?

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Message le Mer Sep 05, 2007 10:14

Regarde dans le code de la page savedata_ateliers que je t'ai mis plus haut. Il n'y a pas de code html du tout.

John


Krysss
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 139
Inscription: Ven Fév 02, 2007 9:36

Message le Mer Sep 05, 2007 10:37

Oui mais tu me dis que home.php?page=2226 correspond à savedata_atelier.php.
Ca se passe comment dans ta page home?
Est ce que savedata_atelier est un include qui est fait quand le paramètre page=2226 est passé?
Si oui, qu'est ce qu'il y a avant cet include?

C'est pas beau, mais pour tester tu peux faire une redirection en JS à la place du header

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Message le Mer Sep 05, 2007 11:02

C'est vrai que tu manques d'infos pour m'aider. Je vais essayer de te donner plus de détails.

J'ai une page home.php dans laquelle j'ai mes différents bloc structurés à l'aide de CSS. Je fais apparaître mes différentes pages au centre en fonction de l'url qui est envoyé grâce à des liens hypetext ou à des redirections "header en php". Lorsque je clique sur un lien, il check dans ma page corps.php (qui répertorie toutes mes pages dans un array) et affche la page qui correspond par exemple à 2226. Voici ma page corps.php :

Code: Tout sélectionner
<?php

  $pageOK = array(

//cette page corps reprend ce qui apparait au centre de la page
 
'00' => 'default.php',
'01' => 'home.php',
'02' => 'papscolaire.php',
'03' => 'loisirs.php',
'04' => 'beauxarts.php',
'05' => 'papcadeaux.php',
'06' => 'ateliers.php',
'07' => 'promotions.php',
'08' => 'contacts.php',
'09' => 'admin.php',

'1111' => 'admin_home.php',
'5555' => 'verif.php',

'1112'=> 'admin_papscolaire.php',
'1113'=> 'admin_loisirs.php',
'1114'=> 'admin_beauxarts.php',
'1115'=> 'admin_papcadeaux.php',
'1116'=> 'admin_ateliers.php',
'1117'=> 'admin_promotions.php',
'1118'=> 'admin_contacts.php',

'2222'=> 'savedata_papscolaire.php',
'2223'=> 'savedata_loisirs.php',
'2224'=> 'savedata_beauxarts.php',
'2225'=> 'savedata_papcadeaux.php',
'2226'=> 'savedata_ateliers.php',
'2227'=> 'savedata_promotions.php',
'2228'=> 'savedata_contacts.php',
'2229'=> 'savedata_home.php',



);

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


?>



-----------------------------------------------------

Mon problème c'est que j'ai une page (admin_ateliers.php) dans laquelle j'ai un formaulaire html qui fait :

Code: Tout sélectionner
<form action="home.php?page=2226" method="post">
<?php


$oFCKeditor = new FCKeditor('FCKeditor1') ;
$oFCKeditor->BasePath = 'fckeditor/';
$oFCKeditor->Value = $essai;
$oFCKeditor->Width  = '100%' ;
$oFCKeditor->Height = '310' ;
$oFCKeditor->Create() ;
?>
<br>
<input type="submit" value="Submit">
</form>


Donc il me renvoi vers savedata_ateliers. Apparement il va bien vers cette page n'effectue page bien la redirection qui est à la fin.
Code: Tout sélectionner
header("Location:http://membres.lycos.fr/hxjonathan/home.php?page=1116");


Krysss
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 139
Inscription: Ven Fév 02, 2007 9:36

Message le Mer Sep 05, 2007 11:27

Essaye
@header
("Location:http://membres.lycos.fr/hxjonathan/home.php?page=1116");

Je pense que c'est dû a Lycos

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Message le Mer Sep 05, 2007 11:32

C'est quoi le but de la @ avant ??

C'est pas fait pour ne pas avoir de message d'erreur à la base ?

Bon j'essaye, je te dis quoi.

Merci

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Message le Mer Sep 05, 2007 11:35

Non ça marche pas mieux.

Une autre idée ?


Krysss
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 139
Inscription: Ven Fév 02, 2007 9:36

Message le Mer Sep 05, 2007 12:59

Oui le @ n'affiche pas les messages d'erreurs, c'etait juste au cas ou, il faut l'enlever maintenant (tu peux le laisser que si tu teste la valeur de retour de la fonction sur laquelle tu l'appliques)
Bref la redirection marche chez moi , c'est pour ça que je te dis que ça doit être un problème chez lycos.

Peut être ont ils interdit la fonction header....

En attendant d'en savoir plus, tu peux faire une redirection JS, c'est pas beau mais ça dépanne.
echo "<script language='Javascript'>document.location='http://membres.lycos.fr/hxjonathan/home.php?page=1116'</script>";

hx.jonathan
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 115
Inscription: Mer Mar 02, 2005 17:42

Message le Mer Sep 05, 2007 13:06

Ok merci, je vais vérifier de leur coté.

John


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

  • Tester la validité d'un lien
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).
  • Test du code HTTP d'une page
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités