Jump to content


Photo

Upload De Arquivos Com Php


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

#1 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 09:53

Tenho que fazer uma página com envio de arquivos para uma gráfica.
E ainda não sei mecher em banco de dados com php e tals. Queria saber se é possível fazer um sistema de upload de arquivos, em várias extenssões mas que esse formulário (com os arquivos) sejam enviados para o e-mail da pessoa, Sem a necessidade de um banco de dados.
Tenho um conhecimento baixo em php, por isso procuro sempre scripts prontos. Encontrei esse aqui! Ele não é da forma que preciso, com o envio direto para o e-mail.. Seria possível mudar?

Aguardo resposta.

Esqueci do link


http://blog.thiagobe...quivos-com-php/
// não mexer! eu não sei como, mas assim está funcionando

#2 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 30/04/2012, 10:26

Tem como sim.
Use a classe PHP Mailer. Segue os 3 arquivos compactados (não teve espaço para anexar os 3 arquivos por serem muito grandes).

Attached File  php mailer.rar   16.71KB   3 downloads

Mais é simples o uso. Coloque os 3 na mesma pasta. Na página que fará o envio do e-mail, insira isso.

require("libs/class.phpmailer.php"); // Certifique-se de que o caminho está certo.
	
$mail = new PHPMailer();
$mail->IsMail();
	
$mail->From     = "remetente@gmail.com"; // E-mail do remetente
$mail->FromName = "Remetente"; // Nome do remetente
$mail->AddAddress("destinatario@provedor.com.br"); // E-mail do destinatário
$mail->AddAttachment($arquivo['tmp_name'], $arquivo['name']); // arquivo anexo

$mail->IsHTML(true);
$mail->Subject = "Assunto da mensagem";
$mail->Body    = "Esta é a mensagem... Até mais!";
	
$mail->Send();

Qualquer dúvida poste ai :)
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#3 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 10:47

O que seria

require("libs/class.phpmailer.php"); ? Que caminho seria esse?

Bom, eu criei uma pasta "php" e dentro dela eu coloquei os 3 arquivos e salvez o envia.php dentro dela também. E agora?
// não mexer! eu não sei como, mas assim está funcionando

#4 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 30/04/2012, 10:59

Olá Nathy Elyza...

A linha require("libs/class.phpmailer.php"); está incluindo ao arquivo a classe PHP Mailer.

Você tem dois arquivos (um formulário e o arquivo que envia)?

O código que enviei acima é o que envia. Você só precisa receber o conteúdo pelo POST e trocar as informações que coloquei por teste pelas variaveis.
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#5 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 11:34

Eu tenho uma página onde há um formulário, nesse formulário tem o action enviar.php, onde eu coloquei esse script acima.
O script enviar.php está dento de uma pasta que criei "php/enviar.php". E dentro dessa mesma pasta estão os tres arquivos que me enviou.

class.phpmailer
class.smtp
phpmailer.lang-br
e o enviar.

Só não entendi como fazer para integrar todos eles...

No arquivo enviar.php, eu alterei // E-mail do remetente, // Nome do remetente, // E-mail do destinatário (site.com.br).

O que mais devo fazer?
// não mexer! eu não sei como, mas assim está funcionando

#6 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 30/04/2012, 11:48

Poste todo arquivo enviar.php para ver como está.
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#7 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 12:01

<?php



require("php/class.phpmailer.php"); // Certifique-se de que o caminho está certo.

        

$mail = new PHPMailer();

$mail->IsMail();

        

$mail->From     = "nathaliaelyzanehti@hotmail.com"; // E-mail do remetente

$mail->FromName = "Nathalia"; // Nome do remetente

$mail->AddAddress("alecomunicacaovisual.com.br"); // E-mail do destinatário

$mail->AddAttachment($arquivo['tmp_name'], $arquivo['name']); // arquivo anexo



$mail->IsHTML(true);

$mail->Subject = "Assunto da mensagem";

$mail->Body    = "Esta é a mensagem... Até mais!";

        

$mail->Send();



?>

// não mexer! eu não sei como, mas assim está funcionando

#8 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 30/04/2012, 12:10

Você precisa receber o arquivo do seu formulario:

$arquivo = $_FILES['arquivo'];

Lembrando que onde coloquei arquivo tem que ser o name do seu input file. Terminado faça um teste (o servidor tem que ser online).

Edição feita por: Allex Severino, 30/04/2012, 12:11.

Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#9 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 12:21

Bom, alterei só o arquivo enviar.
Coloquei no servidor, mas não funcionou.

Não mostrou erro e nem envio.
// não mexer! eu não sei como, mas assim está funcionando

#10 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 30/04/2012, 13:03

Poste o seu formulário. Vamos ver a estrutura dele.
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#11 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 13:40

Bom, não me nada nos outros arquivos, e estão dentro da mesma pasta. Se tiver msn, skype ou algum meio de conversar em tempo real. Bom, seria mais fácil. Se não for atrapalhar tbm. Sou leiga em php, sei menos q o básico. Só sei alterar os dados. E a maioria das vezes só fuço, mas nem sei o que estou fazendo. rs

<?php

require("php/class.phpmailer.php"); // Certifique-se de que o caminho está certo.
        
$mail = new PHPMailer();
$mail->IsMail();
        
$mail->From     = "nathaliaelyzanethi@hotmail.com"; // E-mail do remetente
$mail->FromName = "Nathalia"; // Nome do remetente
$mail->AddAddress("alecomunicacaovisual.com.br"); // E-mail do destinatário
$mail->AddAttachment($arquivo['tmp_name'], $arquivo['name']); // arquivo anexo

$mail->IsHTML(true);
$mail->Subject = "Assunto da mensagem";
$mail->Body    = "Esta é a mensagem... Até mais!";
        
$mail->Send();

?>

Edição feita por: Nathy Elyza, 30/04/2012, 13:41.

// não mexer! eu não sei como, mas assim está funcionando

#12 Allex Severino

Allex Severino

    Será?!?!?!

  • Usuários
  • 793 posts
  • Sexo:Masculino
  • Localidade:São Luís de Montes Belos - GO

Posted 30/04/2012, 13:43

Eu adicionei o msn nathaliaelyzanehti@hotmail.com
Meu post lhe ajudou? Clicar no Posted Image é uma das formas de agradecer.

#13 Nathy Elyza

Nathy Elyza

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino

Posted 30/04/2012, 15:05

Bom, Srº Allex.
Graças a sua ajuda funcionou muito bem.

Não estava funcionando porque, minha falta de atenção deu uma grande viajada.

O problema era o email (que eu coloquei como site) no destinatario. E também a parte require("php/class.phpmailer.php");
Onde a pasta em que estava php, era a mesma pasta em que estava o arquivo "envia.php". O require busca o arquivo àpartir da pasta em que estiver localizado o envia.php, ou seja, subpastas àpartir dela.

(acho que foi isso que me explicou).

Bom, alterei e funcionou blz.

Muito obrigada pela ajuda.

Edição feita por: Nathy Elyza, 30/04/2012, 15:07.

// não mexer! eu não sei como, mas assim está funcionando




1 user(s) are reading this topic

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

IPB Skin By Virteq