J'essaie d'écrire un script PHP qui peut télécharger plusieurs fichiers.Téléchargement de l'image ne fonctionne pas
for($i=0;$i<count($_FILES['uploadimg']['name']);$i++){
$name = $_FILES['uploadimg']['name'][$i];
$type = $_FILES['uploadimg']['type'][$i];
$filepath = $_FILES['uploadimg']['tmp_name'][$i];
$size = getimagesize($filepath);
$img = file_get_contents($filepath);
//insert into database
}
Le problème est que les variables ne sont pas remplies comme elles le devraient.
Lorsque je télécharger un jpeg « image.jpg », j'ai découvert que les variables ont les valeurs suivantes: (en remplaçant le code de base de données avec echo
s et var_export
s)
$name = 'image.jpg'; // good
$type = ''; // not good
$filepath = ''; // not good
$size = false; // not good
$img = false; // not good
Je dois souligner que je réaliser $size
et $img
dépendent de $filepath
étant un chemin de fichier valide.
Quelqu'un pourrait-il donner un aperçu de ce qui ne va pas ou de ce qui me manque? J'ai joué avec le code pendant un jour maintenant, et ne peux pas trouver une solution.
Mise à jour:
print_r($_FILES)
sur 3 images: retours
Array (
[uploadimg] => Array (
[name] => Array (
[0] => test1.jpg
[1] => test2.jpg
[2] => test3.jpg
)
[type] => Array (
[0] => image/jpeg
[1] =>
[2] => image/jpeg
)
[tmp_name] => Array (
[0] => /tmp/phpkC6f2F
[1] =>
[2] => /tmp/phpgFrPl8
)
[error] => Array (
[0] => 0
[1] => 1
[2] => 0
)
[size] => Array (
[0] => 238906
[1] => 0
[2] => 237308
)
)
)
Puis-je supposer alors cela signifie que l'image est trop grande?
Merci, cela explique beaucoup, surtout en conjonction avec la suggestion de Ross de faire une décharge et ce sont les résultats que j'ai maintenant posté. –