Mailinglisten-Archive |
Steffen Kother wrote:
> wie ich zu meinem download komme, ist mir klar. Beim ersten Aufruf
> funktioniert das auch noch einwandfrei. Aber wenn dann das File direkt
> angeboten werden soll ist essig... :o(
>
> Eine Ausgabe am Bildschirm bringt mir das Gewollte. Aber beim Downloaden
> schießt er (IE) quer und bringt mir auch nicht den gewünschten
> Dateinamen, sondern "Anschreiben.php?rekl=xx".
was heißt 'quer'?
> header('Content-Transfer-Encoding: binary');
warum 'binary'?
<?php
if ( ! empty( $_REQUEST['rekl'] ) )
{
$rkl_id = explode( '|', $_REQUEST['rekl'] );
$rkl_id = $rkl_id[count( $rkl_id )-1];
$Daten = daten_anschreiben( $db_Verbindung, $rkl_id );
// wird korrekt befüllt, alle Infos enthalten und da beim 'Nach'-
// Downloaden Daten aus DB kommen ist $Daten['check'] = true
if ( empty( $Daten['check'] ) )
{
// ...
}
else
{
$_REQUEST['mode'] = 'Drucken';
}
if ( empty( $_REQUEST['mode'] ) )
{
// ...
}
else
{
if ( empty( $Daten['check'] ) )
{
write_anschreiben_db( $db_Verbindung, $rkl_id, $Daten_tmp,
$_REQUEST['mode']) ;
}
if ( $_REQUEST['mode'] == 'Drucken' )
{
// $_POST['mode'] kommt mit 'Drucken' an
$Template = file_get_contents(
'templates/Anschreiben.Text.DE.htm.tpl.htm');
$Template = html_entity_decode(
str_replace(array_keys($Daten),
array_values($Daten),
$Template));
header('Content-Type: application/msword');
header('Content-Length: '.strlen($Template));
header('Content-Disposition: inline;
filename='.str_replace('|', '',
$Daten['##REKLAMATION##']).'_Anschreiben.doc');
header('Content-Transfer-Encoding: binary');
echo $Template;
exit();
}
elseif ( $_REQUEST['mode'] == 'Mail' )
{
mail_anschreiben($db_Verbindung, $rkl_id, $Daten_tmp);
$Daten['##COMMAND##'] = 'setTimeout(\'window.close()\', 5000)';
}
}
}
else
{
echo 'Nothing done!';
}
?>
--
Sebastian Mendel
www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive