#1 11-02-2006 21:48:57

christophe
Survivors
Date d'inscription: 30-07-2005
Messages: 1553

enlever les caractères néfaste

Me revoilou,

Dans une BDD, j'ai pleins de mots, je voudrais les passer en URL mais je sais pas trop comment procéder.

Exemple de mots
la pomme
poire
le-citron
l'élévateur

Donc je recherche à les exploiter dans une rul mais sans les espaces, les é, les ' et autres.
Il devrait tous avoir la même forme soit :
la-pomme
ou
pomme

Est ce que je peux faire cela de façon automatique sur tous les mots sans faire à chaque fois des str_replace ?

Merci bien !


Le L'annuaire gratuit est dans son coffre fort pas loin de Twikeo ??? avec son chat

Hors ligne

 

#2 12-02-2006 11:19:08

Rottman
Tagglers+
Date d'inscription: 06-10-2005
Messages: 455
Site web

Re: enlever les caractères néfaste

Salut !
Voici une fonction (de chez dotclear) :

Code:

function str2url ($str) {

               $str = strtr($str,"ÀÁÂÃÄÅàáâãäåÇçÒÓÔÕÖØòóôõöøÈÉÊËèéêëÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ",
               "AAAAAAaaaaaaCcOOOOOOooooooEEEEeeeeIIIIiiiiUUUUuuuuyNn");

               $str = strtolower(trim ($str) ) ;

               $str = preg_replace ('/[^a-z0-9\-\.,\*]/', '-', $str) ;
               $str = preg_replace ('/([\-\.,\*]{2,})/ue', "substr('\\1', 0, 1)", $str) ;
               $str = preg_replace ('/^[^a-z0-9]|[^a-z0-9]$/', '', $str ) ;

               return ($str) ;

}

Hors ligne

 

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/tgarchive/forum/include/parser.php on line 313

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/tgarchive/forum/include/parser.php on line 414

#3 12-02-2006 11:44:28

christophe
Survivors
Date d'inscription: 30-07-2005
Messages: 1553

Re: enlever les caractères néfaste

Merci

Serait abusé que de te demander comment puis je l'utiliser dans ça

$sql  = 'SELECT * FROM table';

// on exécute cette requête
$resultat = mysql_query($sql) or die();

// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($resultat))
    {
// echo ' '.$sql.' <br />';


echo '<a href="'.$page_en_cours.'">'.$data['champsl'].'</a><br />';
    }


Le L'annuaire gratuit est dans son coffre fort pas loin de Twikeo ??? avec son chat

Hors ligne

 

#4 12-02-2006 11:55:32

Rottman
Tagglers+
Date d'inscription: 06-10-2005
Messages: 455
Site web

Re: enlever les caractères néfaste

Il faut l'utiliser pour afficher le lien, par exemple :

function str2url{
...
}

$chaine = "fhezahfeé àééj";
$chaine = str2url($chaine);

echo '<a href="'.$chaine.'.html">Lien</a>';

Hors ligne

 

#5 12-02-2006 12:03:18

christophe
Survivors
Date d'inscription: 30-07-2005
Messages: 1553

Re: enlever les caractères néfaste

Exceptionnel, c'est si facile quand on sait faire.
Merci à toi, j'ai presque pas dormiu de la nuit et toi en 5 min, tu me trouves la solution
MERCI


Le L'annuaire gratuit est dans son coffre fort pas loin de Twikeo ??? avec son chat

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 R. Andersson