Jump to content


Photo

Alguém Sabe Fazer Um Upload De Fotos Parecido Com Este?


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

#1 Jobless

Jobless

    Turista

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

Posted 13/05/2009, 09:49

Galera estou precisando de ajuda urgente, no projeto que estou realizando preciso de um upload de fotos que faça o mesmo que mostra a imagem abaixo:

Posted Image

Creio que isso seja feito usando PHP, Javascript e talvez ajax, pode ser que dê para fazer só com PHP e Javascript.

A lógica é:

1- O usuário clica em "inserir a foto":
2 - Abre-se uma janela usando uma função do javascript para upload da mesma
3- Após esta foto ser inserida ela aparece na página onde o usuário clicou para "inserir a foto".

Claro que sem dar "reload" na página...

Sei um pouco de PHP e muito pouco de javascript.. preciso de ajuda ...

Galera alguém sabe como fazer? Se souber posta o código ou se aguém já tem pronto pode me mandar?

Valeu! :blink:

#2 fly2k

fly2k

    Super Veterano

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

Posted 13/05/2009, 10:03

Você sabe como realizar upload de arquivo em PHP ?

A maioria da programação nesse caso é feita em javascript manipulando o DOM.
Quer aprender PHP? -> www.manjaphp.com.br
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.

#3 Jobless

Jobless

    Turista

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

Posted 13/05/2009, 10:14

Sim sei fazer o upload com PHP, mas preciso de um modelo pronto para ter noção de como fazer, pois sei muito pouco de Javascript.. pode me ajudar por favor?

#4 EternaL

EternaL

    12 Horas

  • Usuários
  • 299 posts
  • Sexo:Masculino
  • Localidade:Blumenau, SC

Posted 13/05/2009, 11:49

Vamos começar com alguns esclarecimentos.

Primeiro: Ajax é um conceito (Asynchronous Javascript And XML) onde são feitas requisições http via Javascript.
Segundo: Infelizmente o Javascript não faz envio de arquivos (há possibilidade no Firefox através de modificações nas configs do browser)

E quanto ao seu problema:
A solução do seu problema não é exatamente o PHP (essa parte é "fácil" e aparentemente você já conhece), mas sim um pouco de Javascript e HTML, oque torna este tópico assunto de outro fórum.

Mas mesmo assim vou responder. A idéia, é que como não é possível enviar arquivos via Javascript, você precisa utilizar um iframe "invisível". E então na tag <form> do seu formulário você altera o atributo target para o iframe, o iframe vai abrir a página que vai receber o post e você pode imprimir nessa página um javascript com a mensagem que desejar.

Desta maneira ele não irá dar um reload na página, mas somente no iframe contido nela.

Edição feita por: EternaL, 13/05/2009, 11:52.

Magnum Web - Trazendo o melhor da web para você

Desenvolvimento de websites e sistemas web. Acesse http://www.magnumweb.com.br

#5 Maykel Esser

Maykel Esser

    Super Veterano

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

Posted 13/05/2009, 15:02

nunca consegui fazer upload de arquivos com AJAX. Sempre dá problema, por ser assícrono. Deve existir algum jeito, o hotmail sobe anexos sem dar reload na página!

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


#6 EternaL

EternaL

    12 Horas

  • Usuários
  • 299 posts
  • Sexo:Masculino
  • Localidade:Blumenau, SC

Posted 13/05/2009, 15:51

Bom eu dei a solução no meu post ali, mas você pode fazer assim:

form.html
<html>
<head>
	<title>Form</title>
</head>
<body>
	<form action="inserir.php" method="post" target="iframe_inserir" enctype="multipart/form-data">
		<input type="file" name="imagem" />
		<input type="submit" value="Inserir" />
	</form>
	<iframe name="iframe_inserir" id="iframe_inserir" frameborder="0" height="0" width="0"></iframe>
</body>
</html>

inserir.php
<?php
if (move_uploaded_file($_FILES['imagem']['tmp_name'], 'imagens/'. $_FILES['imagem']['name'])) {
	$mensagem = "Imagem inserida com sucesso!";
} else {
	$mensagem = "A imagem não pode ser inserida.";
}
?>

<script type="text/javascript">
	alert('<?= $mensagem; ?>');
</script>

Claro que isso é só uma demonstração, e fica faltando uma série de coisas que serão feitas por você, mas o básico é isso.
Magnum Web - Trazendo o melhor da web para você

Desenvolvimento de websites e sistemas web. Acesse http://www.magnumweb.com.br

#7 fly2k

fly2k

    Super Veterano

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

Posted 13/05/2009, 22:29

@maykel, no geral é feito ou com flash, ou cm frames
Quer aprender PHP? -> www.manjaphp.com.br
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.

#8 Maykel Esser

Maykel Esser

    Super Veterano

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

Posted 14/05/2009, 09:22

provavelmente deve ser algo com frames! Ou algum framework, pois vc pode continuar fazendo as coisas enquanto ele faz o upload.

Outro exemplo é o envio de imagens para o Orkut! Como será que da pra fazer aquilo? :ponder:

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


#9 '' sem.Ponto

'' sem.Ponto

    Super Veterano

  • Ex-Admins
  • 2098 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte

Posted 14/05/2009, 11:55

Só com PHP e Ajax não tem como, tem que usar flash ou iframes como o fly2k disse...

Recomendo:

http://demo.swfuploa.../v220/index.htm
http://www.pixeline....loader/test.php
att,
Muller Dias
ex-administrador Fórum WMO

#10 lwirkk

lwirkk

    Veterano

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

Posted 14/05/2009, 13:55

Com jquery dá '-'
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#11 Maykel Esser

Maykel Esser

    Super Veterano

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

Posted 15/05/2009, 08:38

legal essa do jquery hein! Vou implantar :snack:

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


#12 lwirkk

lwirkk

    Veterano

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

Posted 15/05/2009, 11:33

com jquery você pode simplesmente pegar um desses scripts que 100. colocou aí, e depois pegar com DOM ou jquery mesmo o valor retornado, que poderia ser o nome novo da foto de upload e atualizar o SRC da miniatura onde desejar....
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)




1 user(s) are reading this topic

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

IPB Skin By Virteq