Fabyo 66 Denunciar post Postado Março 9, 2005 <span style='font-size:14pt;line-height:100%'>Upload de foto e salvando o path no banco</span> Como tenho visto bastante gente com duvidas sobre como salvar a imagem num banco de dados ,resolvi postar um exemplo simples index.html: <html> <head> <title>Upload</title> </head> <body bgcolor = "#FFFFFF" text = "#000000"> <form name = "form1" method = "post" action = "upload.php" enctype = "multipart/form-data"> <input type = "file" name = "arquivo"> <input type = "submit" name = "Submit" value = "Enviar"> </form> </body> </html> upload.php: <?php //Fabyo Guimaraes //se existir o arquivo if(isset($_FILES["arquivo"])){ $arquivo = $_FILES["arquivo"]; $pasta_dir = "arquivos/";//diretorio dos arquivos //se nao existir a pasta ele cria uma if(!file_exists($pasta_dir)){ mkdir($pasta_dir); } $arquivo_nome = $pasta_dir . $arquivo["name"]; // Faz o upload da imagem move_uploaded_file($arquivo["tmp_name"], $arquivo_nome); //conecta no banco $cn = mysql_connect("localhost"); mysql_select_db("banco"); //aqui salva no banco o path da foto <font face="verdana">mysql_query("INSERT INTO tabela VALUES ('', '$arquivo_nome')"); mysql_close($cn); </font> } ?> aqui você lista as fotos que estao no banco listar.php: <?php//Autor Fabyo Guimaraes //conecta no banco <font face="verdana">$cn = mysql_connect("localhost"); mysql_select_db("banco"); </font> //seleciona a tabela <font face="verdana">$sql = "Select * from tabela"; $query = mysql_query($sql); while($row = mysql_fetch_array($query)){ $fotos = $row["fotos"]; echo "<img src=\"$fotos\"> "; } </font> ?> Compartilhar este post Link para o post Compartilhar em outros sites
rwcoelho 0 Denunciar post Postado Setembro 11, 2005 Grande Fábio, Estive executando este passo a passo,porém, no upload surge a seguinte mensagem: Parse error: parse error in c:\serv-n\www\bcoimagem\upload.php on line 27 e a referida linha é: mysql_query("INSERT INTO imagens VALUES ('','$formato', '$imagem')"); no arquivo listar.php, surge uma tela indecifravel e não a foto. Por favor um helpppp. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Setembro 11, 2005 você acrescentou mais um campo no seu script entao você precisa acrescentar no banco tbm e tenta ver uma linha antes se você esqueceu de colocar ( ; ) Compartilhar este post Link para o post Compartilhar em outros sites
Chupeta 0 Denunciar post Postado Setembro 12, 2005 Parece bom, vou experimentar. Compartilhar este post Link para o post Compartilhar em outros sites
ronaldo_calado 0 Denunciar post Postado Março 18, 2006 E se a pessoa nao fizer o upload, qual serio o código para o caso de nao se passar nenhum valor? Compartilhar este post Link para o post Compartilhar em outros sites
pplanel 0 Denunciar post Postado Março 25, 2006 Ue cara...coloca um valor default.... Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Souza 0 Denunciar post Postado Maio 2, 2006 no caso eu tenho um formulário que o cliente cadastra os imóveis no bd. Bom, depois que ele preencher todo o formulário, o último campo seria pra ele fazer o upload das fotos, no caso até 4 fotos, como seria para implantar esse código no meu form, sendo que o path teria que ser gravado junto com a inserção dos dados do form, e as fotos teriam que ir para a pasta. No caso eu não terei a página upload.php?Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Raziel Nomack 0 Denunciar post Postado Maio 11, 2006 Caras upload é mole difícil é thumbs ou controle se o arquivo já existe criar outro nome. Abaixo um script com o formulário e o script no mesmo arquivo... basta lembrar de que adotarei a conexão através de um require* <form action="teste.php?opercao=upload" method="post" enctype="multipart/form-data" name="form1" target="_self"> Arquivo: <input name="file" type="file" size="50" maxlength="50"> <br> Descrição: <input name="descricao" type="text" size="50" maxlength="50"> <br> <input type="submit" name="Submit" value="enviar"> </form> <?php require("conection.php"); // arquivo onde contem parametros de conexão com o MYSQL if((isset($_GET['operacao'])) && ($_GET['operacao'] == "upload")) // recebe váriáves { $file = $_FILES['file']['name']; $file_size = $_FILES['file']['size']; $descricao = $_POST['descricao']; // mude para o diretório que você quizer a partir da raiz do site $diretorio = "diretoriodestino/"; // tamanho em bytes do seu arquivo - Especifique o tamanho desejado $max_file_size = 16000; // mais ou menos 120x120 (avatar) // caso não seja inserido um arquivo if(empty($file) { echo "<center>Arquivo não existente, você deve enviar um arquivo</center>"; echo '<meta http-equiv="refresh" content="3; URL=teste.php">'; } // caso o arquivo seja maior do que o desejado elseif ($file_size > $max_file_size) { echo "<center>Arquivo muito grande</center>"; echo '<meta http-equiv="refresh" content="3; URL=teste.php">'; } // se tudo der ok..... prossegue enviando e salvando else { // move o arquivo do temp para o diretório especificado + nome do arquivo move_uploaded_file($_FILES['avatar']['tmp_name'], $diretorio.$file); // Grava no banco de dados $gravar = mysql_query("INSERT INTO tabela (arquivo, descricao) VALUES ('$file', '$descricao')", $con); //$con = conexão com MYSQL -- >> require("conection.php"); } } ?> espero que ajude..... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif A propósito... mandar váris fotos de uma só vez não fica muito mestavel apesar de possuirmos banda larga... pode dar pau no max_upload..... Compartilhar este post Link para o post Compartilhar em outros sites
PauloRJ 4 Denunciar post Postado Maio 25, 2006 Ola, eu tentei efetuar o codigo em minha maqina. Estou tendo a seguinte mensagem de erro: Parse error: parse error in c:\web\upload\upload.php on line 28 Acredito que o erro seja no bd. Se puder colar o txt de criação das tabelas fico grato. Compartilhar este post Link para o post Compartilhar em outros sites
CiberMix 0 Denunciar post Postado Junho 14, 2006 Puts é o que to procurando, mas ainda nao compreendi. Compartilhar este post Link para o post Compartilhar em outros sites
rsddaros 0 Denunciar post Postado Junho 26, 2006 o ultimo script postado nunca vai funcionar se não colocar esta linha diferentemove_uploaded_file($_FILES['avatar']['tmp_name'], $diretorio.$file);seguindo a logica seria assimmove_uploaded_file($_FILES['file']['tmp_name'], $diretorio.$file);e se eu fosse usar este script colocaria um if(is_dir($diretorio)) para ver se existe i diretorio de caso contrario faz um mkdir();... so pra garantir...T+ Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Souza 0 Denunciar post Postado Agosto 4, 2006 galera...nem aparece minha página...haiuhaiuhfa Compartilhar este post Link para o post Compartilhar em outros sites
Luther 0 Denunciar post Postado Outubro 12, 2006 Alguem pode me ajudar...Pra mim ta aparecendo este erro ao tentar fazer o move_Upload Warning: move_uploaded_file(arquivos/Moises0001.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in c:\Inetpub\wwwroot\teste\upload.php on line 15Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\PHP\uploadtemp\php3D.tmp' to 'arquivos/Moises0001.jpg' in c:\Inetpub\wwwroot\teste\upload.php on line 15 Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Outubro 12, 2006 esse problema é de permissao, de um CHMOD na pasta via php ou via FTP Compartilhar este post Link para o post Compartilhar em outros sites
Luther 0 Denunciar post Postado Outubro 12, 2006 Pode crer Fabyo... na verdade eu so Redefini Permissão do Usuario Anonimo de Web para poder criar arquivos nesta pasta e foi de boa... Muito obrigado pela ajuda cara... Compartilhar este post Link para o post Compartilhar em outros sites
Luther 0 Denunciar post Postado Outubro 13, 2006 Fabyo eu again...Cara, se a pessoa deixar o campo foto em branco vai apresentar erro. Como fazer para, caso ela deixar o campo foto em branco, o Form pegar a foto que ja esta hospedada no servidor? Compartilhar este post Link para o post Compartilhar em outros sites
Sphinter 0 Denunciar post Postado Outubro 14, 2006 Eu nao tenho duvidas no script e so uma duvida de opções.Eu to fazendo um site aqui e ele tem galeria de fotos. so que em vez de eu guardar o nome da foto no BD eu to guardando endereço onde elas estão.Ai na pagina que exibe as fotos eu leio o diretorio inteiro atraz das img e mostro todas elas na pagina. Qual desses modos você me recomendaria +?Colocar o link de todas no BD? ou ler o diretorio? Eu acho q ler o diretorio ele carrega muito, e ja com o BD eu tbm posso colocar a opção de comentarios em cada foto ne?mas queria saber a opnião da galera ai..Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Renata Sousa Cantanhêde 0 Denunciar post Postado Outubro 20, 2006 Aproveitando a dúvida, depois do upload imagem na pasta e nome no BD, como faço pra apagar as imagens depois? Tentei fz mas não funcionou.Valeu..=) Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Outubro 20, 2006 como você ta fazendo? você precisa ter permissao para poder apagar da algum erro ? Compartilhar este post Link para o post Compartilhar em outros sites
Suissa 1 Denunciar post Postado Outubro 21, 2006 ngm tem um script para salvar imagens como BLOB e recupera-las na interface??? Compartilhar este post Link para o post Compartilhar em outros sites