Comment modifier l'attibut de fichier en php?
Résolu
chtimi59250
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
kilian Messages postés 8732 Date d'inscription Statut Modérateur Dernière intervention -
kilian Messages postés 8732 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je suis novices en programmation html et php et j'ai créer un forum pour pouvoir partager des fichier avec ma classe. De ce fait j'ai ouvert un serveur et créer une page html et php qui permet a mes camarades d'héberger leur fichier dans le dossier qu'il désir. Une fois héberger il est noté l'adresse où se trouve leur fichier. Jusque la tout va bien. Mon problème est l'attribut (permission) donner à ce fichier qui est 600 donc il ne peuvent pas y accéder.
Je voudrait savoir s'il existe une commande en php (que j'incluerai dans ma page en php qui traite mon fichier en le mettant dans le dossier), pour que l'attribut du fichier soit 777.
J'ai déja effectué de multiple recherche mais rien ne correspondé a mes attentes.
Code php:
<?php
$repertoireDestination = "./dossier/";
$nomDestination = $_FILES["monfichier"]["name"];
// Pour raison de sécurité nous ajouterons aux fichiers
// portant une extension .php .php3, l'extension .txt
if (eregi(".php", $nomDestination)) {
$nomDestination .= ".txt";
}
if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
if (rename($_FILES["monfichier"]["tmp_name"],
$repertoireDestination.$nomDestination)) {
echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
" a été déplacé vers https://www.salesforce.com/products/platform/overview/".$repertoireDestination.$nomDestination;
} else {
echo "Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
} else {
echo "Le fichier n'a pas été uploadé.";
}
?>
Configuration: Windows XP
Firefox 2.0.0.11
Merci d'avance
Je suis novices en programmation html et php et j'ai créer un forum pour pouvoir partager des fichier avec ma classe. De ce fait j'ai ouvert un serveur et créer une page html et php qui permet a mes camarades d'héberger leur fichier dans le dossier qu'il désir. Une fois héberger il est noté l'adresse où se trouve leur fichier. Jusque la tout va bien. Mon problème est l'attribut (permission) donner à ce fichier qui est 600 donc il ne peuvent pas y accéder.
Je voudrait savoir s'il existe une commande en php (que j'incluerai dans ma page en php qui traite mon fichier en le mettant dans le dossier), pour que l'attribut du fichier soit 777.
J'ai déja effectué de multiple recherche mais rien ne correspondé a mes attentes.
Code php:
<?php
$repertoireDestination = "./dossier/";
$nomDestination = $_FILES["monfichier"]["name"];
// Pour raison de sécurité nous ajouterons aux fichiers
// portant une extension .php .php3, l'extension .txt
if (eregi(".php", $nomDestination)) {
$nomDestination .= ".txt";
}
if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
if (rename($_FILES["monfichier"]["tmp_name"],
$repertoireDestination.$nomDestination)) {
echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
" a été déplacé vers https://www.salesforce.com/products/platform/overview/".$repertoireDestination.$nomDestination;
} else {
echo "Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
} else {
echo "Le fichier n'a pas été uploadé.";
}
?>
Configuration: Windows XP
Firefox 2.0.0.11
Merci d'avance
A voir également:
- Comment modifier l'attibut de fichier en php?
- Fichier bin - Guide
- Modifier dns - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier epub - Guide
- Fichier rar - Guide
9 réponses
Merci je crois que c'est cela
Mais comment je fais avec le nom du fichier car c'est une variable: $nomDestination
Mais comment je fais avec le nom du fichier car c'est une variable: $nomDestination
T'inquiète, aucune importance tu mets ta variable en tant que nom de fichier. Une variable n'est qu'une valeur.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ca dépend s'il y a un "/" à la fin de $repertoireDestination. S'il n'y en a pas, il faut le rajouter.
Donc, soit:
chmod ($repertoireDestination.$nomDestination, 0777);
soit:
chmod ($repertoireDestination . '/'. $nomDestination, 0777);
Donc, soit:
chmod ($repertoireDestination.$nomDestination, 0777);
soit:
chmod ($repertoireDestination . '/'. $nomDestination, 0777);
Ma variable $repertoireDestination contient bien un / donc j'ai mis comme ligne de code chmod ($repertoireDestination.$nomDestination, 0777);
Ce qui le donne pour ma page en php:
<?php
$repertoireDestination = "./images/";
$nomDestination = $_FILES["monfichier"]["name"];
// Pour raison de sécurité nous ajouterons aux fichiers
// portant une extension .php .php3, l'extension .txt
if (eregi(".php", $nomDestination)) {
$nomDestination .= ".txt";
}
if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
if (rename($_FILES["monfichier"]["tmp_name"],
$repertoireDestination.$nomDestination)) {
echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
" a été déplacé vers http://site/images/".$nomDestination;
chmod (.$repertoireDestination.$nomDestination, 0777);
} else {
echo "Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
} else {
echo "Le fichier n'a pas été uploadé.";
}
?>
J'obtient comme message d'erreur:
Parse error: syntax error, unexpected '.', expecting ')' in /www/sites/1/ifrance.com/t/s/tslicp/site/up.php on line 19
Je ne sais pas si j'ai bien placé le chmod ($repertoireDestination.$nomDestination, 0777);
Ce qui le donne pour ma page en php:
<?php
$repertoireDestination = "./images/";
$nomDestination = $_FILES["monfichier"]["name"];
// Pour raison de sécurité nous ajouterons aux fichiers
// portant une extension .php .php3, l'extension .txt
if (eregi(".php", $nomDestination)) {
$nomDestination .= ".txt";
}
if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
if (rename($_FILES["monfichier"]["tmp_name"],
$repertoireDestination.$nomDestination)) {
echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
" a été déplacé vers http://site/images/".$nomDestination;
chmod (.$repertoireDestination.$nomDestination, 0777);
} else {
echo "Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
} else {
echo "Le fichier n'a pas été uploadé.";
}
?>
J'obtient comme message d'erreur:
Parse error: syntax error, unexpected '.', expecting ')' in /www/sites/1/ifrance.com/t/s/tslicp/site/up.php on line 19
Je ne sais pas si j'ai bien placé le chmod ($repertoireDestination.$nomDestination, 0777);
Sur cette ligne:
Pourquoi tu mets un point au début? Le point est un opérateur binaire, ça signifie qu'il lui faut deux opérandes:
Ce premier point il faut l'enlever ;-)
chmod (.$repertoireDestination.$nomDestination, 0777)
Pourquoi tu mets un point au début? Le point est un opérateur binaire, ça signifie qu'il lui faut deux opérandes:
operande1 . operande2
Ce premier point il faut l'enlever ;-)
CA MARCHE!!!!
Merci Kilian je te kiff tu est génial lol.
Merci d'avoir pris ton temps avec un noob comme moi!
Merci surtout de la part de tte ma classe. ^^
Ahhh je vais enfin pouvoir finir mon service d'upload de fichier pour ma classe.
Je met le code finit comme ça si des gens on envi de faire un petit upload:
<?php
$repertoireDestination = "./dossier/";
$nomDestination = $_FILES["monfichier"]["name"];
// Pour raison de sécurité nous ajouterons aux fichiers
// portant une extension .php .php3, l'extension .txt
if (eregi(".php", $nomDestination)) {
$nomDestination .= ".txt";
}
if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
if (rename($_FILES["monfichier"]["tmp_name"],
$repertoireDestination.$nomDestination)) {
echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
" a été déplacé vers http://site/dossier/".$nomDestination;
chmod ($repertoireDestination.$nomDestination, 0777);
} else {
echo "Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
} else {
echo "Le fichier n'a pas été uploadé.";
}
?>
Merci Kilian je te kiff tu est génial lol.
Merci d'avoir pris ton temps avec un noob comme moi!
Merci surtout de la part de tte ma classe. ^^
Ahhh je vais enfin pouvoir finir mon service d'upload de fichier pour ma classe.
Je met le code finit comme ça si des gens on envi de faire un petit upload:
<?php
$repertoireDestination = "./dossier/";
$nomDestination = $_FILES["monfichier"]["name"];
// Pour raison de sécurité nous ajouterons aux fichiers
// portant une extension .php .php3, l'extension .txt
if (eregi(".php", $nomDestination)) {
$nomDestination .= ".txt";
}
if (is_uploaded_file($_FILES["monfichier"]["tmp_name"])) {
if (rename($_FILES["monfichier"]["tmp_name"],
$repertoireDestination.$nomDestination)) {
echo "Le fichier temporaire ".$_FILES["monfichier"]["tmp_name"].
" a été déplacé vers http://site/dossier/".$nomDestination;
chmod ($repertoireDestination.$nomDestination, 0777);
} else {
echo "Le déplacement du fichier temporaire a échoué".
" vérifiez l'existence du répertoire ".$repertoireDestination;
}
} else {
echo "Le fichier n'a pas été uploadé.";
}
?>