|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Bonjour, je pense que je n'ai pas ete tres clair dans le titre, mais je n'ai pas trouve mieux!!
je m'explique: pour mes reecriture d'url en utilisant le titre, je vais devoir "netoyer" le titre en retirant les caracteres speciaux et accents, puis remplacer les espaces, virgules, point virgule, ... par un tiret (-) disant que je veux faire ce traitement pour cette chaine "bonjour, j'aimerais faire cela" ca deviendra "bonjour--j-aimerais-faire-cela" et donc le probleme que j'ai c'est les 2 tirets! y a t il un moyen de remplacer la virgule ainsi que les espaces avant et apres par un tiret?? Merci bien |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Taoufiq BenDéveloppeur Web Inscription : mai 2009 Messages : 456 ![]() |
tu pourra utilisé la fonction urlencode pour qu'il te décode ta chaîne.
|
|
|
00
|
|
|
#3 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
hop
Code :
$chaine = preg_replace("#[ ,;']+#","-", $chaine); |
|
|
00
|
|
|
#4 | ||||||
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Merci pour vos reponses.
Citation:
Citation:
j'aurais 2 autres petites questions svp: ca marche pas lorsque je veux egallement remplacer " par - Code :
j'ai trouve un code pour supprimer les caracteres speciaux et accents qu'en penses tu? qu'est ce que c'est cette ligne, j'ai rien compris! Code :
|
||||||
|
|
00
|
|
|
#5 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Ca donnerait ça :
Code :
$chaine = preg_replace("#[ ,.;:'&\"]+#", "-", $chaine); |
|
|
00
|
|
|
#6 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
pourquoi ne pas faire juste ca :
Code :
$chaine = preg_replace('/\W+/u', '-', $chaine);
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#7 | ||
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Citation:
l'ordre des elements a remplacer (,: Citation:
je viens de me rendre compte que j'ai pas mis le lien de la page où j'ai trouve le code pour supprimer les accents et caracteres speciaux http://www.3gk-software.com/Traiteme...-speciaux.html |
||
|
|
00
|
|
|
#8 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Comme ça alors :
Code :
$chaine = preg_replace("#[ ,.;:'&\-\"]+#", "-", $chaine); |
|
|
00
|
|
|
#9 | |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
Citation:
ca donne : bonjour-j-aimerais-faire-cela c'est ce que tu veux non ?
__________________
http://blog.stealth35.com/ |
|
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
merci ca marche
je n'ai trouve une explication nulle part, pourrais tu stp me dire la signification de cette ligne? Code :
preg_replace( array('/ß/','/&(..)lig;/', '/&([aouAOU])uml;/','/&(.)[^;]*;/'), array('ss',"$1","$1".'e',"$1"), $text); |
|
|
00
|
|
|
#11 | ||
|
Membre Expert
![]() Eric GaridacciInscription : septembre 2005 Messages : 1 057 ![]() |
Salut,
Code :
__________________
N'oubliez pas le vote des messages utiles ainsi que le Tag [Résolu].Mon Site Web : Corse - Actualité, Météo, Vidéos, Logiciels, ... |
||
|
|
00
|
|
|
#12 | |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Citation:
'/\W+/u' correspond a quoi? |
|
|
|
00
|
|
|
#13 | ||
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
@Eric2a: voici la fonction que j'utilise maintenant pour le nettoyage et ca marche super bien. elle sert aussi a virer les accents:
Code :
|
||
|
|
00
|
|
|
#14 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
\W c'est tout les caractères non alphanumériques
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#15 | |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Citation:
|
|
|
|
00
|
|
|
#16 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Bonjour,
Je reviens vers vous pour une dernière chose: j'utilise la fonction citée au post #13 pour enlever les caracteres speciaux et les accents. ça marche super bien mais par contre j'aimerais que les caractères spéciaux ne soient pas remplacés lorsqu'ils sont a la fin d'une phrase. par exemple: bonjour je m'appelle "reda" ==> bonjour-je-m-appelle-reda- comment faire pur qu'il ne mette pas de tiret au début et a la fin d'une chaine de caractère?? Merci beaucoup |
|
|
00
|
|
|
#17 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
tu fais un trim après
EDIT : t'as Intl ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#18 | |||
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
Ah genial, ça marche, j'avais complètement oublié trim(), je m'en sers d'habitudes uniquement pour enlever les espaces...
Et merci beaucoup pour la réponse très rapide Citation:
puisque j'y suis, lorsque j'ai un titre qui contient ", et que je l'affiche dans un champ de text, tout ce qui suit " ne s'affiche pas, le navigateur croit que c'est la fermeture de l'attribut value. Ex. Code :
|
|||
|
|
00
|
|
|
#19 | ||
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
c'est un htmlspecialchars qu'il faut faire
EDIt : si t'avais Intl t'aurai pu faire Code :
__________________
http://blog.stealth35.com/ |
||
|
|
00
|
|
|
#20 |
|
Membre du Club
![]() Inscription : novembre 2007 Messages : 757 ![]() |
UN GRAND MERCI
Me conseille tu de mettre htmlspecialchars dans tous mes formulaire?? j'imagine que pour le nom, prénom, ville, ... ce n'est pas très utile!! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com