Anleitung | Anhänge per Email via Flash / PHP versenden

Dieses Thema im Forum "Flash and Actionscript" wurde erstellt von sevY, 13.07.2004.

  1. sevY

    sevY Thread Starter Gast

    Hi,
    hier eine Anleitung wie man Dateien via Flash & PHP verschicken kann.

    Variablen können beliebig aus Flash weitergegeben werden, ihr müsst euch dann nur das Script anpassen.

    Anwendungsbeispiel:
    Via PHP ein Verzeichnis auslesen, Daten in Flash einlese und eine Combobox generieren. Dann dort die gewünschte Datei auswählen und zuschicken lassen. So kann man zb. ein bequemen Onlineversand für Dokumente erstellen. In der mail.php könnte man dann noch Infos über den User in einer MySQL DB loggen, um später Downloadstatistiken etc. zu generieren… lasst mich wissen was ihr daraus macht.


    PHP:
    <?php
    $file
    ="flashmailer.zip";
    $from="message@in-a-bottle.com";
    $designation="Message In a Bottle";
    $recipient=utf8_decode($_POST['var_email']);
    $boundary=strtoupper(md5(uniqid(time())));
    $mail_header .= "From:$designation <$from>\r\n";
    $mail_header .= "MIME-Version: 1.0";
    $mail_header .= "\r\nContent-Type: multipart/mixed; boundary=$boundary";
    $mail_header .= "\r\n--$boundary";
    $mail_header .= "\r\nContent-Type: text/plain";
    $mail_header .= "\r\nContent-Transfer-Encoding: 8bit";
    $file_content=fread(fopen($file,"r"),filesize($file));
    $file_content=chunk_split(base64_encode($file_content));
    $mail_header .= "\r\n--$boundary";
    $mail_header .= "\r\nContent-Type: application/octetstream; name=\"$file\"";
    $mail_header .= "\r\nContent-Transfer-Encoding: base64";
    $mail_header .= "\r\nContent-Disposition: attachment; filename=\"$file\"";
    $mail_header .= "\r\n$file_content";
    $mail_header .= "\r\n--$boundary--";
    if(
    mail($recipient,"Flashmailer Sources","",$mail_header))
        {
        echo
    '&status=sent';
        }
    ?>
    PHP:
    //Actionscript 1
    MovieClip.prototype.sendmail=function(useradress)
        {
        
    _root.status.text='Bitte warten...';
        var 
    adressError=function(x)
            {
            var 
    badtype=[' '];
            if (
    x.indexOf('@')>&& x.lastIndexOf('.')>&& x.lastIndexOf('.')-!== x.indexOf('@') && x.length<x.lastIndexOf('.')+&& x.length>x.lastIndexOf('.')+2)
                {
                for (var 
    i=0i<badtype.lengthi++)
                    {
                    if (
    x.indexOf(badtype[i])>0)
                        {
                        return 
    true;
                        }
                    }
                }
            else
                {
                return 
    true;
                }
            };
        if (!
    adressError(useradress))
            { 
            var 
    sender=new LoadVars()
            
    sender.object=this;
            
    sender.var_email=useradress;         
            
    sender.sendAndLoad('mail.php'sender'POST');     
            
    sender.onLoad=function(success)
                {
                if(
    success)
                    {
                    if(
    this.status=='sent')
                        {
                        
    _root.status.text='Email erfolgreich verschickt';
                        
    _root.input.text='';
                        
    delete this.object['sender'];
                        }
                    }
                };
            }
        else
            {         
            
    _root.status.text='Emailadresse inkorrekt';
            }
        };
    Ist getestet und funktioniert.

    Entweder lasst ihr euch jetzt den Stuff direkt zuschicken oder ihr ladet Ihn euch direkt hier als Anhang herunter.

    Liebe Grüße

    Yves
     
    Zuletzt von einem Moderator bearbeitet: 16.07.2004
Die Seite wird geladen...

Diese Seite empfehlen