$_FILES Vide Lors du Téléchargement
Lorsque vous essayez d'accéder à la $_FILES
tableau, PHP renvoie l'erreur
"Undefined index: image".
Dans mon php.ini
fichier, File Uploads
sont activés, et n'importe quel utilisateur peut écrire dans le /tmp
répertoire. Dans le formulaire HTML, enctype est fixé à "multipart/form-data"
. Curieusement, le nom de base pour le téléchargement de fichier s'imprime alors je crois que PHP a réellement vu le dossier, mais a un certain problème de la télécharger.
Quelqu'un peut-il offre des suggestions sur les solutions possibles à ce problème? Par ailleurs, je suis en PHP5.
Des extraits de Fichier PHP
echo "Picture=" . $_POST['picture'] . "<br/>";
$uploadedPic = $_FILES['picture']['tmp_name'];
Formulaire HTML
<form action="PHPFile.php" method="post" enctype="multipart/form-data">
<p> Picture </p>
<input type = "file" id="picture" name="picture"/>
</form>
avez-vous essayé var_dumping votre $_FILES?
Êtes-vous, par hasard, à l'aide de Javascript pour sérialiser votre forme?
est post_max_size et upload_max_filesize dans votre php.ini réglé à une valeur suffisamment élevée?
J'ai utilisé print_r pour imprimer le contenu du tableau $_FILES, et imprimer un tableau vide. Pour certains maladroits raison, il fonctionne maintenant. Tout ce que j'avais à faire était de redémarrer le serveur. Je n'ai pas changer les paramètres que ce soit, et le fichier est à moins de 40 KO. Merci à tous pour votre aide!
Récemment, j'ai juste eu ce problème et c'est parce que j'ai oublié d'ajouter enctype="multipart/form-data" pour le formulaire de déclaration, je vois que vous n'avez pas, mais au cas où quelqu'un d'autre arrive.
Êtes-vous, par hasard, à l'aide de Javascript pour sérialiser votre forme?
est post_max_size et upload_max_filesize dans votre php.ini réglé à une valeur suffisamment élevée?
J'ai utilisé print_r pour imprimer le contenu du tableau $_FILES, et imprimer un tableau vide. Pour certains maladroits raison, il fonctionne maintenant. Tout ce que j'avais à faire était de redémarrer le serveur. Je n'ai pas changer les paramètres que ce soit, et le fichier est à moins de 40 KO. Merci à tous pour votre aide!
Récemment, j'ai juste eu ce problème et c'est parce que j'ai oublié d'ajouter enctype="multipart/form-data" pour le formulaire de déclaration, je vois que vous n'avez pas, mais au cas où quelqu'un d'autre arrive.
OriginalL'auteur Paradius | 2009-08-28
Vous devez vous connecter pour publier un commentaire.
Sur la ligne obtenez-vous de cette mise en garde? Si c'est la même avec
$_POST['picture']
, sa logique, vous ne trouverez pas téléchargé fichier de données dans$_POST
, c'est dans$_FILES
OriginalL'auteur Anti Veeranna
La variable POST
n'existe pas, alors oui, il va donner une erreur undefined.
OriginalL'auteur Steerpike
lol, une affiche précédente, a déclaré que le redémarrage de leur serveur fixe. j'ai fait de même, et pour certains, la raison pour laquelle il travaille. je n'ai fait aucune modification de code, et IIS réinitialise ne fonctionne pas non plus. elle nécessitait un redémarrage de l'ordinateur lui-même. c'est à environ 2 heures de complètement perdu.
OriginalL'auteur nullsteph
Quel est le niveau ou les rapports d'erreur que vous utilisez?
error_reporting(E_ALL)
va tourner sur un rapport complet et pourrait vous donner un indice.Comme décrit précédemment, faire une impression de
$_FILES
avecvar_dump()
ouprint_r()
pour voir les informations de votre fichier.OriginalL'auteur
Je ne peux pas commenter, je vais donc dire ici.
L'HOMME, cet écho permettra d'imprimer le nom du fichier! Il fonctionne! Il dit qu'il travaille.
Une bonne astuce: essayez de
var_dump
la$_FILES
et d'ajouter ici, c'est le contenu. Vous pouvez avoir une erreur car le fichier est trop gros, ou d'autres informations utiles.OriginalL'auteur igorsantos07
essayez d'ajouter
avant
OriginalL'auteur dir01