Fehler im Mail-skript

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Reaperchef, 23. Februar 2008 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 23. Februar 2008
    Moin,

    hab hier mal n Mail-Skript angefangen zu bauen, aber irgendwie bekomm ich immer ein Rechtefehler.

    PHP:
    <? php
            $to 
    "xxxxxxx@googlemail.com" ;
            
    $name  $_FILES [ "dateifeld" ][ "name" ];
            
    $pfad  "files/ $name " ;
            
    $filename  " $pfad " ;
            
    // Der Mailtext
            
    $mail_content  "Test Zeile1 \n" ;
            
    $mail_content  .=  "Test Zeile2 \n" ;
            
    $mail_content  .=  "Test Zeile3 \n" ;
            
    $mail_content  .=  "Test Zeile4 \n" ;
            
    $mail_content  .=  "Test Zeile5 \n" ;
            
    $mail_content  .=  "Test Zeile6 \n" ;
            
    $mail_content  .=  "Test Zeile7 \n" ;
            
    $mail_content  .=  "Test Zeile8 \n" ;
            
    $mail_content  .=  "Test Zeile9 \n" ;


            

            
    $datei_content  fread ( fopen ( " $filename " , "r" ), filesize ( " $filename " ));
             
    $datei_content  chunk_split ( base64_encode ( $datei_content ));

            

            
    $boundary  strtoupper ( md5 ( uniqid ( time ())));




            

            
    $mail_header  "From: xxxxxx <info@xxxxxx.de>" ;


            

            
    $mail_header  .=  "\nMIME-Version: 1.0" ;
            
    $mail_header  .=  "\nContent-Type: multipart/mixed; boundary= $boundary " ;
            
    $mail_header  .=  "\n\nThis is a multi-part message in MIME format  --  Dies ist eine mehrteilige Nachricht im MIME-Format" ;

            

            
    $mail_header  .=  "\n-- $boundary " ;
            
    $mail_header  .=  "\nContent-Type: text/plain" //$content_type
            
    $mail_header  .=  "\nContent-Transfer-Encoding: 8bit" ;
            
    $mail_header  .=  "\n\n $mail_content " ;
        
            

            
    $mail_header  .=  "\n-- $boundary " ;
            
    $mail_header  .=  "\nContent-Type:  $filename ; name=\" $filename \"" ;
            
            

            
    $mail_header  .=  "\nContent-Transfer-Encoding: base64" ;
            
    $mail_header  .=  "\nContent-Disposition: attachment; filename=\" $filename \"" ;
            
    $mail_header  .=  "\n\n $datei_content " ;

            

            
    $mail_header  .=  "\n-- $boundary --" ;

    if(
    $_POST [ 'Submit' ] ==  true )
    {        
    if(
    move_uploaded_file ( $_FILES [ "dateifeld" ][ "tmp_name" ],  $pfad ))
    {
    if(
    chmod  ( "files/" . $_FILES [ 'dateifeld' ][ 'name' ],  0666 ))
    {
    mail ( $to , $subject , "" , $mail_header );
    }
    }
    }
    ?>
    <form name="form1" method="post" action="<?php  echo  $_SERVER [ 'PHP_SELF' ];  ?>" enctype="multipart/form-data">
    <input name="dateifeld" type="file"><br>
    <input type="submit" name="Submit" value="Senden">
    </form>
    Wenn ich das Skript ausführe, kommt:


    Zeile 19:

    PHP:
    $datei_content  fread ( fopen ( " $filename " , "r" ), filesize ( " $filename " ));
    Hat jemand Hilfe ?

    BW ist sicher.
    MFG Repacher
     
  2. 23. Februar 2008
    AW: Fehler im Mail-skript

    nimm anstatt $_FILES['bla']['name'], $_FILES['bla']['tmp_name']
     
  3. 23. Februar 2008
    AW: Fehler im Mail-skript

    Moin,


    sieht dann so aus:
    PHP:
    <? php
            $to 
    "xxxxxxxxxx@googlemail.com" ;
            
    $name  $_FILES [ "dateifeld" ][ "tmp_name" ];
            
    $pfad  "files/ $name " ;
            
    $filename  " $pfad " ;
            
    // Der Mailtext
            
    $mail_content  "Test Zeile1 \n" ;
            
    $mail_content  .=  "Test Zeile2 \n" ;
            
    $mail_content  .=  "Test Zeile3 \n" ;
            
    $mail_content  .=  "Test Zeile4 \n" ;
            
    $mail_content  .=  "Test Zeile5 \n" ;
            
    $mail_content  .=  "Test Zeile6 \n" ;
            
    $mail_content  .=  "Test Zeile7 \n" ;
            
    $mail_content  .=  "Test Zeile8 \n" ;
            
    $mail_content  .=  "Test Zeile9 \n" ;


            

            
    $datei_content  fread ( fopen ( " $filename " , "r" ), filesize ( " $filename " ));
             
    $datei_content  chunk_split ( base64_encode ( $datei_content ));

            

            
    $boundary  strtoupper ( md5 ( uniqid ( time ())));




            

            
    $mail_header  "From: xxx <info@xxxxxxx.de>" ;


            

            
    $mail_header  .=  "\nMIME-Version: 1.0" ;
            
    $mail_header  .=  "\nContent-Type: multipart/mixed; boundary= $boundary " ;
            
    $mail_header  .=  "\n\nThis is a multi-part message in MIME format  --  Dies ist eine mehrteilige Nachricht im MIME-Format" ;

            

            
    $mail_header  .=  "\n-- $boundary " ;
            
    $mail_header  .=  "\nContent-Type: text/plain" //$content_type
            
    $mail_header  .=  "\nContent-Transfer-Encoding: 8bit" ;
            
    $mail_header  .=  "\n\n $mail_content " ;
        
            

            
    $mail_header  .=  "\n-- $boundary " ;
            
    $mail_header  .=  "\nContent-Type:  $filename ; name=\" $filename \"" ;
            
            

            
    $mail_header  .=  "\nContent-Transfer-Encoding: base64" ;
            
    $mail_header  .=  "\nContent-Disposition: attachment; filename=\" $filename \"" ;
            
    $mail_header  .=  "\n\n $datei_content " ;

            

            
    $mail_header  .=  "\n-- $boundary --" ;

    if(
    $_POST [ 'Submit' ] ==  true )
    {        
    if(
    move_uploaded_file ( $_FILES [ "dateifeld" ][ "tmp_name" ],  $pfad ))
    {
    if(
    chmod  ( "files/" . $_FILES [ 'dateifeld' ][ 'tmp_name' ],  0666 ))
    {
    mail ( $to , $subject , "" , $mail_header );
    }
    }
    }
    ?>
    <form name="form1" method="post" action="<?php  echo  $_SERVER [ 'PHP_SELF' ];  ?>" enctype="multipart/form-data">
    <input name="dateifeld" type="file"><br>
    <input type="submit" name="Submit" value="Senden">
    </form>

    und folgender Fehler kommt beim ausführen:

    MFG
     
  4. 23. Februar 2008
    AW: Fehler im Mail-skript

    aso, hab das move_uploaded_file ned gesehen. klar klappt das nicht. php arbeitet das script von oben nach unten ab. oben willst du den in "files/" verschobenen upload lesen, unten verschiebst ihn erst dahin. denk mal drüber nach

    ps @ Chrisomator (dessen beitrag ich gelöscht hab)
    variablen kann man ohne probleme in " " setzten, die werden da auch interpretiert, jedoch nicht in ' '
     
  5. 23. Februar 2008
    AW: Fehler im Mail-skript

    Variablen in "" ist aber unsauber.

    Wozu braucht die hochgeladene Datei Welt-schreibrechte?
    chmod 664 sollte reichen, dann kannst sie auch im FTP noch loeschen.
     
  6. 24. Februar 2008
    AW: Fehler im Mail-skript

    Okay danke. Ich merke, wenn man übermüdet ist, kommt nichts gutes zustande -.-
     
  7. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.