Jump to content


Photo

Upload Com Move_uploaded_file()


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

#16 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 09/05/2006, 21:09

O primeiro parâmetro da função move_uploaded_file() acho que deve ser o arquivo temporário.

Flws...
:huh: Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#17 M4rc0

M4rc0

    Turista

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

Posted 10/05/2006, 08:08

Como assim?

bool move_uploaded_file ( string nomedoarquivo, string destino )

nomedoarquivo = $imagem_prin certo?
eu dou um echo na variável e aparece ali 'imagem.jpg', significa que foi carregado (espero) corretamente..

e mesmo assim era pra dar pelo menos um 'false' no $foi

arquivo temporário?

#18 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 10/05/2006, 08:31

Ok, acompanhe neste link, o Exemplo 38-2

Flws...
(y)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#19 M4rc0

M4rc0

    Turista

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

Posted 10/05/2006, 18:33

MUITO OBRIGADO A TODOS!

Consegui...nem acredito..

Pra quem ta lendo isso agora e passou sufoco, código corrigido.
----------------------
Não esqueçam que:
[-]Obs1: Ter autorização 0750 (ou 0777..que seja) na pasta correta
[-]Obs2: O formulário deve tero enctype="multipart/form-data"
----------------------

$imagem_prin = $_FILES['imagem_prin']['name'];
$path=$_SERVER["DOCUMENT_ROOT"];
$destino="$path/imagens/fotos/$nome/$imagem_prin";
$foi = move_uploaded_file($_FILES['imagem_prin']['tmp_name'],$destino);

O echo vai mostra '1' e o arquivo vai tá la bonitinho..

Edição feita por: M4rc0, 11/05/2006, 08:14.


#20 marlylica

marlylica

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Feminino
  • Localidade:Muzambinho

Posted 14/01/2008, 09:39

Olá pessoal!
Acho, por causa dos nomes das variáveis, que os formulários começaram em um script do Linha de Código.
No entanto o meu script não funciona também e o erro está na mesma função.
Já apliquei todas as dicas de vocês, mas no final resulta: "Esse tipo de arquivo não pode ser enviado..."
Alguém pode me ajudar? Sabe onde está o erro?

Tks pela atenção.

Código html:
<form id="form" method="POST" action="curriculum_upload.php" enctype="multipart/form-data" >
	<label>Nome</label>
	<input type="text" name="nome" size="50" />
	<br />
	<label>Cidade</label>
	<input type="text" name="cidade" size="50" />
	<br />
	<label>Estado</label>
	<input type="text" name="estado" size="3" />
	<br />
	<label>E-mail</label>
	<input type="text" name="email" size="34" />
	<br />
	<label>Curriculum</label>
	<input type="file" name="curriculum" />
	<br />
	<label>Mensagem</label>
	<p>
	  <textarea name="mensagem" cols="50" rows="6"></textarea>
	  <br />
	  <input id="enviar" type="submit" name="Enviar" value="Enviar" />
	  <input id="limpar" type="reset" name="Limpar" value="Limpar" />
	  <br />
	  </p>
	<p>*Envie arquivo tipo .doc, .txt ou .pdf!</p>
  </form>

Código php:
$path=$_SERVER["DOCUMENT_ROOT"];
	
	$arquivo = $_FILES['curriculum'];
		$titulo = $arquivo['name'];
		$tamanho = $arquivo['size'];
		$tipo = $arquivo['type'];
		$temporario = $path.$arquivo['tmp_name'];
	
	echo"	Titulo:		$titulo<br>
			Tamanho:	$tamanho bytes<br>
			Tipo:		$tipo<br>
			Temporario:	$temporario<br>";
	
	if($tamanho > 0 && strlen($titulo) > 1) {
		$destino = $path.'/marly/arquivos/';
		$caminho = $destino.$titulo;

	echo"Destino:	$destino<br>
			Caminho:	$caminho<br>";

		if(preg_match('/^(.*)\.(doc|txt|pdf)$/', $tipo)) {
			if(move_uploaded_file($temporario, $caminho)) {
				print "<p>Arquivo enviado com sucesso!</p>";
			}else{
				print "<p><span style='color: #FF0000'>Erro no envio.</span></p>";
			}
		}else{
		print "<p><span style='color: #FF0000'>Esse tipo de arquivo não pode ser enviado.</span><br>
		Envie um arquivo .doc, .txt ou .pdf!</p>";
		}
	}


#21 EternaL

EternaL

    12 Horas

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

Posted 14/01/2008, 09:46

Que tipo de arquivo você está tentando enviar?

Pois, nesta parte:

if(preg_match('/^(.*)\.(doc|txt|pdf)$/', $tipo)) {

Ele está verificando o tipo do arquivo, e só deixa passar arquivos .doc, .txt e .pdf
Magnum Web - Trazendo o melhor da web para você

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

#22 marlylica

marlylica

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Feminino
  • Localidade:Muzambinho

Posted 14/01/2008, 09:50

Que tipo de arquivo você está tentando enviar?

Pois, nesta parte:

if(preg_match('/^(.*)\.(doc|txt|pdf)$/', $tipo)) {

Ele está verificando o tipo do arquivo, e só deixa passar arquivos .doc, .txt e .pdf


Nossa que resposta rápida!
Então, esses 3 tipos de arquivos mesmo.

#23 EternaL

EternaL

    12 Horas

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

Posted 14/01/2008, 10:01

Encontrei o problema, desculpe devia ter analisado melhor.

Neste If:
if(preg_match('/^(.*)\.(doc|txt|pdf)$/', $tipo)) {

Substitua o $tipo por $titulo. Esse If verifica o tipo do arquivo através do nome dele.
Magnum Web - Trazendo o melhor da web para você

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

#24 marlylica

marlylica

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Feminino
  • Localidade:Muzambinho

Posted 14/01/2008, 10:08

ai corrigi essa linha, agora mudou o erro:
Erro no envio.

Parece comédia...

#25 Marcivone

Marcivone

    12 Horas

  • Usuários
  • 200 posts
  • Sexo:Masculino
  • Localidade:Redenção-PA

Posted 14/01/2008, 10:27

Olá, eu utilizo asim e funciona perfeito, veja se resolve seu problema...

[codebox]<?php
$arquivo = $_FILES["imagem"]; //recebe o arquivo do formulário

$pasta_dir = "images/"; //pasta de destino

$arquivo_nome = $pasta_dir . $arquivo["name"];
$arquivo_n = $arquivo["name"];

move_uploaded_file($arquivo["tmp_name"], $arquivo_nome);

echo "Enviado";
?>[/codebox]


Lembrando q a pasta de destino deve ter permissão 777

Flw.

Edição feita por: Marcivone, 14/01/2008, 14:04.


#26 EternaL

EternaL

    12 Horas

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

Posted 14/01/2008, 10:28

O nome temporário já aponta para o local onde está o arquivo.

Aqui:
$temporario = $path.$arquivo['tmp_name'];

Tire o $path e deixe assim:

$temporario = $arquivo['tmp_name'];

Magnum Web - Trazendo o melhor da web para você

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

#27 marlylica

marlylica

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Feminino
  • Localidade:Muzambinho

Posted 14/01/2008, 14:55

Ok galera, funcionou o código!
O "problema" era na "/" do destino :dah: , pois voltava para a raiz do servidor.
E não colocava o arquivo na pasta dentro do diretorio do site.
Antes:
$destino = '/marly/arquivos/';
Depois:
$destino = 'marly/arquivos/';
Valewww!!!!
:aplauder:

#28 carlosguerra81

carlosguerra81

    Novato no fórum

  • Usuários
  • 4 posts
  • Sexo:Masculino
  • Localidade:rio de janeiro

Posted 23/06/2010, 16:55

caros amigos, estou com o mesmo problema, minhas imagens aparecem no banco de dados, mas nao vao para o diretório nomeado no codigo.

segue php

$uploads_dir = '/images';
$imagem_temp = $_FILES["imagem"]["imagem_temp"];
$imagem_name = $_FILES["imagem"]["imagem_name"];
move_uploaded_file($imagem_temp, "$uploads_dir/$imagem_name");

$sql = "INSERT INTO apresentacaox (imagem) VALUES ('$imagem')";
$query = mysql_query($sql);
header("Location:apresentacaox.php");

#29 André Manoel

André Manoel

    Doutor

  • Usuários
  • 996 posts
  • Sexo:Masculino
  • Localidade:Brasilia

Posted 23/06/2010, 18:45

tenta retirar essa primeira barra:

$uploads_dir = '/images';

$uploads_dir = 'images';

Se a pasta estiver em um nível abaixo mesmo...
tente usar assim:

$uploads_dir = '../images';

Iniciando na Ajuda On line...

Posted Image Meu post lhe ajudou? Reputar/votar é uma das formas de agradecer.

#30 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 11/10/2017, 15:56

Amoxicillin And Teeth Amoxicillin Side Effects In Cats viagra Pharm Como Conseguir Viagra Sin Receta Medica Generic Real Progesterone Medicine Best Website Price Free Shipping
Generic Elocon Where To Order No Prior Script eastern canada pharmacy for levitra Priligy En Johor Buy Tadalafil Online
Mantreal Cialas Commercial Kamagra En Ligne Pas Cher Online Pharmacies In India cheap cialis Liquid Amoxicillin For Cats Vente Kamagra




0 user(s) are reading this topic

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

IPB Skin By Virteq