Hola a todos,
estoy un poco pegadita en muchas cosas y no consigo hacer algo, en teoría muy sencillo. Me estoy volviendo un poco loca así que os cuento por si podéis echarme una mano.
Tengo un formulario pdf cuyos valores envío a un php para que los procese. Lo que tiene que hacer el php es:
1. abrir una plantilla rtf que tengo en el sevidor.
2. rellenarla con los datos provenientes del formulario
3. enviar por email el formulario resultante.
Lo que me ocurre es que el formulario me llega pero sin modificar. Por favor, cualquier ayuda me vendría muy bien. Gracias de antemano
El código que uso es el siguiente.
<?php
// funcion para rellenar plantilla con datos
function populate_RTF($vars, $doc_file) {
$replacements = array ('\\' => "\\\\",
'{' => "\{",
'}' => "\}");
$document = file_get_contents($doc_file);
if(!$document) {
return false;
}
foreach($vars as $key=>$value) {
$search = "#*".strtoupper($key)."*#";
foreach($replacements as $orig => $replace) {
$value = str_replace($orig, $replace, $value);
}
$document = str_replace($search, $value, $document);
}
return $document;
}
// cargo el array $vars con los valores del fomulario
$vars = array(array('nombre' => $_POST['nombre'],
'Direccion' => $_POST['direccion'],
'poblacion' => $_POST['poblacion'],
'cpostal' =>$_POST['cpostal'],
'pais' =>$_POST['pais'],
'telefonos' =>$_POST['telefonos'],
'email' =>$_POST['email'],
'dni' =>$_POST['dni'],
'nacionalidad' =>$_POST['nacionalidad'],
'nacimiento' =>$_POST['nacimiento'],
'profesion' =>$_POST['profesion'],
'Nombre_curso' =>$_POST['Nombre_curso'],
'horario' =>$_POST['horario'],
'matricula' =>$_POST['matricula'],
'ncuenta' =>$_POST['ncuenta'],
'entidad' =>$_POST['entidad'],
'titular' =>$_POST['titular'];
)
$new_rtf = populate_RTF($vars, "'IMPRESO_MATRUCULA.rtf'");
$fr = fopen('formulario.rtf', 'w') ;
fwrite($fr, $new_rtf);
fclose($fr);
// clase php mailer para enviar formulario
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->Host = "localhost";
$mail->From = "
[email protected]";
$mail->FromName = "Nombre del Remitente";
$mail->Subject = "Subject del correo";
$mail->AddAddress("
[email protected]","Nombre 01");
$mail->AddAddress("
[email protected]","Nombre 02");
$body .= "probando <i>PHPMailer<i>.<br><br>";
$mail->Body = $body;
$mail->AddAttachment("formulario.rtf", "formulario.rtf");
?>