Jump to content


Photo

Receber Do Formulário, Gerar .doc


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

#1 RainMaker

RainMaker

    Almagus Web Design - O Seu Mundo na Web

  • Usuários
  • 498 posts
  • Sexo:Masculino
  • Localidade:Rio Grande do Sul
  • Interesses:O de todo administrador de empresas: Fazer o negócio evoluir e se desenvolver.

Posted 02/05/2007, 11:23

Olá pessoal.

Após algumas dificuldades estamos no ar novamente, com algumas modificações.
É bom estar no wmonline novamente e ver que o fórum evoluiu muito.

Pesquisei e não encontrei o seguinte:

Tenho um formulário. O usuário preenche ele com os dados respectivos, o sistema
gera um .doc com os dados e envia como anexo em e-mail para meu cliente.

O corpo do .doc é um html.

Prefiro que seja enviado um anexo.doc pois o cliente simplesmente já armazena
o arquivo, ao invés de ter de abrir word, colar dados, salvar, etc...

Grato
Quer uma boa promoção?
Cadastre seu cliente em nossa hospedagem, ganhe 50% do valor no primeiro mês e a partir daí 10% a 15% do valor mensal!

Para entrar em contato por e-mail - webmaster@almagus.com.br ou www.almagus.com.br ou MP.

#2 Stormbringer

Stormbringer

    I'd love to stay with you all

  • Ex-Admins
  • 2927 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO
  • Interesses:Atualmente: pesquisa e desenvolvimento de web-games

Posted 03/05/2007, 11:03

Belo nick, RainMaker... parece nick de aprendiz de Stormbringer, ehhehehe

bom,

http://www.phpclasse...ckage/2763.html


tem documentaçao de uso e tal...
nunca usei, já usei classe semelhante pra trabalhar com PDF, geralmente os "manuais" que vem com essas classes sao fáceis de entender e aplicar.

Edição feita por: Stormbringer, 03/05/2007, 11:03.

๑۩۞۩๑Let the Carnage Begin!!๑۩۞۩๑


#3 RainMaker

RainMaker

    Almagus Web Design - O Seu Mundo na Web

  • Usuários
  • 498 posts
  • Sexo:Masculino
  • Localidade:Rio Grande do Sul
  • Interesses:O de todo administrador de empresas: Fazer o negócio evoluir e se desenvolver.

Posted 03/05/2007, 13:08

Ah vlw...mas escolhi criar o arquivo, depois anexar ele. Saca só:

<?php

//Este script funciona da seguinte forma: O cara digita os dados dele para o curriculun
//o script cria um arquivo .doc e envia diretamente para o e-mail da empresa
//Este aqui é feito à moda loca, apenas para teste. Quando for colocar em algum projeto
//lembre-se das validações e etc ok?
//NESTE CASO é um .doc . Isto serve apenas para caminho das pedras.

//Fazer o post dos dados, exemplo
$nome = "Marcelo";
$to = "marceloonnet@terra.com.br"; //aqui vai o e-mail de quem recebe
$subject = "Novo curriculun - $nome";//assunto que aparece no e-mail

$dados_txt = "
<html><body>
<b>Alguma coisa</b> que vc queira armazenar no txt
</body></html>
";

//Primeiro criar o arquivo.doc ok?
$fp = fopen ("$nome.doc", "w+");
fwrite ($fp, $dados_txt);
fclose ($fp);
//beleza, arquivo criado.


//Agora anexar este arquivo no e-mail
//pega os dados enviados pelo usuário
$body			= "Olá Mundo";
$from			= $nome;
$attach		  = "$nome.doc";
$attach_name	  = "$nome.doc";
$attach_size	  = "$nome.doc";


//define os headers de envio
$mailheaders = "From: \"$nome\" <$from>\r\n";
$mailheaders .= "Reply-To: $from\n";
//e define a mensagem tirando barras para evitar problemas no script
$msg_body = stripslashes($body);

$path = $attach;
$fp = fopen($path, 'r');
do{
		data = fread($fp, 8192);
		if (strlen($data) == 0) break;
		$content .= $data;
	  } while (true);
$content_encode = chunk_split(base64_encode($content));
$message .= $content_encode . "\n";
$message .= "--" . $boundary . "\n";

//envia o email para as variáveis já definidas e tratadas e mostra mensagem de sucesso
mail($to, stripslashes($subject), $message, $mailheaders);
echo"Enviado com Sucesso!";
echo"<br>";
echo"<a href=\"home.php\">Voltar para página Principal</a>";

?>

Acusa error na linha 46.
Alguém sabe porque?
Quer uma boa promoção?
Cadastre seu cliente em nossa hospedagem, ganhe 50% do valor no primeiro mês e a partir daí 10% a 15% do valor mensal!

Para entrar em contato por e-mail - webmaster@almagus.com.br ou www.almagus.com.br ou MP.

#4 savior

savior

    Campanha [codebox], use ou morra :D

  • Usuários
  • 1229 posts
  • Sexo:Masculino
  • Localidade:Curitiba, PR - Brasil
  • Interesses:Na vida ;P

Posted 03/05/2007, 16:19

Ah vlw...mas escolhi criar o arquivo, depois anexar ele. Saca só:

<?php

//Este script funciona da seguinte forma: O cara digita os dados dele para o curriculun
//o script cria um arquivo .doc e envia diretamente para o e-mail da empresa
//Este aqui é feito à moda loca, apenas para teste. Quando for colocar em algum projeto
//lembre-se das validações e etc ok?
//NESTE CASO é um .doc . Isto serve apenas para caminho das pedras.

//Fazer o post dos dados, exemplo
$nome = "Marcelo";
$to = "marceloonnet@terra.com.br"; //aqui vai o e-mail de quem recebe
$subject = "Novo curriculun - $nome";//assunto que aparece no e-mail

$dados_txt = "
<html><body>
<b>Alguma coisa</b> que vc queira armazenar no txt
</body></html>
";

//Primeiro criar o arquivo.doc ok?
$fp = fopen ("$nome.doc", "w+");
fwrite ($fp, $dados_txt);
fclose ($fp);
//beleza, arquivo criado.


//Agora anexar este arquivo no e-mail
//pega os dados enviados pelo usuário
$body			= "Olá Mundo";
$from			= $nome;
$attach		  = "$nome.doc";
$attach_name	  = "$nome.doc";
$attach_size	  = "$nome.doc";


//define os headers de envio
$mailheaders = "From: \"$nome\" <$from>\r\n";
$mailheaders .= "Reply-To: $from\n";
//e define a mensagem tirando barras para evitar problemas no script
$msg_body = stripslashes($body);

$path = $attach;
$fp = fopen($path, 'r');
do{
		data = fread($fp, 8192);
		if (strlen($data) == 0) break;
		$content .= $data;
	  } while (true);
$content_encode = chunk_split(base64_encode($content));
$message .= $content_encode . "\n";
$message .= "--" . $boundary . "\n";

//envia o email para as variáveis já definidas e tratadas e mostra mensagem de sucesso
mail($to, stripslashes($subject), $message, $mailheaders);
echo"Enviado com Sucesso!";
echo"<br>";
echo"<a href=\"home.php\">Voltar para página Principal</a>";

?>

Acusa error na linha 46.
Alguém sabe porque?



Eu sei :o
Mas não vou te contar xD

Brincadeirinha, só foi joga no meu editor IDE que ele já apontou a causa

do{
		[color="#FF0000"][b]data[/b][/color] = fread($fp, 8192);
		if (strlen($data) == 0) break;
		$content .= $data;
	  } while (true);
Faltou um $ no data ali.

Eu usaria isso aqui no lugar desse seu do

$content = fread ($fp, filesize ($path));
Assim você nao precisa do while só para ler de 8192 em 8192 bytes O.o

Bom divertimento aprendiz do Stormbringer :P

(y)

[lastfm] [blog]

Campanha codebox: use-a ou morra!
bfmaster_duran[at]yahoo.com.br





0 user(s) are reading this topic

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

IPB Skin By Virteq