par
stephweb » 15 avr. 2016, 12:20
Bonjour,
je voudrai un peu d'aide Svp.
Je suis en train de mettre en place un script pour que les utilisateurs puissent modifier via un admin les droits d'accès de leurs fichiers et dossiers de leur FTP.
Pour les dossiers ça fonctionne, mais pas avec les fichiers. Voici mon code :
Code : Tout sélectionner
<?php
/**
* Modifier les droits d'un fichier, ou d'un dossier
* @param int $droits - Nouvelles permissions
* @param $nameFileOrFolder - Nom du fichier ou du dossier sur lequel modifier les droits
*/
public function savePermissionsFiles($droits, $nameFileOrFolder) {
$conn_id = ftp_connect($this->user->host, $this->user->port);
$login_result = ftp_login($conn_id, $this->user->user, $this->user->pass);
if ($login_result) {
$np = '0'.$droits;
$filesPath = $this->user->dir_current.'/'.$nameFileOrFolder;
$resultSave = (ftp_chmod($conn_id, eval("return({$np});"), $filesPath) !== false);
var_dump($filesPath);
ftp_close($conn_id);
return $resultSave;
}
}
Mon vardump me retourne ceci par exemple :
Code : Tout sélectionner
<?php
// pour un dossier (fonctionne) :
string(10) "/www/stats"
// pour un fichier (ne fonctionne pas) :
string(13) "/www/toto.ini"
(donc je pense que les path sont bons).
Savez-vous pourquoi ce code ne fonctionne pas avec les fichiers ?
Merci beaucoup.
Bonjour,
je voudrai un peu d'aide Svp.
Je suis en train de mettre en place un script pour que les utilisateurs puissent modifier via un admin les droits d'accès de leurs fichiers et dossiers de leur FTP.
Pour les dossiers ça fonctionne, mais pas avec les fichiers. Voici mon code :
[code]
<?php
/**
* Modifier les droits d'un fichier, ou d'un dossier
* @param int $droits - Nouvelles permissions
* @param $nameFileOrFolder - Nom du fichier ou du dossier sur lequel modifier les droits
*/
public function savePermissionsFiles($droits, $nameFileOrFolder) {
$conn_id = ftp_connect($this->user->host, $this->user->port);
$login_result = ftp_login($conn_id, $this->user->user, $this->user->pass);
if ($login_result) {
$np = '0'.$droits;
$filesPath = $this->user->dir_current.'/'.$nameFileOrFolder;
$resultSave = (ftp_chmod($conn_id, eval("return({$np});"), $filesPath) !== false);
var_dump($filesPath);
ftp_close($conn_id);
return $resultSave;
}
}
[/code]
Mon vardump me retourne ceci par exemple :
[code]
<?php
// pour un dossier (fonctionne) :
string(10) "/www/stats"
// pour un fichier (ne fonctionne pas) :
string(13) "/www/toto.ini"
[/code]
(donc je pense que les path sont bons).
Savez-vous pourquoi ce code ne fonctionne pas avec les fichiers ?
Merci beaucoup.