tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
1
ZUGRIFFE
298
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    e-arty e-arty ist offline Mitglied Bronze
    Registriert seit
    Mar 2005
    Beiträge
    48
    Hallo Forum,

    wieder einmal melde ich mich mit folgendem Problem. Ich hab hier ein Script, das ich von einem Freund bekommen hab. Es dient dazu Emails mit Alternativetext und Anhang zu versenden. Soweit klappt das auch, nur wenn ich mit Anhang versende, bekomm ich keine vernüftige Endung zustande, wenn ich eine Variable zum auslesen angebe.
    Vielleicht kennt sich jemand damit aus. Bin da ein bisschen unerfahren, was dieses Header-Dingens angeht. Danke.

    PHP-Code:
    <?php
    function validate_email($email){ 
    if ( !
    eregi("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$"$email) ) { 
    return 
    false
    } else { 
    return 
    true


    function 
    send_MIME_email$email ){ 
    if( empty(
    $email["recip"]) || empty($email["sender"]) || empty($email["subject"]) ) { 
    echo 
    "Empfänger, Absender und/oder Betreff wurde(n) nicht eingegeben!";
    return 
    false

    if( !
    validate_email($email["recip"]) || !validate_email($email["sender"]) ) { 
    echo 
    "Die Email Adressen von Sender und/oder Empfänger ist ungültig!"
    return 
    false

    if( empty(
    $email["content"]["plain"]) && empty($email["content"]["html"]) ) { 
    echo  
    "Es wurde weder Text-Inhalt noch HTML-Inhalt angegeben!";
    return 
    false

    $boundary strtoupper(md5(uniqid(time()))); 
    $mail_header "From: ".$email["sender"]; 
    $mail_header .= "\nMIME-Version: 1.0"
    $mail_header .= "\nContent-Type: multipart/alternative; boundary=".$boundary
    $mail_header .= "\n\nThis is a multi-part message in MIME format"
    if( !empty(
    $email["content"]["plain"]) ){ 
    $mail_header .= "\n--".$boundary
    $mail_header .= "\nContent-Type: text/plain"
    $mail_header .= "\nContent-Transfer-Encoding: 8bit"
    $mail_header .= "\n\n".$email["content"]["plain"]; 

    if( !empty(
    $email["content"]["html"]) ){ 
    $mail_header .= "\n--".$boundary
    $mail_header .= "\nContent-Type: text/html"
    $mail_header .= "\nContent-Transfer-Encoding: 8bit"
    $mail_header .= "\n\n".$email["content"]["html"]; 
    }
    if( !empty(
    $email["attachment"]) ){ 
    $file $email["attachment"]; 
    $filename basename$file ); 
    if( @
    is_file($file) && @is_readable($file) ){ 
    $fp = @fopen$file"rb" ); 
    if( 
    $fp ){ 
    $buffer fread$fpfilesize($file) ); 
    $buffer base64_encode$buffer ); 
    $buffer chunk_split$buffer72 ); 
    fclose($fp); 
    $mail_header .= "\n--".$boundary
    $mail_header .= "\nContent-Type: application/octet-stream; name=\"".$filename."\n\n\"";
    $mail_header .= "\nContent-Transfer-Encoding: base64"
    $mail_header .= "\nContent-Disposition: attachment; filename=\"".$filename."\n\n\""
    $mail_header .= "\n\n".$buffer
    } else { 
    echo 
    "Die Datei konnte nicht geöffnet werden!"


    }  
    if( !@
    mail($email["recip"],$email["subject"],"",$mail_header) ) { 
    return 
    false
    } else { 
    return 
    true


    $MIME_email = array(); 
    $MIME_email["recip"] = "$empfaenger"
    $MIME_email["sender"] = "$absend"
    $MIME_email["subject"] = "$betreff"
    $MIME_email["content"] = array(); 
    $MIME_email["content"]["plain"] = "$msg1"
    $MIME_email["content"]["html"] = "<HTML><HEAD><TITLE>Newsletter</TITLE></HEAD>" 
    ."<BODY bgcolor='#ffffff' text='#000000'>$msg</BODY></HTML>"
    $MIME_email["attachment"] = "$datei"
    if( !
    send_MIME_email$MIME_email ) ){ 
    echo 
    "Email konnte nicht versendet werden!<br><br>";
    } else { 
    echo 
    "Email wurde versandt!<br><br>";

    ?>
    Variable:
    PHP-Code:
    <input type=file name=datei
     

  2. #2
    e-arty e-arty ist offline Mitglied Bronze
    Registriert seit
    Mar 2005
    Beiträge
    48
    *Nochmal anschieb*
    --------------------------------------------------------------------------------------
    Hab mir das mal ausgeben lassen. Vielleicht kann mir jetzt jemand helfen.

    PHP-Code:
    Array
    (
        [
    datei] => Array
            (
                [
    name] => test.txt
                
    [type] => text/plain
                
    [tmp_name] => /srv/www/bla/blubb/phptmp/phpKbeUjX //<--Diese Endung wird übertragen.
                
    [error] => 0
                
    [size] => 200
            
    )


    Und genau da liegt mein Problem, das er mir immer nur den Tempname übermittelt und nicht den eigentlichen Namen der Datei. Hier wäre es jetzt phpKbeUjX .
    Geändert von e-arty (27.04.05 um 11:24 Uhr)
     

Ähnliche Themen

  1. Java Outlook Attachment Problem
    Von ThirdKeeper im Forum Java
    Antworten: 1
    Letzter Beitrag: 18.08.08, 14:15
  2. Problem mit background-attachment: fixed
    Von tim-pong im Forum CSS
    Antworten: 9
    Letzter Beitrag: 02.06.07, 16:27
  3. Problem mit XML Attachment
    Von PHPSESSID im Forum PHP
    Antworten: 1
    Letzter Beitrag: 16.12.04, 16:17
  4. Problem mit PDF Attachment
    Von Radhad im Forum PHP
    Antworten: 2
    Letzter Beitrag: 02.08.04, 10:04
  5. Problem beim mail attachment
    Von realdave im Forum PHP
    Antworten: 4
    Letzter Beitrag: 17.04.03, 01:16