Faire appel à une fonction dans une autre fonction

Résolu/Fermé
barale61 Messages postés 1208 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 novembre 2024 - 16 mai 2016 à 17:40
barale61 Messages postés 1208 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 novembre 2024 - 17 mai 2016 à 17:37
Bonjour,

Je souhaite faire appel à une fonction dans une autre fonction est-ce qu'il y a quelque chose de différent parce que je n'y arrive pas.
Je vous remercie de votre aide.

2 réponses

NHenry Messages postés 15176 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 28 décembre 2024 350
16 mai 2016 à 17:52
Quel code as-tu essayé ?
0
barale61 Messages postés 1208 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 novembre 2024 110
16 mai 2016 à 19:00
à partir de cette fonction:


function creer_dossier($denomination){

$denomination = htmlspecialchars($_POST['denomination']);
$lettre = suppAccent($denomination);
$denomination=mb_strtoupper($denomination);

if(!is_dir("../Dossiers_Clients/".$denomination)) {
mkdir("../Dossiers_Clients/".$denomination, 0777, true);
}
}
if(!empty($_POST['denomination'])){
creer_dossier($_POST['denomination']);
}
header('Location:../index.php');


Je fais appel à celle-ci:


function suppAccent($lettre){
$espace = array(" ");
$lettre = str_replace($espace, "_", $lettre);
$a = array("ä", "â", "à","á","å","æ","ã","Ä","À","Á","Â","Ã","Ä","Å","Æ");
$lettre = str_replace($a, "a", $lettre);
$b = array("ß");
$lettre = str_replace($b, "b", $lettre);
$c = array("ç","Ç");
$lettre = str_replace($c, "c", $lettre);
$d = array("Ð","þ");
$lettre = str_replace($d, "d", $lettre);
$e = array("é", "è", "ê", "ë","ð","È","É","Ê","Ë");
$lettre = str_replace($e, "e", $lettre);
$i = array("î","ï","ì","í","Ì","Í","Î","Ï");
$lettre = str_replace($i, "i", $lettre);
$n = array("ñ","Ñ");
$lettre = str_replace($n, "n", $lettre);
$o = array("ö","ô","ò","ó","õ","ø","œ","Ò","Ó","Ô","Õ","Ö","Œ","Ø");
$lettre = str_replace($o, "o", $lettre);
$s = array("š","Š");
$lettre = str_replace($s, "s", $lettre);
$u = array("ù","ú","ü","û","Ù","Ú","Û","Ü");
$lettre = str_replace($u, "u", $lettre);
$y = array("ý","ÿ","Ý","Ÿ");
$lettre = str_replace($y, "y", $lettre);
$z = array("ž","Ž");
$lettre = str_replace($z, "z", $lettre);
return $lettre;
}
0
NHenry Messages postés 15176 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 28 décembre 2024 350
16 mai 2016 à 19:02
Et quelle erreur as-tu ?
0
barale61 Messages postés 1208 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 novembre 2024 110 > NHenry Messages postés 15176 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 28 décembre 2024
16 mai 2016 à 21:24
En fait la seule erreur c'est que la suppression des accents ne fonctionne pas alors que la fonction toute seule elle-même fonctionne bien.
0
Utilisateur anonyme
16 mai 2016 à 21:52
Bonjour
$lettre = suppAccent($denomination);

mkdir("../Dossiers_Clients/".$denomination, 0777, true);

Tu appelles $lettre le nom sans accents, mais ensuite tu continues d'utiliser $denomination, normal qu'il y ait toujours les accents.
0
barale61 Messages postés 1208 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 4 novembre 2024 110
17 mai 2016 à 17:37
Merci beaucoup, ça marche bien mieux comme ça.
0