Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Daí gurizada??? beleza???
Estou com um probleminha no upload de imagens que estou fazendo... ele está completamente funcional, mas quero previnir erros se forem enviados arquivos não-imagens.
Meu código está assim:
foreach ($_FILES['txt_fotos']['tmp_name'] as $imagens){ if ($imagens=="") $vazia++; else{ $i++; imagem($imagens,$data."_".$i.".jpg",$id); } }
Tentei fazer assim:
$fotos=$_FILES['txt_fotos'];foreach ($fotos as $imagens){ if (($imagens['tmp_name']=="") || (!$imagens['type']=="image/jpeg")) $vazia++; else{ $i++; imagem($imagens,$data."_".$i.".jpg",$id); } }
Mas não deu certo, acho que porque o foreach pega cada resultado do array.
Será que a maneira certa seria usar o while???
Tipo while ($fotos=$_FILES['txt_fotos'])???
Daí tchê, tudo tri?Tua citação é muito interesante... não sabia dessa...acabei de aprender... Mas essa mudança não alterou o funcionamento, coloquei no foreach e ele simplesmente "pula", nem faz uma interação...Tem alguma maneira de pegar os valores do array para comparação sem ser com o foreach?
Acho que o erro está nesta verificação:(!$imagens['type']=="image/jpeg")Quando você faz !$var, ele pega o valor booleano da variável e inverte o resultado. Antes de comparar com a string "image/jpeg". Acho que não é isso que você quer... :) Tenta assim: ($imagens['type'] != "image/jpeg")ou assim: !($imagens['type'] == "image/jpeg")[]'s!
Acho que o erro está nesta verificação:
(!$imagens['type']=="image/jpeg")
Quando você faz !$var, ele pega o valor booleano da variável e inverte o resultado. Antes de comparar com a string "image/jpeg". Acho que não é isso que você quer... :)
Tenta assim: ($imagens['type'] != "image/jpeg")
ou assim: !($imagens['type'] == "image/jpeg")
[]'s!