Ir para conteúdo

POWERED BY:

Arquivado

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

maik

Recuperar imagem do MySQL

Recommended Posts

olá pessoal, Alguem pode me ajuda, to com um problema e naum sei como resolver.Tenho um banco MySQL com as fotos dos produtos adicionadas dentro do proprio banco de dados.Agora preciso recuperar essas imagem e deixa como arquivos dentro de uma pasta...alguem pode me ajudar a resolver isso?Obrigado desde já.Atenciosamente,Maik Tomécontato@intergiro.net

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho (não tenho certeza, nem testei) que o comando IMAGEGD2 resolveria.abaixo fiz um código que captura o arquivo via GET diminui ele e depois salva com a extensão .gd2 (pode trocar pela q você quiser).. olha da uma façada ai, faz um verificador de extensão para você poder salvar com a mesma entendeu.??Creio q já é um primeiro passo, dai da pra começar a elaborar, se você nao tiver exito. Me manda um mail. té +$img = $_GET['img'];if(file_exists($img)) { $dim = getimagesize($img); $cr = ($dim[2] < 4) ? ($dim[2] < 3) ? ($dim[2] < 2) ? NULL : imagecreatefromjpeg($img) : imagecreatefrompng($img) : Null; if($cr !== NULL) { imagegd2($cr,substr($img,0,strrpos($img,'.')).'.gd2'); } }

Compartilhar este post


Link para o post
Compartilhar em outros sites

alexvaleu pela ajuda, mais naum manjo nada de PHP, eu trab. com ASPai ta meu problema, importei os dados desse mySQL p/ o SQL SERVERai tranquilo, só que as imagem não foi, ficou o valor binario delas.agora naum sei como vou retirar essas imagens do MySQLse você poder me ajudar e criar um codigo p/ recuperar essas imagens eu agradeçoé muito complicado fazer isso?Obrigado Maik

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra gravar: Código: $dbcon = OCILogon($dbUser,$dbPassword,$dbName); $lob = OCINewDescriptor($dbcon, OCI_D_LOB); $data = fread(fopen($form_data, "r"), filesize($form_data)); $query = "insert into IMAGE_DATA ("; $query .= "NUM_IMAGEID, STR_IMAGE_TYPE, BLO_IMAGE_DATA"; $query .= ") values ("; $query .= "NUM_ID.NEXTVAL, $form_data_type, EMPTY_BLOB()"; $query .= ") returning BLO_IMAGE_DATA into :img_blob"; $stmt = OCIParse($dbcon,$query); OCIBindByName($stmt, ':img_blob', &$lob, -1, OCI_B_BLOB); if (OCIExecute($stmt,OCI_DEFAULT)) { if($lob->save($data)){ OCICommit($dbcon); OCIFreeStatement($stmt); echo "Blob successfully uploaded\n"; }else{ OCIFreeStatement($stmt); echo "Couldn't upload Blob\n"; } } OCILogoff($dbcon); Pra ler: Código: $dbcon = OCILogon($dbUser,$dbPassword,$dbName); $query = "select * from IMAGE_DATA where NUM_ID=$id"; $stmt = OCIParse($dbcon, $query); OCIExecute($stmt, OCI_DEFAULT); while (OCIFetchInto($stmt, $row, OCI_ASSOC)) { $data = $row["BLO_IMAGE_DATA"]->load(); } $type = OCIResult($stmt,"STR_IMAGE_TYPE"); OCIFreeStatement($stmt); Header( "Content-type: $type"); echo $data; Créditos para o código:http://www.faqts.com/knowledge_base/view.phtml/aid/2348/fid/15

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá Patricio,o que preciso é recuperar o arquivo e salvar numa pasta...tem como fazer isso?Obrigado pela atençãoAtenciosamenteMaik

Compartilhar este post


Link para o post
Compartilhar em outros sites

alguem sabe me dizer se tem como exibir as imagens que estao na tabela do mysql renomedando elas p/ o nome ficar com o ID do registro... ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha estou tentado fazer isso em oracle e estou com muita dificuldade......No mysql me parece que é mais facil pois tem as funçoes especificas pra isso ........Te encontro por aí

Compartilhar este post


Link para o post
Compartilhar em outros sites

só fazer assim:SELECT BINARY(nome_do_campo) AS imagem FROM tabelaassim você obterá o valor contido no campo.tendo isso você usa a função fopen para criar um ficheirousando fputs() você coloca o valor do campo "imagem" nesse ficheiro e salva onde quiser.entendeu ?obs: usando PHP

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.