Jump to content


Photo

Problemas Com Upload Multiplo De Imagens


  • Faça o login para participar
5 replies to this topic

#1 morsoleto

morsoleto

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 30/01/2008, 15:36

fala pessoal!!

Então tenho uma pagina de upload de imagens em php. Está funcionando, copiando a imagem e jogando onde quero. O problema que tenho é que eu preciso que essas imagens sejam cadastradas no mysql.

No mysql tenho dois campos o "nomefoto" e o "thumbfoto". No meu php tenho dois campos para fazer o upload dos arquivos um tendo que ser a imagem grande e o outro a imagem pequena. Queria que o campo da imagem grande registrasse o nome da imagem no campo nomefoto no mysql e a outra imagem no outro campo.

Até o momeno consegui resgistrar as duas imagens com seu nome, soh que ele ta gravando em ids diferentes e soh no nome foto. To postando o codigo abaixo para vcs etenderem melhor.

Se puderem me ajudar agradeço muito.

valew


<?php

//CONECTA AO BANCO DE DADOS
$conn = mysql_connect("localhost", "root","root") or die("ERRO NA CONEXÃO");

//SELECIONA A BASE DE DADOS A SER UTILIZADA
$db = mysql_select_db("galeria", $conn) or die("ERRO NA SELEÇÃO DA BASE DE DADOS");

//Diretório aonde ficará os arquivos
$dir = "./";

//Extensões permitidas
$ext = array("gif","jpg","png");

//Quant. de campos do tipo FILE
$campos = 6;

//Formulário
echo '<form method="post" action="'.$PHP_SELF.'" enctype="multipart/form-data">
  Foto Grande: <input type="file" name="file[]"><br />
  Miniatura: <input type="file" name="file[]"><br />
   <input type="submit" name="submit" value=" OK ">
  </form>';
 
 
//Se for enviado
if (isset($_POST['submit'])) {

//Obtendo info. dos arquivos
$f_name = $_FILES['file']['name'];
$f_tmp = $_FILES['file']['tmp_name'];
$f_type = $_FILES['file']['type'];


//Contar arquivos enviados
$cont=0;

//Repetindo de acordo com a quantidade de campos FILE
for($i=0;$i<$campos;$i++){

//Pegando o nome
$name = $f_name[$i];

//Verificando se o campo contem arquivo
  if ( ($name!="") and (is_file($f_tmp[$i])) and (in_array(substr($name, -3),$ext)) ) {

	if ($cont==0) {
	  echo "<b>Arquivo(s) enviados:<br /></b>";
	}
	  echo $name." - ";
	  $consulta="INSERT into galfotos (nomefoto) VALUES ('$name')";
	  $con=mysql_query($consulta,$conn) or die (mysql_error());
	  

	  //Movendo arquivo's do upload
	  $up = move_uploaded_file($f_tmp[$i], $dir.$name);

		//Status
		if ($up==true):
			echo  "<i>Enviado!</i>";
			  $cont++;
		else:
			echo "<i>Falhou!</i>";
		endif;

	  echo "<br />";
  }

}

echo ($cont!=0) ? "<br><i>Total de arquivos enviados: </i>".$cont : "Nenhum arquivo foi enviado!";
}
?>

Edição feita por: boirock, 30/01/2008, 16:02.


#2 § Kenshin §

§ Kenshin §

    I'm coming back...!

  • Usuários
  • 574 posts
  • Sexo:Masculino
  • Localidade:BA
  • Interesses:Sou fã de linguagens direcionadas para a web, como php, (x)html, xml, wml.
    Também gosto de webdesign e ultimamente tenho me dedicado mais a aprender css, mysql, javascript, ajax e actionscript.
    Trabalho com os programas Dreamweaver, Illustrator e Flash.

Posted 30/01/2008, 16:04

basicamente ta faltando voce informar na query que vai atualizar os dois campos:

$consulta = "insert into galfotos (nomefoto, thumbfoto) values ('".$name."', '".$thumbname."')";

como nao encontrei nenhuma referencia a variavel com o nome da thumb inventei uma ($thumbname).
substitua pelo nome correto.

vlw ^_^
Web Developer / Web Designer / Information Architect
"Living to learn... learning to live!"
Useful links: Rules | Search

#3 morsoleto

morsoleto

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 30/01/2008, 16:07

entao se eu fiser isso, ele vai gravar com o mesmo nome nos dois campos...

o nome da imagens sao diferentes...

#4 Boxer

Boxer

    Ativo

  • Usuários
  • 304 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 30/01/2008, 16:11

Opa!

Não será pq os campos do form tem o mesmo nome?

Foto Grande: <input type="file" name="file[]"><br />
Miniatura: <input type="file" name="file[]"><br />

[]´s (y)
"O único lugar, no mundo, onde o sucesso vem antes do trabalho, é no dicionário"

#5 morsoleto

morsoleto

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 30/01/2008, 16:16

funciono!!!! valeu pessoal

Edição feita por: morsoleto, 30/01/2008, 16:34.


#6 Bruno Augusto

Bruno Augusto

    ∙•● Restarting... ●•∙

  • Usuários
  • 1968 posts
  • Sexo:Não informado
  • Localidade:Itajubá

Posted 30/01/2008, 16:34

Olha, se você exigir do usuário que ele tenha as duas imagens (grande e pequena) não acha que estaria forçando a boa paciência?

Normalmente, a miniatura você gera automaticamente com o PHP e não pede para fazer o upload também.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq