Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera..... ja andei pesquisando e até achei muita coisa....Mas se tiver alguem disposto, gostaria de saber quais são as funções envolvidas nestes dois processos. Nunca trabalhei com arquivos, principalmente com imagens.Não sabia nem como fazer aquele botão de browse para procurar o arquivo... agora ja sei.O que preciso fazer é o seguinte.... gravar a imgem escolhido num banco de dados, e exibir para o usuário sua miniaura, e ao clicar na mini abrir o pop-up dessa imagem.Mas não faço idéia de como fazer isso, nem quais funções são utilizadas.Pro favor, preciso disso para terminar um trabalho que estou fazendo e ja esta quase no prazo.HELPPPPP-ME
>
if (is_uploaded_file($foto)){
** $cpf = $_SESSION["sess_cpf"];**
$imagem = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;
$destino = "images_anuncio/$cpf";
if (!is_dir($destino)){
mkdir("images_anuncio/$cpf", 0755);
}
$imagem["name"] = date("Hisdm");
$destino .= "/" . $imagem["name"];
if (move_uploaded_file($imagem["tmp_name"], $destino)){
echo "ok";
}
}
o problema está na linha vermelha.na verdade não tem erro, está apenas usando uma nomenclatura diferente
na segunda linha (em negrito) tem uma variável cujo valor vem de uma variável de sessão.
você está utilizando-a ?
esse valor serve para nomear uma pasta, se não existir então será criada com permissão 0755 (parte em azul)
o seu script ficaria assim:
>
if (is_uploaded_file($foto)){
$cpf = $_SESSION["sess_cpf"];
$imagem = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;
$destino = "images_anuncio/$cpf";
if (!is_dir($destino)){
mkdir("images_anuncio/$cpf", 0755);
}
$destino .= "/" . $imagem["name"];
if (move_uploaded_file($imagem["tmp_name"], $destino)){
echo "ok";
}
}
apenas retirei o linha que troca o nome original da imagem enviada
nesse script você deve fazer tratamento do código
verificar se o arquivo que está sendo enviado é mesmo uma imagem
verificar o tamanho, peso, tipo (gif, jpg, png...)
para gerar miniaturas...
bm.. acho complicado pra alguém que não sabe nem o HTML
mas você pode procurar por GD
é uma biblioteca de funções do PHP:
http://jp2.php.net/manual/en/function.imagegd.php
ou procure por "PHP thumbs" ou "PHP minuaturas"
nos portais sobre PHP você encontrará muitos scripts prontos.
aprenda com o scripts e estude e tente entender o funcionamento para aprimorá-los e adaptá-los ao seu estilo ou sistema
Depois do upload, você pegando com o $_FILES, você já pode usar uma função pra abrir a imagem, imagecretefromjpeg por exemplo: imagecreatefromjpeg($_FILES['imagem']['tmp_name']), a partir disso você pode manipular a imagem, é bastante dificil explicar por aqui, dá uma olhada no manual, ou ainda você pode fazer o upload da imagem, e depois abri-la usando a mesma função, não sei se você quer salvar o thumbnail ou se quer fazer on-the-fly, mas o processo é basicamente o mesmo, geralmente eu gravo as duas imagens, e coloco no db o caminho para as duas, a partir disso fica fácil criar o script. Dá uma olhada em phpbrasil.com, tem bastante artigos de manipulação básica de imagemBom, foi isso que entendi, se não for posta novamente. ;)
pelo que andei pesquisando, o thumbnail seria a miniatura dessa imagem né ??Certo, primeiro comentando o que hinom postou: - essa linha que você tirou eu preciso para não correr o risco de sobscrever nenhuma imagem. Mas não entendi porque tirando essa linha ele funcionará (não testei) ???- a var de sessão sempre irá existir nesse caso, pois é criado quando o user se loga, e só pode cadastrar estando logado... neste caso sem problemas. Estou utilizando para criar uma pasta para cada user.- o script ainda é simples mesmo, pois estava testando.... mas com certeza vou implementar esses tratamentos.Comentando o que o prescot postou:- para que serve abrir a imagem, o que posso fazer depois de feito isso ???- quero salvar o thumbnail, só náo toquei nesse assunto pois vi que é mais complicado, mas já que falou pesquisei no phpbrasil mas ainda não achei algo de fácil entendimento que posso utilizar.
você só pode criar um thumbnail depois de abrir a imagem com os imagecreate da vida, um exemplo:
PHP [/tr][tr]$img = imagecreatefromjpeg("imagem.jpg"); // Abriu a imagem[/tr]
Daí você cria uma outra imagem com o tamanho que você quer do thumbnail usando imagecreatetruecolor, e usa as imagecopy pra copiar da $img pra nova img redimensionando, depois pra salvar é só usar as funções image (imagejpeg, imagepng, etc) e usar o segundo argumento indicando onde serão salvas.
No phpbrasil tem até uns artigos que no próprio titulo diz "miniatura de imagens", procura por "miniatura" que vai achar bastante.
Já que não tive respostas.... acabei implementando o code abaixo com muito custo, porém não está copiando o arquivo para a pasta, na verdade copia porém não como arquivo de imagem, mas como desconhecido sem extensão.
segue abaixo:
if (is_uploaded_file($foto)){ $cpf = $_SESSION["sess_cpf"]; $imagem = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE; $destino = "images_anuncio/$cpf"; if (!is_dir($destino)){ mkdir("images_anuncio/$cpf", 0755); } $imagem["name"] = date("Hisdm"); $destino .= "/" . $imagem["name"]; if (move_uploaded_file($imagem["tmp_name"], $destino)){ echo "ok"; } }
Espero que alguem pode me ajudar.....