Olá, o mais viável é gerar em word um documento RTF, com a codificação dos campos a substituir do tipo #nome_cliente#, #morada_cliente#, etc
no exemplo seguinte criar o documento contratomodelo.rtf
criando um botão dentro do formulário efetua a substituição dos campos com os dados:
ROTINA:
$current_date = date(‘Y-m-d’);
// FORMATAR A DATA
$xwdata_instalacao ={data_instalacao};
$wdia= date( ‘d’, strtotime($xwdata_instalacao) );
$wmes= date( ‘m’, strtotime($xwdata_instalacao) );
$wano = date( ‘Y’, strtotime($xwdata_instalacao) );
switch (date( ‘m’, strtotime($xwdata_instalacao) ))
{
case 1: $vmes = ‘Janeiro’; break;
case 2: $vmes = ‘Fevereiro’; break;
case 3: $vmes = ‘Março’; break;
case 4: $vmes = ‘Abril’; break;
case 5: $vmes = ‘Maio’; break;
case 6: $vmes = ‘Junho’; break;
case 7: $vmes = ‘Julho’; break;
case 8: $vmes = ‘Agosto’; break;
case 9: $vmes = ‘Setembro’; break;
case 10: $vmes = ‘Outubro’; break;
case 11: $vmes = ‘Novembro’; break;
case 12: $vmes = ‘Dezembro’; break;
}
$xmarca={marca};
$xmodelo={modelo};
$xnumero_contrato={numero_contrato};
$xnumero_serie={numero_serie};
$xnome_cliente={cliente_nome};
$xcontador_inicial_cor={contador_inicial_cor};
$xcontador_inicial_preto={contador_inicial_preto};
$xmorada_cliente={cliente_morada};
$xnif_cliente={cliente_nif};
$xdata_inicio={data_inicio};
$xtipocontrato={tipo_contrato};
$xvalortotalfatura={valor_total_fatura};
$xvalorcopiacor={valor_cor};
$xvalorcopiapreto={valor_preto};
$xincluipapel={inclui_papel};
$xnomerepresentante={obs_constar_contrato};
$xobsconstar={obs_constar_contrato};
$current_date = date(‘Y-m-d’);
$vdata = ‘Funchal, ‘. $wdia.’ de ‘.$vmes.’ de ‘.$wano;
$xdatasistema= $wdia.’-’.$vmes.’-’.$wano;
$xvalidademeses={validade_meses};
$xdatainstalacao={data_instalacao};
$wdiacontrato= date( ‘d’, strtotime( $xwdata_instalacao ) );
$wmescontrato= date( ‘m’, strtotime( $xwdata_instalacao ) );
$wanocontrato = date( ‘Y’, strtotime($xwdata_instalacao ) );
$xdata_instalacao= $wdiacontrato.’-’.$wmescontrato.’-’.$wanocontrato;
$wxdiacontrato= date( ‘d’, strtotime( $xdata_inicio ) );
$wxmescontrato= date( ‘m’, strtotime( $xdata_inicio ) );
$wxanocontrato = date( ‘Y’, strtotime($xdata_inicio) );
$xxxdatainicio= $wxdiacontrato.’-’.$wxmescontrato.’-’.$wxanocontrato;
// INICIO FORMATA WORD
$arquivo = “…/_lib/templates/contratomodelo.rtf”;
$arq = fopen($arquivo,“r”);
// LER O ARQUIVO
$mensagem = fread($arq, filesize($arquivo));
// FECHA O ARQUIVO
fclose($arq);
// VALORES DOS CAMPOS
$mensagem = str_replace(’#marca#’, $xmarca, $mensagem);
$mensagem = str_replace(’#modelo#’, $xmodelo, $mensagem);
$mensagem = str_replace(’#contrato#’, $xnumero_contrato, $mensagem);
$mensagem = str_replace(’#numeroserie#’, $xnumero_serie, $mensagem);
$mensagem = str_replace(’#nomecliente#’, $xnome_cliente, $mensagem);
$mensagem = str_replace(’#contadorinicialcor#’, $xcontador_inicial_cor, $mensagem);
$mensagem = str_replace(’#contadorinicialpreto#’, $xcontador_inicial_preto, $mensagem);
$mensagem = str_replace(’#moradacliente#’, $xmorada_cliente, $mensagem);
$mensagem = str_replace(’#nifcliente#’, $xnif_cliente, $mensagem);
$mensagem = str_replace(’#datainicio#’, $xxxdatainicio, $mensagem);
$mensagem = str_replace(’#nmeses#’,$xvalidademeses, $mensagem);
$mensagem = str_replace(’#tipocontrato#’, $xtipocontrato, $mensagem);
$mensagem = str_replace(’#valortotalfatura#’, $xvalortotalfatura, $mensagem);
$mensagem = str_replace(’#valorcopiapreto#’, $xvalorcopiapreto, $mensagem);
$mensagem = str_replace(’#valorcopiacor#’, $xvalorcopiacor, $mensagem);
$mensagem = str_replace(’#incluipapel#’, $xincluipapel, $mensagem);
$mensagem = str_replace(’#datasistemaextenso#’, $vdata, $mensagem);
$mensagem = str_replace(’#datasistema#’, $xdata_instalacao, $mensagem);
$mensagem = str_replace(’#obsconstarcontrato#’, $xobsconstar, $mensagem);
$mensagem = str_replace(’#nomedorepresentante#’, $xnomerepresentante, $mensagem);
//$mensagem = str_replace(‘campo05’, [var_usuario_nome], $mensagem);
// SALVA ARQUIVO
$vtipo =“contratoN”.$xnumero_contrato;
$vtipo =“contratoN”.$xnumero_contrato;
//$vtipo =“contratoN”;
$vtipo = strtr($vtipo, “áàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ”, “aaaaeeiooouucAAAAEEIOOOUUC”);
$vtipo = strtolower($vtipo);
$vtipo = str_replace(’ ‘, ‘_’, $vtipo);
$vtipo = $vtipo.’.rtf’;
$arquivo2 = “…/_lib/templates/”.$vtipo;
$fp = fopen($arquivo2, ‘w’);
fwrite($fp, $mensagem);
fclose($fp);
// DIRECIONA
// Não esquecer desbloquear janelas popups do browser
echo “";
sc_exit(sel);
o resultado será gerar um documento word no formato RTF que abre automáticamente, posteriomente poderá exportar para PDF.