Enlever accents dossier php

TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   -  
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à vous,

A la création d'un dossier, j'aimerai savoir comment enlever les accents et les espaces.

$main= "../images/$nom_categorie/"; 

mkdir($main); 


Merci à vous :)
A voir également:

11 réponses

MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Essai ceci :
<?php
function stripAccents($string){
	return strtr($string,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
}
$main= "../images/$nom_categorie/"; 

$text = $main;
$text=str_replace(' ','',$text);

$text2 = stripAccents($text);

mkdir($text2); 

?>
1
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
PS : je sais pas si sa va marcher x)
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Je viens de tester normalement ça marche :p
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Bonjour,
Pour enlever les accents :
function stripAccents($string){
	return strtr($string,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
}


Pour enlever les espaces :
$text='ton texte';
$text=str_replace(' ','',$text);
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Merci pour la réponse,

J'ai vu cet exemple sur le site, mais je n'arrive pas à l'appliquer à mon cas :(
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Ben en claire faut utiliser la fonction stripAccents.
Cela va donner quelques chose comme ça : stripAccents($variable);

Arrives-tu à utiliser l'autre script ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Merci d'avoir répondu, mais j'ai un petit bug.

Il me met Yi pour é et Yo pour è ^^
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
J'ai vu ça, je ne sais trop pourquoi recherche une autre fonction, je pense que tu as compris comment ça marchait. Sinon je pense que c'est pas super important qu'un dossier à un nom bidon x).
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Ben en fait, j' suis en train de me rendre fou mdr

J'essaye de faire que ces dossiers aient un nom bien précis, pour pouvoir ensuite, lorsque j'upload des images, pouvoir les rediriger dans le bon dossier en fonction du nom de la catégorie demandée ^^
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Ok, essai ce morceau de code (je ne l'ai pas testé)
function wd_remove_accents($str, $charset='utf-8')
{
    $str = htmlentities($str, ENT_NOQUOTES, $charset);
    
    $str = preg_replace('#&([A-za-z])(?:acute|cedil|circ|grave|orn|ring|slash|th|tilde|uml);#', '\1', $str);
    $str = preg_replace('#&([A-za-z]{2})(?:lig);#', '\1', $str); // pour les ligatures e.g. '&oelig;'
    $str = preg_replace('#&[^;]+;#', '', $str); // supprime les autres caractères
    
    return $str;
}
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Je pense que le problème ne vient pas du script, mais de moi qui doit mal le présenter.

J'ai fait cela:

main= "../images/$nom_categorie/";

// enlever les accents

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

// remplacer les caracteres autres que lettres, chiffres et point par _

$chaine = preg_replace('/([^.a-z0-1]+)/i', '_', $main);

mkdir($main);
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Essai de mettre : mkdir($chaine);

Pour voir ce que ça tourne, soyons fou !
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Rha je viens de réussir à le faire marcher,

Mais je suis en train de devenir fou lol,

Si j'enlève cette ligne:

header('Content-type: text/html; charset=UTF-8');

Mon image arrive bien sans les accents comme je veux, mais du coup, je reste de ma page n'a plus les accents.

Si je le met, j'ai les accents, mais l'image uploadé prend des caractères bizarres.

Je comprend pas, je viens de tout passer au peigne fin, tout est en utf-8, sql aussi, je capte rien.
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
met la en iso-8859 (iso-8859-1 eventuellement)
0
TRUNCKS Messages postés 1019 Date d'inscription   Statut Membre Dernière intervention   7
 
Malheureusement je ne peux pas, j'ai tout mon site en utf-8 :(

Cela me le fait vraiment uniquement lors de la création/upload d'un fichier ( dossier ou image )
0