upload fichier impossible, fichier non trouvé - PHP - Programmation
Marsh Posté le 08-03-2005 à 15:03:21
Balises [code] s'il-te-plaît
Aussi, faut jamais mettre de trucs genre "$up", mais toujours $_POST['up'] (ou $_GET['up'] si t'es en method GET). Parce que
1) C'est plus sécurisé
2) Le jour où tu tombes sur un serveur qui a REGISTER GLOBALS à OFF, tu va t'amuser à retaper tous tes scripts
Sinon, ça marche pas comme ça l'upload de fichier Regarde la Doc sur le tableau global $_FILES
Marsh Posté le 08-03-2005 à 15:03:35
<input type="file">
[edit]
Ah tiens ça y était déjà...je retourne me coucher...
Marsh Posté le 08-03-2005 à 15:07:01
t'a essayé par curisosité de matter la doc ???
http://fr.php.net/manual/fr/features.file-upload.php
il te manque déjà enctype="multipart/form-data" très important dans le formulaire...
et surtout la syntaxe $_FILES['fileup'][...] pour accéder à ton fichier uploadé...
et pour accéder au variable de ton form c'est $_POST['up']...
ça marche surement ce que tu as, mais paske le register_globals est à "On" ce qui est déconseillé au niveau sécurité
EDIT: trop de temps a chercher le lien vers la doc -->
Marsh Posté le 08-03-2005 à 16:09:13
merci de vos réponses mais j'ai tapé exactement ce qu'il y a dans la doc et ça ne marche toujours pas: S_FILES semble être vide. j'ai aussi essayé avec $HTTP_POST_FILES mais c pareil
Code :
|
Marsh Posté le 08-03-2005 à 16:14:51
as-tu crée le répertoire /var/www/uploads ?
ton serveur (apache par exemple) a-t-il les droits d'écrire dedans?
sinon si tu veux vérifier que $_FILES n'est pas vide, insere dans ton code un
Code :
|
par exemple
Marsh Posté le 08-03-2005 à 16:15:33
Si tu fais un
print_r($_FILES);
dans la cible de ton formulaire, il te dit quoi?
Marsh Posté le 08-03-2005 à 16:17:36
oui le répertoire est crée et quand je fais echo $_FILES['userfile']['tmp_name'] il n'affiche rien
Marsh Posté le 08-03-2005 à 16:19:33
hindk a écrit : print_r($_FILES); m'affiche : Array ( ) |
ok, ya rien dedans, donc...
Marsh Posté le 08-03-2005 à 16:19:43
fait ce que dis Skeye, et qui est d'ailleurs marqué dans la doc, print_r($_FILES);
et tu regarde le code d'erreur...
Marsh Posté le 08-03-2005 à 16:20:22
l'upload est autorisé dans ton php.ini ???
Marsh Posté le 08-03-2005 à 16:22:23
faut un répertoire tmp aussi pour qu'il puisse stocker le fichier temporaire pitetre (mais vraiment pitetre) (fouettez moi si je dis des bêtises )
Marsh Posté le 08-03-2005 à 16:40:33
ca marche , je n'avais pas la permission de telecharger dans le php.ini et je devais relancer le serveur pour que la modif soit prise en compte
Merci
Marsh Posté le 08-03-2005 à 17:08:07
désolé de vous redéranger mais maintenant j'ai l'erreur suivante:
Warning: Unable to create '/home/T/attributs.txt': Permission non accordée in /var/www/html/up.php on line 11
Warning: Unable to move '/tmp/phpibIDwF' to '/home/master/T/attributs.txt' in /var/www/html/up.php on line 11
à la ligne 11 il y a : move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $uploadfile)
j'ai vérifié les droits des répertoires ils sont ok
Marsh Posté le 08-03-2005 à 19:14:01
ben chmod 0777, je sais spa bien, mais au moins le temps de tester que ça vient pas de là... alors pas la tete siouplait
Marsh Posté le 08-03-2005 à 15:00:41
bonjour,
je voudrais uploader un fichier du client sur le serveur, le problème c'est qu'il ne trouve pas le fichier, apparement il lui manque le chemin d'accès au fichier.
voici le code :
<form name="Form1" method="post" >
Sélectionnez le fichier que vous souhaitez uploader.<br>
<br>
<font size="1" color="#FF0000"><b></b></font><br>
<br><input name="fileup" type="file" size=30><br>
Le nommé:<br>
<input type="text" name="name" size=40><br><br>
<input type="submit" name="up" value="Envoyer votre fichier!" action="up.php"><br>
</form>
<?php
if(isset($up)):
$file = stripslashes($fileup);
$file = trim($fileup);
$named = stripslashes($name);
$named = trim($name);
copy($fileup,$named);
echo("Fichier Envoyé!" );
endif;
?>