добавил архив с исходником в первое сообщение.
Вот какой код PHP предлагает мой бесплатный хостер, но в немецком я увы не бум-бум, а без комментов не пойму как прикрутить к моей форме...

PHP код:
<?php
// ********************************************************************************************************************************
// smtp mail Funktion for kilu user, modifiziert by das Ass 22.03.2008 http://dasass.kilu.de/smtp.txt
// ********************************************************************************************************************************
$name = "Absendername"; // optional
$email = "Absender Mail-Adresse";
$smtphost = 'mail.gmx.net';
$smtpuser = 'Kundennummer';
$smtppass = 'Passwort';
$mailfrom = 'eigene Mail-Adresse';
if(strtoupper(substr(PHP_OS,0,3)=='WIN')) {
$eol="\r\n";
}
elseif (strtoupper(substr(PHP_OS,0,3)=='MAC')) {
$eol="\r";
}
else {
$eol="\n";
}
function mailserverparse( $socket, $response ) {
$server_response = null;
while( substr( $server_response, 3, 1 ) != ' ' )
if( !( $server_response = fgets( $socket, 256 ) ) )
trigger_error( 'can not get mail server response codes' );
if( !( substr( $server_response, 0, 3 ) == $response ) )
trigger_error( 'ran into problems sending mail. response: '.$server_response );
return true;
}
function sendmail( $to, $subject, $message, $headers ) {
global $smtphost, $smtpuser, $smtppass, $mailfrom, $eol;
if( !$socket = @fsockopen( $smtphost, 25, $errno, $errstr, 20 ) )
trigger_error( "Could not connect to smtp host: {$errno}:{$errstr}" );
if( trim( $subject ) == null )
trigger_error( 'no email Subject specified' );
$message = preg_replace( "#(?<!\r)\n#si", "\r\n", $message );
if( trim( $message ) == null )
trigger_error( 'message was blank' );
if( !preg_match( '#^from:#i', $headers ) && empty( $mailfrom ) )
trigger_error( 'no FROM header set' );
mailserverparse( $socket, '220' );
fputs( $socket, "HELO ".$smtphost.$eol );
mailserverparse( $socket, '250' );
if( !empty( $smtpuser ) && !empty( $smtppass ) ) {
fputs( $socket, "AUTH LOGIN".$eol );
mailserverparse($socket, '334' );
fputs( $socket, base64_encode( $smtpuser ).$eol );
mailserverparse($socket, '334' );
fputs( $socket, base64_encode( $smtppass ).$eol );
mailserverparse( $socket, '235' );
}
if( $headers != null ) {
$headers = rtrim( $headers );
$headers = preg_replace( '#(?<!\r)\n#si', $eol, $headers );
$header_array = explode( $eol, $headers );
$headers = null;
$cc = null;
$bcc = null;
foreach( $header_array as $header ) {
if ( preg_match( '#^cc:#si', $header ) )
$cc = preg_replace('#^cc:(.*)#si', '\1', $header);
elseif( preg_match( '#^bcc:#si', $header ) ) {
$bcc = preg_replace('#^bcc:(.*)#si', '\1', $header);
$header = null;
}
$headers .= ( $header != null )?$header.$eol:null;
}
$headers = rtrim( $headers );
$cc = explode( ', ', $cc );
$bcc = explode( ', ', $bcc );
}
fputs( $socket, "MAIL FROM: <".$mailfrom.">".$eol );
mailserverparse( $socket, '250' );
$to = empty( $to )?'Undisclosed-recipients:;':trim( $to );
if( preg_match( '#[^ ]+\@[^ ]+#', $to ) ) {
fputs( $socket, "RCPT TO: ".$to.$eol );
mailserverparse( $socket, '250' );
}
if( is_array( $bcc ) )
foreach( $bcc as $address ) {
$address = trim( $address );
if( preg_match( '#[^ ]+\@[^ ]+#', $address ) ) {
fputs( $socket, "RCPT TO: ".$address.$eol );
mailserverparse( $socket, '250' );
}
}
if( is_array( $cc ) )
foreach( $cc as $address ) {
$address = trim( $address );
if( preg_match( '#[^ ]+\@[^ ]+#', $address ) ) {
fputs( $socket, "RCPT TO: ".$address.$eol );
mailserverparse( $socket, '250' );
}
}
fputs( $socket, "DATA".$eol );
mailserverparse( $socket, '354' );
fputs( $socket, "Subject: ".$subject.$eol );
fputs( $socket, "To: ".$to.$eol );
fputs( $socket, $headers.$eol.$eol );
fputs( $socket, $message.$eol );
fputs( $socket, ".".$eol );
mailserverparse( $socket, '250' );
fputs( $socket, "QUIT".$eol );
fclose( $socket );
return true;
}
// Funktionsaufruf zum Senden
$headers ="From: ".(($name)?$name:"Absender")." <".$email.">".$eol;
sendmail( $mailfrom, $subject, $comment, $headers );
?>