Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Carcleo

[Resolvido] Problema com upload

Recommended Posts

Ola pessoal.

 

Estou com um problema esquisito com upload de imagens.

 

Tenho duas imagens jpg.

 

Uma é foto tirada com uma maquina sony e a outra é uma imagens jpg pega na internet.

 

ambas são jpg.

 

Porem, a foto da maquna não passa no script e a imagem passa.

 

Por que será?

 

Obs,: Não ha limitador de tamanho no codigo.

 

Segue o código:

 

<?

$Fotos = $_FILES['Fotos'];

for($i = 0; $i < sizeof($Fotos['name']); $i++){
	
    $Nome    = $Fotos['name'][$i];
    $Tamanho = $Fotos['size'][$i];
    $Tipo    = $Fotos['type'][$i];
    $Tmpname = $Fotos['tmp_name'][$i];
	
	if (!$Nome) { 
				  echo 'Você não enviou nada na posição' . ($i+1) . '<br/>';
                       if ($FotosPost[$i]!="") {$NomesFotos[] = $FotosPost[$i];}
					   else { $NomesFotos[] = ""; }

				 }
	else         {		
	                ereg ("(.*)\.([^.]+)$", $Nome, $partes);
 	                if(($partes[2] != "jpg") and ($partes[2] != "jpeg") and  ($partes[2] != "png") and ($partes[2] != "gif"))	
							{
					
							echo 'O arquivo ' . ($i+1) . ' não é um arquivo válido.<br/>';
									$NomesFotos[] = "";
									// Faz contagem de enviada com sucesso
									$Conta++;
							}
					else    {    
					
								// Pega extensão do arquivo
								preg_match("/\.(gif|png|jpg|jpeg){1}$/i", $Nome, $ext);
								
								   //  Retira a extensao do nome do arquivo
								$nome_sem_extensao = $Nome;
								$nome_sem_extensao = basename ($nome_sem_extensao,".gif");
								$nome_sem_extensao = basename ($nome_sem_extensao,".jpeg");
								$nome_sem_extensao = basename ($nome_sem_extensao,".jpg");
								$nome_sem_extensao = basename ($nome_sem_extensao,".png");
								
								  //  Retira espaços em branco do nome do arquivo
								$nome_banco = str_replace(" ","_",$nome_sem_extensao);
								
										//Gera um nome único para a imagem
								//$imagem_nome = $nome_banco . "." . md5(uniqid(time())) . "." . $ext[1];
								$imagem_nome = md5(uniqid(time())) . "." . $ext[1];

                                         //Diretórios de Gravação das imagens
                                $Caminho = $endereco_normal . $imagem_nome;
                            	$Caminho_mini = $endereco_mini . $imagem_nome;	

		
								if(move_uploaded_file($Tmpname, $Caminho))			
								{
									echo 'Foto ' . ($i+1) . ' enviada.<br/>';
									// Faz contagem de enviada com sucesso
								   $Conta++;
									///cria a miniatura e faz io move_uploaded_file
													  
						//IMAGEM A SER ABERTA Nesse momento será o $Caminho pois o upload já foi feito e o arquivo temporario apagado
									  
									  //CRIA UMA NOVA IMAGEM
									  if ($ext[1] =="jpg") { $imagem_orig = imagecreatefromjpeg($Caminho); }
								      else if ($ext[1] =="jpeg") { $imagem_orig = imagecreatefromjpeg($Caminho); }
									  else if ($ext[1] =="gif") { $imagem_orig = imagecreatefromgif($Caminho); }
									  else if ($ext[1] =="png") { $imagem_orig = imagecreatefrompng($Caminho); }
									  //LARGURA
									  $pontoX = ImagesX($imagem_orig);
									  //ALTURA
									  $pontoY = ImagesY($imagem_orig); 
									  
									  //DEFINE OS PARÂMETROS DA MINIATURA
									  $largura = 150;
									  $altura = ($pontoY * $largura) / $pontoX;
									  
									  //CRIA O THUMBNAIL
									  $imagem_fin = imagecreatetruecolor($largura, $altura); 
									  
									  //COPIA A IMAGEM ORIGINAL PARA DENTRO
									  imagecopyresampled($imagem_fin, $imagem_orig, 0, 0, 0, 0, $largura+1, $altura+1, $pontoX, $pontoY); 
									  
									  //SALVA A IMAGEM
									  if ($ext[1] =="jpg") { imagejpeg($imagem_fin, $Caminho_mini ,100);  }
								      else if ($ext[1] =="jpeg") { imagejpeg($imagem_fin, $Caminho_mini ,100);  }
									  else if ($ext[1] =="gif") { imagegif($imagem_fin, $Caminho_mini ,100);  }
									  else if ($ext[1] =="png") { imagepng($imagem_fin, $Caminho_mini); }

									  $NomesFotos[] = $imagem_nome;
									  //LIBERA A MEMÓRIA
									  imagedestroy($imagem_orig);
									  imagedestroy($imagem_fin);

								  }            
								  else // Erro no envio
								  {
									  echo 'Não foi possível enviar a foto' . ($i+1) . '<br/>';
									  $NomesFotos[] = "";
								  }
							}
				  }
                                          } //FIM DO FOR
			$NomeTodasFotos = implode(';',$NomesFotos);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já tive um problema com upload de jpg e era bem bobo na verdade.

 

Verifique se a extensão do arquivo tá em caixa alta. Aparentemente seu script só aceita jpg e não JPG

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.