Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal. To com um problema e não estou conseguindo resolver, e se alguém puder me ajudar ficaria eternamente grato.
Estou fazendo upload de imagens com HTML5 (multiple). No meu PHP, eu faço um foreach para percorrer meu array, faço tratamento de cada imagem e por último movo para o diretório. O problema é que, se seleciono mais que 8 imagens, o meu array $_FILES simplesmente não armazena as imagens, e dá um erro "undefined". Alguém passou por este problema e conseguiu resolver?
Obrigado.
Olá amigo. Sim, eu fiz o var_dump e me retorna isso:
array(0) { }
Eu honestamente não estou conseguindo achar o erro. Já aumentei max_file_uploads para 60 (estava 20) e continua com este erro. Não consigo armazenar mais que 8 elementos no $_FILES.
Tens alguma idéia de como resolver isto?
como está a tua tag form ?
parece que vc esqueceu o enctype.
Form HTML: http://pastebin.com/gWBEr4xq
$files=array();
$fdata=$_FILES['file'];
if(is_array($fdata['name'])){
for($i=0;$i<count($fdata['name']);++$i){
$files[]=array(
'name' => $fdata['name'][$i],
'tmp_name' => $fdata['tmp_name'][$i],
'type' => $fdata['type'][$i],
);
}
}
else $files[]=$fdata;
foreach ($files as $fotos) {
//suas fotos
$f_name = $fotos['name'];
$f_tmp = $fotos['tmp_name'];
$f_type = $fotos['type'];
...
...
}
Talvez isso resolva seu problema ^^Nenhum dos scripts que eu pesquisei funcionou. E olha que virei o Google do avesso em!
Nenhum dos scripts que eu pesquisei funcionou. E olha que virei o Google do avesso em!
Amigo, você testou o que eu passei? Substitua sua função foreach por isso:
$files=array();
$fdata=$_FILES['file'];
if(is_array($fdata['name'])){
for($i=0;$i<count($fdata['name']);++$i){
$files[]=array(
'name' => $fdata['name'][$i],
'tmp_name' => $fdata['tmp_name'][$i],
'type' => $fdata['type'][$i],
);
}
}
else $files[]=$fdata;
foreach ($files as $fotos) {
//coloque aqui dentro o código que ficava dentro do seu foreach e substitua as variáveis
}
A sua percepção do erro pode estar distorcida.
dê um var_dump( $_FILES ); e veja qual chave de erro aparece. Pode ser por exemplo, a configuração do php, q está limitando a quantidade de arquivos.