IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème de syntaxe pour réécriture


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut Problème de syntaxe pour réécriture
    Bonjour,

    je suis confrontée à un problème un peu particulier. Je dois faire un bout de code pour faire une redirection mais non pas par le .htacess cela aurait été "trop simple" (j'y ai pas accès), mais en php.

    Voilà la problématique:

    une redirection existe déjà.

    Elle redirige http://www.domaine.fr ou bien http://domaine.fr vers http://www.domaine.fr/catalog.php.

    Ce que je voudrais faire:

    C'est garder cette redirection vers catalog.php mais en plus faire en sorte que toutes les adresses sans le www soient redirigées vers le www, et ce sur l'index ou non.

    Soit http://domaine.fr vers http://www.domaine.fr/catalog et par exemple également http://domaine.fr/other ver http://www.domaine.fr/other

    Le code existant est celui ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    header ("HTTP/1.1 301 Moved Permanently");
    header("Location: http://www.domaine.fr/catalog.php".$affiliationCheck);
    Il fait effectivement une redirection de http://domaine.fr vers http://www.domaine.fr/catalog.php mais les autres adresses sans les www ne sont pas réécrites.

    Dans ce bout de code que j'ai rééécrit, quelque chose ne semble pas être correct:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    header ("HTTP/1.1 301 Moved Permanently");
    header("Location: http://www.domaine.fr/catalog.php".$affiliationCheck);
    $host = strtolower($_SERVER["HTTP_HOST"]); 
    if ($host != "www.domaine.fr") 
    { or $host == "domaine.fr" $uri = $_SERVER["REQUEST_URI"]; 
    header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.domaine.fr$uri"); exit(); 
    }
    Est ce que ca c'est correct ?

    Sinon quelqu'un peut il m'aider à trouver une solution ?

    Merci d'avance,
    Nathalie

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Dans ce morceau de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if ($host != "www.domaine.fr") 
    { or $host == "domaine.fr" $uri = $_SERVER["REQUEST_URI"];
    Ta condition OR est mal placée, elle devrait être dans les parenthèses.

  3. #3
    Membre habitué
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut
    Merci de votre réponse,
    ce serait donc comme ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    header ("HTTP/1.1 301 Moved Permanently");
    header("Location: http://www.domaine.fr/catalog.php".$affiliationCheck);
    $host = strtolower($_SERVER["HTTP_HOST"]); 
    if ($host != "www.domaine.fr" OR $host == "domaine.fr") 
    {$uri = $_SERVER["REQUEST_URI"]; 
    header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.domaine.fr$uri"); exit(); 
    }
    Est ce que ce code va bien reproduite ce que je veux ou bien y-a-t-il encore des choses à revoir dedans ?

    Comme cela ne serait-ce pas plus correct ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    header ("HTTP/1.1 301 Moved Permanently");
    header("Location: http://www.domaine.fr/catalog.php".$affiliationCheck);
    $host = strtolower($_SERVER["HTTP_HOST"]);
    $uri = $_SERVER["REQUEST_URI"]; 
    if ($host != "www.domaine.fr" OR $host == "domaine.fr") 
    { header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.domaine.fr$uri"); exit(); 
    }
    Ou peut être comme ça (je crois que ca pourrait être bon, non ?)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $host = strtolower($_SERVER["HTTP_HOST"]);
    $uri = $_SERVER["REQUEST_URI"]; 
    if ($host != "www.domaine.fr" OR $host == "domaine.fr" 
    AND $uri == " " OR $uri == "/" OR $uri == "/index.php" OR $uri == "/index.html")
    { header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.domaine.fr/catalog.php"); exit(); 
    }
    else if ($host != "www.domaine.fr" OR $host == "domaine.fr")
    { header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.domaine.fr$uri"); exit(); 
    }
    Merci de votre aide en tout cas,
    Nath.

Discussions similaires

  1. problème de syntaxe pour un débutant
    Par marsamandes dans le forum Langage
    Réponses: 3
    Dernier message: 02/05/2007, 14h25
  2. [VBA-Excel] Problème de syntaxe pour lien hypertexte
    Par matt8-5 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/01/2007, 12h23
  3. Problème de syntaxe pour fichier SQL
    Par savior dans le forum SQL
    Réponses: 12
    Dernier message: 13/09/2006, 14h33
  4. Problème de syntaxe pour concaténer des variables
    Par renaud26 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 05/09/2006, 10h44
  5. Problème de syntaxe pour Firefox
    Par daladim dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 24/09/2005, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo