Jump to content


Photo

Upload De Imagens


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

#1 TTC_VeNdEdOr

TTC_VeNdEdOr

    Curioso

  • Usuários
  • 433 posts
  • Sexo:Masculino
  • Localidade:João Pessoa - PB

Posted 24/12/2008, 09:16

Pessoal,

Fiz um cadastro para os usuarios do site e tambem fiz o esquema de UPLOAD da foto no final do cadastro.

O nego vai la e preenche os dados, a proxima tela mostra apenas as variaveis que ele escreveu que serve como confirmacao antes de inserir os dados no bd.

Entao a pergunta eh, como eu relaciono a variavel $nome por exemplo, com a foto dele?

A foto estou fazendo o UPLOAD pra uma pasta qualquer, no mysql eu queria por apenas o caminho.

upload.php

<?php
$tamanho = 150000;
?>


<form enctype="multipart/form-data" action="?pag=upload-envia" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="<?php $tamanho ?>">
Arquivo: <input name="userfile" type="file">
<input class="form3" type="submit" value="Enviar Foto">
</form>



upload-envia.php

<?php

$tamanho = "1000000";

if ($_POST['userfile'] >= $tamanho){

echo "<script type='text/javascript'>";
echo "alert ('O Tamanho do arquivo é superior ao permitido!')";
echo "</script>";
include "index.php";

}else{

if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], 'fotos/' . $HTTP_POST_FILES['userfile']['name'])) {



echo "<script>alert('OBRIGADO POR ENVIAR SEUS DADOS!');";
echo "location.href='http://www.site.com.br/'</script>";




} else {
echo "erro";
}

}

?>



Como posso inserir a variavel $foto no bd relacionando com aquele usuario?
o.O
Age of Empires III - www.ageofempires3.com.br
Age of Empires II - www.ageofempires2.com.br
NÃO RECOMENDO: Levei calote da hospedagem BRWebs, assim que paguei cancelaram e não devolveram :/

#2 hlegius

hlegius

    Turista

  • Usuários
  • 58 posts
  • Sexo:Masculino
  • Localidade:Guarulhos, SP
  • Interesses:Google Talk: hlegius em gmail ponto com

Posted 25/12/2008, 12:43

Oi,

Não sei se entendi bem, mas ao que entendi você tem um cadastro em 2 fazes.
Primeiro dados gerais, depois a foto.

Vamos pensar:
1. Cadastro o cara. Se tudo okay, eu salvo o id/nome/rg/whatever numa sessão ou simplesmente o passo para o formulário de upload de foto num campo hidden.
2. Faço o upload da foto pego o valor do campo hidden ou da sessão (sessão é mais seguro) e atualizo a tabela do usuário com a foto - ou adiciono a foto numa outra tabela com o id-referência do usuário (em caso de multiplas fotos)

Pronto.


Abraço!
hlegius.
http://www.hlegius.pro.br | http://www.programe.me
ArchLinux - A simple lightweight Linux distribution

#3 TTC_VeNdEdOr

TTC_VeNdEdOr

    Curioso

  • Usuários
  • 433 posts
  • Sexo:Masculino
  • Localidade:João Pessoa - PB

Posted 26/12/2008, 01:57

o problema eh, como eu relaciono uma foto com o cadastro do usuario?

Como posso guardar no banco de dados o endereço da foto com o nome dele usando a variavel $nome ?
Age of Empires III - www.ageofempires3.com.br
Age of Empires II - www.ageofempires2.com.br
NÃO RECOMENDO: Levei calote da hospedagem BRWebs, assim que paguei cancelaram e não devolveram :/

#4 Henderson

Henderson

    12 Horas

  • Usuários
  • 279 posts
  • Sexo:Não informado
  • Localidade:Santos

Posted 26/12/2008, 20:15

a melhor forma não é salvar com o nome dele né, porque por exemplo terão vários "joãos"
você tem que relacionar com um campo exclusivo, por exemplo um ID num campo do tipo autonumeração

então, você fará o seguinte
se for salvar o endereço da imagem na mesma tabela que os dados do usuário, basta você fazer a sua sql corretamente

mysql_query("INSERT INTO usuarios (nome,rg,telefone,FOTO") VALUES ('$nome','$rg','$telefone','$foto');

na variável foto, você tem que ter o endereço até a foto dele que você acabou de fazer upload.

se você quiser salvar a imagem em outra tabela, e relacionar com a tabela dos usuários então você vai fazer o seguinte
primeiro de tudo, na tabela de usuários tem qe ter um campo "id" do tipo autonumeração
//Insere os dados do usuário na tabela
mysql_query("INSERT INTO usuarios (nome,rg,telefone") VALUES ('$nome','$rg','$telefone');
//Pega o valor do campo id, autonumeração
$id = mysql_insert_id();
//Inserir a imagem na tabela de fotos, relacionada com o usuário
mysql_query("INSERT INTO fotos (idusuario,caminho) VALUES ($id,$foto)");

expliquei bem? sei lá, é meio complexo de explicar tudo e não sei se é essa sua dúvida, mas qualquer coisa fale aí!

#5 Maykel Esser

Maykel Esser

    Super Veterano

  • Usuários
  • 1536 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 29/12/2008, 13:39

na tabela de fotos vc grava o id do usuário que está subindo a foto.

quando você quiser exibir a imagem, é só 'pedir' para o SQL trazer a foto do mesmo usuário que pediu:

$sql = "select * from imagens where id_usuario = ".$_SESSION['id_usuario']."";

mais ou menos isso, só adaptar conforme seu código!

Se este post lhe ajudou, ajude o fórum também. Use a reputação de mensagens! add.png





1 user(s) are reading this topic

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

IPB Skin By Virteq