Fork me on GitHub




(1) 2 »


Probleme de %20 - url rewriting
Aspirant
Inscrit: 12/03/2009 00:52
Messages: 64
salut a vous

j'ai un problème avec les URL rewriting je sais pas comment éviter les %20 de mes liens je veux les remplacer avec des tirés
les espace s'affiche comme ça donne les liens %20
et changer les lettre accentués par ces équivalents non accentués

j'utilise l irlrewriting pour le module mytube de xoops

ex : mes lien http://xxx.com/modules/mytube/le%20titre%20de%20la%20vidéo-4-344.html

comment je peux le rendre http://xxx.com/modules/mytube/le-titre-de-la-video-4-344.html

j'ai lu pas mal de sujet et j'ai trouvé qu'il fait ajouter:

str_replace(" ","-",$url);

mais je sais pas ou !!!!

merci

Posté le : 15/04/2010 18:10
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Xoops accro
Inscrit: 27/07/2005 16:10
De France
Messages: 2970
Bonjour
Qu'elle système d'url rewriting utilise tu?

Posté le : 15/04/2010 18:24
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Aspirant
Inscrit: 12/03/2009 00:52
Messages: 64
j'utilise .htacces pour l url rewriting,

je voudrais savoir ou il faut ajouter :
str_replace(" ","-",$url);

pour changer les espaces par des (-)

merci

Posté le : 15/04/2010 18:50
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Semi pro
Inscrit: 10/11/2004 13:40
Messages: 1659
dans ton répertoire mytube, tu as des fichiers "seo" ?

Posté le : 16/04/2010 12:26

PS : Toujours faire une sauvegarde des fichiers avant de les modifier !
-------------------------------------------
http://www.aideordi.com
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Aspirant
Inscrit: 12/03/2009 00:52
Messages: 64
salut

j'ai un site "xoops" jutilise le module mytube : http://code.google.com/p/mcdonaldsstore/downloads/list pour les videos j'ai lu le tutoriel de webrankinfo et àa m'a bien aidé

mais j'ai un probleme des espaces dans les liens de mon site

voila ce que je fait :

Options +FollowSymlinks
RewriteEngine on

RewriteRule 
^regarder-(.+)-([0-9]+)-([0-9]+).html$   /modules/mytube/singlevideo.php?cid=$2&lid=$[L]


la resultat : http://xxx.com/regarder-titre-de-la-video-15-565.html

et pour avoir des lien avec les titre de la video j'ai changé les liens des page (.html) de templates du modules
par ex dans lxoopstube_block_new_h
j'ai mis
<{$xoops_url}>/modules/<{$videoload.dirname}>/regarder-<{$videoload.title}>-<{$videoload.cid}>-<{$videoload.id}>.html


<{$videoload.title}> est titre de la video

mon probleme est que la plupart des videos continnent des espaces dans le titre par ex : titre de la video

ce qui donne l'url suivant
http://xxx.com/regarder-titre%20de%20la%20vidéo-15-565.html et les lettres accentuées sont affiché comme ils sont,

je voudrais savoir quesque je vais faire pour éviter les %20 de mes liens et comment remplacer les lettre accentuées avec ses équivalents non accentuées

Posté le : 16/04/2010 13:34
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Aspirant
Inscrit: 12/03/2009 00:52
Messages: 64
pour Nikita

nn j'ai seulment le .htacces que j'ai creé

merci

Posté le : 16/04/2010 15:13
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Semi pro
Inscrit: 10/11/2004 13:40
Messages: 1659
je te montre comment je ferais, je pense que ça te donnera une piste pour les autres fichiers

- tu crées d'abord une fonction pour enlever les espaces, les accents (y a des modèles de ce genre de fonction dans certains modules)
dans modules/mytube/include/functions.php
à la fin du fichier tu rajoutes
function mytube_UrlSeoTitle($title=''$withExt=false)
{
    
/**
     * if XOOPS ML is present, let's sanitize the title with the current language
     */
     
$myts MyTextSanitizer::getInstance();
     if (
method_exists($myts'formatForML')) {
         
$title $myts->formatForML($title);
     }

    
// Transformation de la chaine en minuscule
    // Codage de la chaine afin d'éviter les erreurs 500 en cas de caractères imprévus
    
$title   rawurlencode(strtolower($title));

    
// Transformation des ponctuations
    //                 Tab     Space      !        "        #        %        &        '        (        )        ,        /        :        ;        <        =        >        ?        @        [                ]        ^        {        |        }        ~       .
    
$pattern = array("/%09/""/%20/""/%21/""/%22/""/%23/""/%25/""/%26/""/%27/""/%28/""/%29/""/%2C/""/%2F/""/%3A/""/%3B/""/%3C/""/%3D/""/%3E/""/%3F/""/%40/""/%5B/""/%5C/""/%5D/""/%5E/""/%7B/""/%7C/""/%7D/""/%7E/""/./""/%2A/");
    
$rep_pat = array(  "-"  ,   "-"  ,   ""   ,   ""   ,   ""   "-100" ,   ""   ,   "-"  ,   ""   ,   ""   ,   ""   ,   "-"  ,   ""   ,   ""   ,   ""   ,   "-"  ,   ""   ,   ""   "-at-" ,   ""   ,   "-"   ,  ""   ,   "-"  ,   ""   ,   "-"  ,   ""   ,   "-"  ,  ""  ,  ""  );
    
$title   preg_replace($pattern$rep_pat$title);

    
// Transformation des caractères accentués
    //                    ?        è        é        ê        ë        ç        à        â        ä        î        ï        ù        ü        û        ô        ö      ñ          é          à            è          ë            î         ê
    
$pattern = array("/%B0/""/%E8/""/%E9/""/%EA/""/%EB/""/%E7/""/%E0/""/%E2/""/%E4/""/%EE/""/%EF/""/%F9/""/%FC/""/%FB/""/%F4/""/%F6/""/%F1/""/%E3%A9/""/%E3%A0/""/%E3%A8/""/%E3%AB/""/%E3%AE/""/%E3%AA/");
    
$rep_pat = array(  "-""e"  ,   "e"  ,   "e"  ,   "e"  ,   "c"  ,   "a"  ,   "a"  ,   "a"  ,   "i"  ,   "i"  ,   "u"  ,   "u"  ,   "u"  ,   "o"  ,  "o",  "n""e""a""e""e""i""e" );
    
$title   preg_replace($pattern$rep_pat$title);
    
    
// Transformation des caractères accentués
    
$pattern = array("/%C3%AB/""/%C3%AE/");
    
$rep_pat = array( "e""i" );
    
$title   preg_replace($pattern$rep_pat$title);


    if (
sizeof($title) > 0)
    {
        if (
$withExt) {
            
$title .= '.html';
        }
        return 
$title;
    }
    else
        return 
'';
}


- pour appliquer au xoopstube_block_new_h.html

dans le fichier modules/mytube/blocks/xoopstube_top.php
tu remplaces
$videoload['id'] = intval($myrow['lid']);
$videoload['cid'] = intval($myrow['cid']);
$videoload['title'] = $title;


par
$urltitle mytube_UrlSeoTitle($title);
$videoload['id'] = intval($myrow['lid']);
$videoload['cid'] = intval($myrow['cid']);
$videoload['title'] = $title;
$videoload['urltitle'] = $urltitle;


et dans ton template
<{$xoops_url}>/modules/<{$videoload.dirname}>/regarder-<{$videoload.urltitle}>-<{$videoload.cid}>-<{$videoload.id}>.html

Posté le : 16/04/2010 16:01

PS : Toujours faire une sauvegarde des fichiers avant de les modifier !
-------------------------------------------
http://www.aideordi.com
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Aspirant
Inscrit: 12/03/2009 00:52
Messages: 64
merci pour votre aide mais malheuresment ca matche pas

quand j'ai changé le fichier modules/mytube/blocks/xoopstube_top.php

j'ai eu une page blache dans le site

Posté le : 16/04/2010 16:49
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Aspirant
Inscrit: 12/03/2009 00:52
Messages: 64
voila un exemple d'un site : ***** (editer) merci de ne pas afficher de liens illégaux
merci

Posté le : 19/04/2010 13:39
Partager Twitter Partagez cette article sur GG+
Re: Probleme de %20 - url rewriting
Régulier
Inscrit: 09/04/2006 21:04
Messages: 423
Bonjour,

il faut créer une fonction qui va mettre tous les caractères en minuscules, et remplacer tous les caractères accentués en utilisant un tableau avec leur équivalent sans accent.

PS : dans certains cas, il faut utiliser la fonction utf8_decode (si tu utilises l'utf8) de php avant de faire passer la chaine à la fonction qui va nettoyer le texte...

Posté le : 19/04/2010 15:00

Développeur web.
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

77 Personne(s) en ligne (58 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 77 | Plus ...