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

Apache Discussion :

Mes urls rewrinting ne marchent pas !


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut Mes urls rewrinting ne marchent pas !
    Bonjour à tous, je suis en train de rajouter des petits modules au niveau de mon blog.
    J'ai un problème au niveau de mes url rewriting.

    Voila, je veux changer une url de ce type: http://leknoppix.fr/article.php?titreurl=t...nt_les_vacances
    vers un url de type:
    http://leknoppix.fr/article/toujours_en_co...nt_les_vacances

    Le problème c'est que je n'arrive pas a récupéré la valeur get.

    Voici mon htaccess:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SetEnv PHP_VER 5
    RewriteEngine on
    RewriteRule ^([0-9a-zA-Z_]+)\.html$ $1.php
    RewriteRule ^index-([0-9]+)\.html$ index.php?page=$1
    RewriteRule ^lire_commentaire/([0-9]+)/([0-9]+)/lecture.html lirecommentaire.php?id_news=$1&page=$2
    RewriteRule ^ajouter/([0-9]+)/commentaire.html commentaire.php?id_news=$1
    RewriteRule ^([0-9]+)/([0-9]+)/valider valider.php?id_com=$1&time=$2
    RewriteRule ^article/([0-9a-zA-Z_-]+) article.php?titreurl=$1 [L]
    et mon debut de code qui permet de récupérer les valeurs GET.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $titreurl = $_GET['titreurl'];
    $requete = "SELECT news.photo, news.id, news.titre, news.titreurl, news.content, DATE_FORMAT(news.date,\"%d/%m/%Y &agrave; %H:%i\") as date ,
    	   COUNT(commentaires.id) as count , DATE_FORMAT( MAX(commentaires.date), \"%d/%m/%Y\") as lastcomm
    FROM news
    	LEFT JOIN commentaires ON (news.id = commentaires.id_news AND commentaires.valider='OUI')
    WHERE news.titreurl='$titreurl'
    GROUP BY news.id
    ORDER by news.id DESC"; ?>

    Les liens plus haut sont des liens réels, regardé si il y a des erreurs.

    PS: je pense qu'il y a un problème au niveau de l'htaccess mais c'est pas sur.

    Merci d'avance.

    PS: je suis chez OVH.

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    J'obtiens l'erreur suivante :
    Fatal error: Cannot instantiate non-existent class: mysqli in /homez.14/leknoppi/www/article.php on line 3
    Ca ne ressemble pas à un problème de réécriture car on a bien le script article.php qui est appelé, mais plutôt à une erreur d'include qui n'a pas été fait. Il faut vérifier tous tes includes : avec une réécriture, je ne sais pas quel chemin est réellement reconnu par PHP pour le script article.php, donc si tu fais des includes avec des chemins relatifs, ça peut foirer. Essaie plutôt de faire des includes avec des chemins absolus avec $_SERVER["DOCUMENT_ROOT"].

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut
    C'est logique, j'ai dessativer php5. Etant au taf, je ne pourrais que le mettre en ligne ce soir.
    En aucun cas

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut
    Voila, j'ai réactiver PHP5.
    POuvez vous m'aider a résoudre le problème des mes url rewriting.

  5. #5
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    En fait, la négociation de contenu est activée, ce qui fait que tu ne passes pas du tout par tes RewriteRule. Pour t'en convaincre : http://leknoppix.fr/article?titreurl=toto : y a pas de / après "article", donc je ne passe pas par les RewriteRule et pourtant c'est la bonne page qui s'affiche et qui cette fois retrouve le paramètre titreurl.

    Donc, de 2 choses l'une : soit tu arrives à désactiver la négociation de contenu (ce qui doit se faire avec un Options -MultiViews à mettre dans ton .htaccess mais je n'en suis pas sûr), soit tu modifies dans article la façon de récupérer la valeur de titreurl non plus en cherchant un paramètre d'URL mais en découpant l'URL complète demandée pour récupérer ce qui suit /article/ (et auquel cas, ta RewriteRule vers article.php ne sert plus à rien).

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2007
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2007
    Messages : 282
    Par défaut
    Merci pour cette réponse. Je n'ai pas tout compris, mais je vais faire des recherches.
    Si j'ai bien compris, mes rewritings ne sont pas lu d'après ce que j'ai compris.
    Je vais faire d'autres recherches.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Mes applications ne marchent pas sous vista
    Par miamou dans le forum Runtime
    Réponses: 1
    Dernier message: 21/06/2010, 15h20
  2. Réponses: 7
    Dernier message: 20/01/2010, 19h58
  3. Mes lumières ne marchent pas
    Par killwin dans le forum OpenGL
    Réponses: 1
    Dernier message: 29/09/2009, 01h17
  4. Mes include() ne marchent pas
    Par Elisée A. dans le forum Langage
    Réponses: 4
    Dernier message: 19/10/2007, 16h34
  5. Réponses: 7
    Dernier message: 21/07/2006, 14h51

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