Ankündigung

Einklappen
Keine Ankündigung bisher.

Verzweifele bei ftp_put

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Verzweifele bei ftp_put

    Formular:
    HTML-Code:
    <form action="/interface/Dokumente_Upload.php" method="post" enctype="multipart/form-data" target="_blank">
        <table class="jtable">
            <tr>
                <td>Datei:</td>
                <td><input name="myfile" type="file" size="30" /></td>
            </tr>
            <tr>
                <td>Verzeichnis:</td>
                <td>
                    <select name="verzeichnis" id="Dokumente_Verzeichnis">
                        <option value="Ablehnungen">Ablehnungen</option>
                        <option value="Betreuerausweise">Betreuerausweise</option>
                        <option value="Formulare">Formulare</option>
                        <option value="Genehmigungen">Genehmigungen</option>
                        <option value="Handzeichen">Handzeichen</option>
                        <option value="Krankemldung">Krankmeldung</option>
                        <option value="Leistungsnachweise">Leistungsnachweise</option>
                        <option value="Pflegegrad">Pflegegrad</option>
                        <option value="Pflegemappe">Pflegemappe</option>
                        <option value="Pflegemappe Formulare">Pflegemappe (Formulare)</option>
                        <option value="Sach- und Kombileistung">Sach- und Kombileistung</option>
                        <option value="Sozialamt">Sozialamt</option>
                        <option value="Tourenplane">Tourenpläne</option>
                        <option value="Verhinderungspflege">Verhinderungspflege</option>
                        <option value="Verordnungen">Verordnungen</option>
                        <option value="Verwaltung">Verwaltung</option>
                        <option value="Vertrage">Verträge</option>
                    </select>
                </td>
            </tr>
            <tr>
                <td>Dateiname:</td>
                <td>            
                    <select id="Dokumente_Select_Kunde" name="kunde">
                        <?php echo $kunden; ?>
                    </select>
                </td>
            </tr>
            <tr>
                <td>1. Datum:</td>
                <td><input class="ui-state-default" id="Dokumente_Von" name="von" type="text" /></td>
            </tr>
            <tr>
                <td>2. Datum:</td>
                <td><input class="ui-state-default" id="Dokumente_Bis" name="bis" type="text" /></td>
            </tr>
            <tr>
                <td class="Mittig" colspan="2"><input type="submit" value="Hochladen" /></td>
            </tr>
        </table>
    </form>
    upload.php
    PHP-Code:
    <?php

    function FTP_Datei_Hochladen ($file$verzeichnis$kunde$von$bis$jahr){
    $ftp '<h3><ol>';
    $e1 '<li><span style="color: red;">';
    $e2 '</span></li>';
    $s1 '<li><span style="color: green;">';
    $s2 '</span></li>';

    $ftp_server "###############";
    $benutzername "##############";
    $passwort "################";

    // Die Verbindung herstellen
    $connection_id ftp_connect($ftp_server21);

    // Servertimeout bestimmen
    $timeout ftp_get_option($connection_idFTP_TIMEOUT_SEC);

    // Mit Benutzername und Kennwort anmelden
    $login_result ftp_login($connection_id$benutzername$passwort);

    ftp_pasv($connection_idtrue);

    // überprüfen ob alles gutgegangen ist
        
    if ((!$connection_id)) {
            
    $ftp .= $e1 "Verbindung: fehlgeschlagen!" $e2;
        } else {
            
    $ftp .= $s1 "Verbindung: hergestellt. Timeout:" .$timeout." sek"$s2;
        }
        if ((!
    $login_result)) {
            
    $ftp .= $e1 "Anmeldung fehlgeschlagen!" $e2;
        } else {
            
    $ftp .= $s1 "Anmeldung erfolgreich" $s2;
        }
    // Die aus dem Forumular übergebenen Daten abfragen
    if(!empty($von) && empty($bis)){
        
    $zieldatei $kunde.'-'.$von.'.pdf';
        
    $ftp .= $s1 "Dateiname: " .$zieldatei$s2;
    }
    if(!empty(
    $von) && !empty($bis)){
        
    $zieldatei $kunde.'-'.$von.'-'.$bis.'.pdf';
        
    $ftp .= $s1 "Dateiname: " .$zieldatei$s2;
    }
    if(empty(
    $von) && empty($bis)){
        
    $zieldatei $kunde.'.pdf';
        
    $ftp .= $s1 "Dateinamen: " .$zieldatei$s2;
    }


        if(
    $verzeichnis == "Ablehnungen") {
            
    $address "/5 Jahre/" $jahr "/Ablehnungen/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Betreuerausweise"){
            
    $address ="/Betreuerausweise/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Formulare"){
            
    $address "/Formulare/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Genehmigungen"){
            
    $address "/5 Jahre/" $jahr "/Genehmigungen/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Leistungsnachweise"){
            
    $address "/10 Jahre/" $jahr "/Leistungsnachweise/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Pflegegrad"){
            
    $address "/Pflegegrad/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Pflegemappe"){
            
    $address "/5 Jahre/" $jahr "/Pflegemappe/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Sach- und Kombileistung"){
            
    $address "/Sach- und Kombileistung/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Verhinderungspflege"){
            
    $address "/5 Jahre/" $jahr "/Verhinderungspflege/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Verordnungen"){
            
    $address "/5 Jahre/" $jahr "/Verordnungen/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Verwaltung"){
            
    $address "/Verwaltung/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }
        if(
    $verzeichnis == "Vertrage"){
            
    $address "/Vertrage/";
            
    $ftp .= $s1 "Pfad: " .$address$s2;
        }

    if (
    ftp_put($connection_id$address.$zieldatei$fileFTP_ASCII)) {
        
    $ftp .=$s1 "Status: hochgeladen".$s2;
    } else {
        
    $ftp .= $e1 ."Status: fehlgeschlagen!".$e2;
    }

    // Schließen der Verbindung
    ftp_close($connection_id);
    $ftp .= "</ol></h4>";
    return 
    $ftp;
    }

    $teile explode("."$_POST['von']);
    $jahr $teile[2];
    if (!empty(
    $_POST['bis'])){
        
    $teile explode("."$_POST['bis']);
    $jahr $teile[2];
    }
    if (
    $_FILES['myfile']['error'] == 0){
        echo 
    FTP_Datei_Hochladen($_FILES['myfile']['name'], $_POST['verzeichnis'], $_POST['kunde'], $_POST['von'], $_POST['bis'], $jahr);
    }else{
        echo 
    "Fehler (".$_FILES['myfile']['error'].") beim upload der Datei";
    }
    Ausgabe:
    1. Verbindung: hergestellt. Timeout:90 sek
    2. Anmeldung erfolgreich
    3. Dateiname: HZ-27.01.2018.pdf
    4. Pfad: /5 Jahre/2018/Ablehnungen/
    5. Status: fehlgeschlagen!

    Ich weiss nicht was das Problem sein könnte.
    Wert der php.ini:
    upload_max_filesize 16mM
    memory_limit 128M
    post_max_size 16M
    max_file_uploads 20
    max_execution_time 120

  • #2
    Status: fehlgeschlagen!
    Und was ist die echte Fehlermedung von PHP? https://php-de.github.io/jumpto/faq/#debugging
    The string "()()" is not palindrom but the String "())(" is.

    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Schon ins Error-Log geschaut?

      Kommentar


      • #4
        Ich glaub ich hab da was gefunden:
        AH01071: Got error 'PHP message: PHP Warning: ftp_put(Avis_DAK00648_946073217.pdf): failed to open stream: No such file or directory in ... on line 100\n',

        Kommentar


        • #5
          Tja, den Dateipfad gibts nicht.

          Kommentar


          • #6
            Danke damit kann ich arbeiten

            Kommentar


            • #7
              Das hier sieht auch nicht richtig aus und könnte Probleme bereiten
              PHP-Code:
              ...value="Krankemldung">Krankmeldung</option

              Kommentar


              • #8
                Danke dir, da hab ich mich verschrieben ^^

                Kommentar


                • #9
                  Also irgendwas ist da immer noch faul. Ich habe jetzt ein ganz simples Script das die Datei einfach nur hochladen soll ohne ein Verzeichnis zu wechseln. Aber es kommt immer noch der selbe Fehler. Das es den Dateipfad nicht geben soll...
                  Wenn ich mich mit den Logindaten mit einem FTP Porgamm einlogge komme ich ganz bequem rein und kann auch Datein hochladen ohne probleme...
                  An dem Code kann es ja dann nicht liegen, es muss irgendwas anderes sein...
                  Passive Mode an oder aus ändern nichts.
                  PHP-Code:
                  // file to move:
                  $local_file $_FILES['myfile']['name'];
                  $ftp_path 'test.pdf';

                  // connect to FTP server (port 21)
                  $conn_id ftp_connect($host21) or die ("Cannot connect to host");

                  // send access parameters
                  ftp_login($conn_id$usr$pwd) or die("Cannot login");

                  // turn on passive mode transfers (some servers need this)
                  // ftp_pasv ($conn_id, true);

                  // perform file upload
                  $upload ftp_put($conn_id$ftp_path$local_fileFTP_ASCII);

                  // check upload status:
                  print (!$upload) ? 'Cannot upload' 'Upload complete';
                  print 
                  "\n"

                  Kommentar


                  • #10
                    Zitat von VVoLv3r!n3 Beitrag anzeigen
                    Ich glaub ich hab da was gefunden:
                    AH01071: Got error 'PHP message: PHP Warning: ftp_put(Avis_DAK00648_946073217.pdf): failed to open stream: No such file or directory in ... on line 100\n',
                    Schau mal, dein Skript weist dich darauf hin, dass die lokale Datei nicht gefunden wurde. Versuche mal für den file-Parameter der Funktion FTP_Datei_hochladen $_FILES[myfile][tmp_name]

                    Kommentar


                    • #11
                      Sieh dir mal an wie ein Dateiupload in PHP aufgebaut sein muss:

                      http://php.net/manual/de/features.fi...ost-method.php

                      Auf die generierte temporäre Datei hast du meisten keinen direkten Zugriff, sondern musst diese mit move_uploaded_file() verschieben.

                      Kommentar


                      • #12
                        danke jungs ich hab die ganze zeit das problem am ftp gesucht oO

                        Kommentar


                        • #13
                          Es geht es geht! Vielen Dank für eure HILFE!!!!
                          Kann ich den Thread irgendwie als Erledigt kennzeichen?

                          Kommentar

                          Lädt...
                          X