diff --git a/bureau/class/functions.php b/bureau/class/functions.php index 4cc76865..236ccde4 100644 --- a/bureau/class/functions.php +++ b/bureau/class/functions.php @@ -376,4 +376,25 @@ function duration_list($name, $selected=0) { return $res; } +/* ----------------------------------------------------------------- */ +/** Remet un chemin en position locale + * retire ../ ou / au besoin + * @file string chemin du repertoire ou du fichier + * @return string chemin du repertoir en position local + * @access private + */ + function dir_local($file) { + //recherche la chaine commençant aprés ../ ou / + preg_match('`^(/|../)(.*)`',$file,$res); + echo $file."
"; + print_r($res); + echo "
"; + if ($res) { + return $res[2]; + } else { + return $file; + } + } + + ?> diff --git a/bureau/class/m_bro.php b/bureau/class/m_bro.php index a0a24bbc..ccd4cb33 100644 --- a/bureau/class/m_bro.php +++ b/bureau/class/m_bro.php @@ -281,6 +281,8 @@ class m_bro { return false; } $file=ssla($file); + //force la création au niveau de $dir uniquement + $file = dir_local($file); if (!file_exists($absolute."/".$file)) { touch($absolute."/".$file); }