Ir para conteúdo
Fórum Script Brasil
  • 0

Erro com imagecreatefromjpeg


Adampt

Pergunta

Olá amigos.

Tenho um website onde preciso carregar fotos. Ele sempre funcionou perfeitamente, mas desde há uns dias deixou de carregar as fotos.

A parte inicial do código para carregar as fotos é
 

$titulo_artigo = $_POST['titulo_artigo']; //$nome
$titulo_artigoen = $_POST['titulo_artigoen'];
$imagem = $_FILES['imagem']; //$foto
$desc = $_POST["desc"];
$descen = $_POST['descen'];
$adate = date('Y-m-d H:i:s');
$status = 'process';
$local = $_POST['local'];
$datae = $_POST['data'];
$dataev = date('Y-m-d', strtotime($datae));
$imagem2 = $_FILES['imagem']['name'];
$pasta_thumb = '../../thumbnails/';
$tmp = $_FILES['imagem']['tmp_name'];

//echo $titulo_artigo . " - " . $imagem;
//var_dump($_FILES['imagem']);

//echo "Título: $tmp" . "   //   ";


//Validar extensão da imagem
switch ($_FILES['imagem']['type']):
	case "image/jpeg";
	case "image/pjpeg";
		//Criar a imagem temporaria a ser manipulada
		$imagem_teporaria = imagecreatefromjpeg($_FILES['imagem']['name']);
		break;
	case "image/png";
	case "image/x-png";
		//Criar a imagem temporaria a ser manipulada
		$imagem_teporaria = imagecreatefrompng($_FILES['imagem']['name']);
		break;
	default:
		$_SESSION['msg'] = "<h3 style='color: red;'>Extensão ou tamanho da imagem inválida. A extensão deve ser JPG ou PNG
		e o tamanho máximo de 5mb</h3>";
//header("Location: ../cad_album.php");
endswitch;
echo '<pre>';
print_r($_FILES['imagem']);
die();

Coloquei o print_r() e o die() só para ver o que vem do formulário anterior e o resultado é 
 

Array
(
    [name] => 1.jpg
    [type] => image/jpeg
    [tmp_name] => C:\wamp64\tmp\phpE558.tmp
    [error] => 0
    [size] => 2484706
)

E tenho o erro (antes do array).
Warning: imagecreatefromjpeg(1.jpg): failed to open stream: No such file or directory in C:\wamp64\www\****\****\****\*****.php on line 36

 

A linha 36 é 

$imagem_teporaria = imagecreatefromjpeg($_FILES['imagem']['name']);

Alguém pode me ajudar? Já ando há alguns dias a tentar resolver mas sem sucesso.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
32 minutos atrás, Adampt disse:
case "image/pjpeg";
		//Criar a imagem temporaria a ser manipulada
		$imagem_teporaria = imagecreatefromjpeg($_FILES['imagem']['name']);
		break;
	case "image/png";
	case "image/x-png";
		//Criar a imagem temporaria a ser manipulada
		$imagem_teporaria = imagecreatefrompng($_FILES['imagem']['name']);
		break;

Olá!
Ao invés de ['name'] use ['tmp_name']

Link para o comentário
Compartilhar em outros sites

  • 0

Isto resolveu esta parte do problema, mas agora tenho outra mensagem de erro.
O código seguinte é:
 

//Importar a logo
if ($local == "1") {
	$logo = imagecreatefromgif("../../img/festivallogo.gif");
} else {
	$logo = imagecreatefromgif("../../img/logotipo.gif");
}
//Obter a largura da logo
$largura_logo = imagesx($logo);

//Obter a altura da logo
$altura_logo = imagesy($logo);
//echo "$altura_logo - $largura_logo";

//Calcular posição x sendo 10px da lateral direita
$x_logo = imagesx($imagem_teporaria) - $largura_logo - 10;

//Calcular posição y sendo 10px do rodape
$y_logo = imagesy($imagem_teporaria) - $altura_logo - 10;

imagecopymerge($imagem_teporaria, $logo, $x_logo, $y_logo, 0, 0, $largura_logo, $altura_logo, 70);
$imagemnome = time() . ".jpg";

imagejpeg($imagem_teporaria, '../../fotos/' . $imagemnome);


// THUMBNAIL //
$width = imagesx($tmp);
$height = imagesy($tmp);

die();

E obtenho o seguinte erro:
 

( ! ) Warning: imagesx() expects parameter 1 to be resource, string given in C:\wamp64\www\*****\*****\*******\******.php on line 75
Call Stack
# Time Memory Function Location
1 0.0013 369872 {main}( ) ...\proc_cad_album.php:0
2 0.2334 19362280 imagesx ( ) ...\proc_cad_album.php:75

 

( ! ) Warning: imagesy() expects parameter 1 to be resource, string given in C:\wamp64\www\******\******\******\*****.php on line 76
Call Stack
# Time Memory Function Location
1 0.0013 369872 {main}( ) ...\proc_cad_album.php:0
2 0.2341 19362280 imagesy ( ) ...\proc_cad_album.php:76

 

A linha 75 é

$width = imagesx($tmp);

e a linha 76 é

$height = imagesy($tmp);

Desde já obrigado.

Editado por Adampt
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...