Mám problém s mailerom. Slúži na odosielanie e-mailov s prílohou. Používa funkciu imap_mail_compose (http://www.php.net/, search: imap_mail_compose). Má tú chybu, že k názvu prílohy pridáva príponu .dat Dáta sú nepoškodené, sú v poriadku, ale pre lajika sa nedajú otvoriť.
Adresu má: http://www.pikosoft.wz.cz/email/email.php
                                 
                                 
                               
               
                              
                                 
                                      stejnej problem mam taky, uz jsem to psal do sekce php, ale nikdo mi neporadil - je to jen v tom enctype-binary - ale nikdo nerekl, co tam mam napsat misto toho aby to fungovalo tak jak ma...
                                 
                                 
                               
               
                              
                                 
                                      Dnes som sa s tým celý deň zaoberal a prišiel som na riešenie.
Je to trošku zložitejšie. Radšej ti dám zdrojáč:
<?
	$envelope["from"]="$from";
	$envelope["to"]="$to";
	$envelope["cc"]="$cc";
	$envelope["bcc"]="$bcc";
	$envelope["subject"]="$subject";
	$head["type"]=TYPEMULTIPART;
	$head["subtype"]="mixed";
	
	$message["type"]=TYPETEXT;
	$message["encoding"]=ENCBASE64;
	$message["subtype"]="html";
	$message["description"]="Text správy";
	$message["contents.data"]= base64_encode($msg) . "\n\n\n";
	$fp=fopen($file,"r");
	$contents=fread($fp,filesize($file));
	fclose($fp);
	$attachment["type"]=TYPEAPPLICATION;
	$attachment["encoding"]=ENCBINARY; //Tuto problém nie je, ale aj ja som si to najprv myslel
	$attachment["subtype"]="octet-stream";
	$attachment["contents.data"]=$contents;
	
	$body[1]=$head;
	$body[2]=$message;
	$body[3]=$atachment;
	
	$email_output = imap_mail_compose($envelope,$body);
	
	// Mail máme hotový, ale nie celkom správny.
	// Treba niektoré hlavičky doplniť alebo zmeniť, rozobrať na $header a $telo a tak odoslať.
	
	$exp_path = explode("\\",$filename);
	$filename = $exp_path[count($exp_path)-1]; // Príkaz basename mi nejak nefunguje :-(, tak som si to spravil inak.
	$header_end = strpos($email_output, "\r\n\r\n");
	$header = substr($email_output,0,$header_end);
	$header .= "; charset=windows-1250\n"; //Diakritika v hlavičke
	$header .= "X-Priority: $priority\n";
	$header .= "X-Mailer: PikoSoft PHP Mailer (http://www.pikosoft.wz.cz/)\n\n";
	$telo = substr($email_output,$header_end,strlen($email_output));
	$telo = str_replace("US-ASCII","windows-1250",$telo); // Diakritika
	$telo = str_replace("Content-Type: APPLICATION/octet-stream","Content-Type: APPLICATION/octet-stream\nContent-Disposition: attachment; filename=\"$filename\"",$telo); //<<-- TOTO SI VŠIMNI!
	
	$result = mail("","",$telo,$header);
	echo $result ? "E-mail bol odoslaný." : "E-mail sa nepodarilo odoslať.";
?>
POZNÁMKA: $file je súbor odoslaný pomocou formulára a $filename je názov a cesta k súboru.