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

Upload de imagem bugado alguém me ajuda !


edsonl2666

Pergunta

Bom galera eu fiz um sistema tava indo tudo ok criando a pasta certinha tudo ok ate quando eu fiz a parte do upload da imagem a imagem fui pra pasta ok mais toda preta num entendi nada porque num deu erro nem um só foi toda preta a imagem acho que troco a imagem que eu mandei pra uma toda preta se alguém souber me ajuda ai por favor que ta dando mo dor de cabeça num acho o que pode ser .

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

/*****************************

IMAGE UPLOAD

*****************************/

function uploadImage($tmp, $nome, $width, $pasta){

$ext = substr($nome,-3);

switch($ext){

case 'jpg': $img = imagecreatefromjpeg($tmp); break;

case 'png': $img = imagecreatefrompng($tmp); break;

case 'gif': $img = imagecreatefromgif($tmp); break;

}

$x = imagesx($img);

$y = imagesy($img);

$height = ($width*$y) / $x;

$nova = imagecreatetruecolor($width, $height);

imagealphablending($nome,false);

imagesavealpha($nome,true);

imagecopyresampled($nome, $img, 0, 0, 0, 0, $width, $height, $x, $y);

switch($ext){

case'jpg': imagejpeg($nova, $pasta.$nome, 100); break;

case'png': imagepng($nova, $pasta.$nome); break;

case'gif': imagegif($nova, $pasta.$nome); break;

}

imagedestroy($img);

imagedestroy($nova);

}

--------------------------------------------------------------

PHP

------------------------------------------------------------------

$pasta = '../uploads/';

$ano = date('Y');

$mes = date('m');

if(!file_exists($pasta.$ano)){

mkdir($pasta.$ano,0755);

}

if(!file_exists($pasta.$ano.'/'.$mes)){

mkdir($pasta.$ano.'/'.$mes,0755);

}

$img = $_FILES['thumb'];

$ext = substr($img['name'],-3);

$f['thumb'] = $ano.'/'.$mes.'/'.$f['url'].$ext;

uploadImage($img['tmp_name'], $f['url'].'.'.$ext, '800', $pasta.$ano.'/'.$mes.'/');

//create('up_posts',$f);

}

echo '<pre class="debug">';

print_r($f);

echo '</pre>';

}

Link para o comentário
Compartilhar em outros sites

  • 0

e erro que esta dando é esse

( ! ) Warning: imagealphablending() expects parameter 1 to be resource, string given in C:\wamp\www\prophp\projeto\dts\outSis.php on line 215

Call Stack

( ! ) Warning: imagesavealpha() expects parameter 1 to be resource, string given in C:\wamp\www\prophp\projeto\dts\outSis.php on line 216

Call Stack

( ! ) Warning: imagecopyresampled() expects parameter 1 to be resource, string given in C:\wamp\www\prophp\projeto\dts\outSis.php on line 217

Call Stack

Link para o comentário
Compartilhar em outros sites

  • 0

hum, eu to aprendendo PHP, por isso não sei tanto assim,

não consegui entender muito bem a tua função, mas uma vez fiz um sistema de usuario que tinha a opção de imagens, então tive que fazer o upload

vou colocar aqui, pra você pegar como base, pode te ajudar,

fiz a pagina editar_usuario.php, que mandava para outra pagina para validar a imagem, segue o código de validação que usei...

<?php
    include "conexao.php";
    
    @$id = trim($_POST['id']);
    @$usuario = ltrim($_POST['usuario']);
    @$imagem = trim($_POST['imagem']);
    
    $pasta = 'imagens_users/';
    $tamanho = 1048576;
    $arqSize = $_FILES['imagem']['size'];

    $extensoes = array('jpg', 'png');
    $erro = 0;
    
    $extensao = strtolower(end(explode('.', $_FILES['imagem']['name'])));
    if (array_search($extensao, $extensoes) === false) {
        $msg_erro_img = "Por favor, envie arquivos com as seguintes extensões: jpg, png";
        $erro ++;
    }
    if ($arqSize > $tamanho) {
        $msg_erro_img = "O arquivo enviado e muito grande, envie arquivos de ate 2Mb";
        $erro ++;
    }
    
    if($erro != 0){
        include 'editar_usuario.php';
    }
    else{
        $nome_final_img = $id.'_'.$usuario.'.jpg';        
        move_uploaded_file($_FILES['imagem']['tmp_name'], $pasta . $nome_final_img);    
        $update = mysql_query("UPDATE usuarios SET imagem='$nome_final_img' WHERE id='$id'") or die(mysql_error());
        header('Location: editar_usuario.php');
    }    
?>

esse meu codigo ta funcionando, caso estivesse tudo ok os dados que usuario preencheu, ele movia a imagem para a pasta que criei, e o nome da imagem ficava com o numero do id mais o nome do usuario, por exemplo 1_usuario

Link para o comentário
Compartilhar em outros sites

  • 0

Bom galera eu resolvi aqui o erro tava aaqui nessa linha

imagecopyresampled($nova, $img, 0, 0, 0, 0, $width, $height, $x, $y);

em vez de coloca nova tava colocando nome então o sistema num tava criando uma imagem nova tava só criando o nome bom galera eu agradeço a todos ai acima que si pois a me ajuda muitu obrigado de coração e que todos fique com Deus

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...