CHMOD sur dossier

  • Auteur de la discussion Auteur de la discussion sim100
  • Date de début Date de début
WRInaute passionné
Bonjour

J'utilise ce petit script PHP pour créer un dossier sur mon serveur via un formulaire et pouvoir mettre un fichier

Code:
<? 
if (isset($mkdir_field))
  mkdir($mkdir_field,0775);
if (isset($touch_field))
	{
	$touch_field1="gg/" . $touch_field;
  	touch($touch_field1);
	}
?>
<form method=post enctype="multipart/form-data"><input type=text name=touch_field value="new file" size=8></form>
<form method=post enctype="multipart/form-data"><input type=text name=mkdir_field value="new dir" size=8></form>

pour le dossier
Code:
mkdir($mkdir_field,0775);

Je mets un CHMOD 0775 mais sur mon serveur ça reste à 0755 ce qui m'empêche de mettre un fichier dedans après.
Quelqu'un aurait-il la soluce?

Pour le fichier à créer
Code:
touch($touch_field1);
ça me le crée bien sur des dossiers avec CHMOD 0775 donc, mais j'aimerais pouvoir créer le fichier par exemple un fichier .php et mettre un contenu dedans. Y a t-il une fonction pour cela?

Merci beaucoup d'avance pour votre aide
 
WRInaute discret
Il faut faire :

avant ton mkdir :

$old_umask = umask(0);

après ton mkdir :

umask($old_umask);
 
WRInaute passionné
Merci

Merci mewp ça marche nickel :)


Si quelqu'un à une idée pour mettre un contenu dans le fichier .php que je crée?
peut être du style

touch($touch_field1, "contenu");

mais c'est pas ça, j'ai déja essayé :?

En tout cas merci d'avance
 
WRInaute passionné
non

en fait cela me mets bien le bon CHMOD mais je ne peut pas copier un fichier dedans. Alors que si je crée moi même le dossier sur le serveur il y a le même CHMOD et je peux copier le fichier!!!

Comprends pas :cry:

pour e-kiwi
"ton apache tournerais pas en nobody" --> je ne sais pas, je suis chez SIVIT

Help please
 
WRInaute discret
Vérifie que tu copie ton fichier dans le bon répertoire, affiche les variables pour en être sur.
 
WRInaute discret
Vérifie aussi le user à qui appartient le répertoire quand tu le créé à la main et quand tu le créé via le php.
Si le problème est là, tu peux faire à la main un premier répertoire genre "dump" en 777 et tu créé tes sous-repertoire en php dedans.
 
WRInaute passionné
Merci

Oui j'ai bien testé avec les bons répertoires.
Quand je le crée à la main ça marche avec CHMOD 775.

Quand je le crée via le programme, même CHMOD 775 mais ça ne marche pas

J'ai l'erreur:
Warning: touch(): SAFE MODE Restriction in effect. The script whose uid is 3041 is not allowed to access /home/local/apache/htdocs/sites/c/chiangmai-news.com/blog/yi owned by uid 2420 in /home/local/apache/htdocs/sites/c/chiangmai-news.com/blog/index.php on line 18


Sinon pour vérifier le user, comment on fait :oops:
Excusez ma nullité :oops:
 
WRInaute passionné
En effet

En effet, lorsque je réarange les dossier par "propriétaires", ceux que j'ai créé à la main se mettent ensenblent et ceux que j'ai créé via le programme se mettent ensemble. Donc pas le même propriétaire !!!

Comment y remédier?

Merci
 
Discussions similaires
Haut