Community
    • Categories
    • Recent
    • Popular
    • Users
    • Search
    • Register
    • Login

    Manuelles Eintragen von Dateien

    Scheduled Pinned Locked Moved Betrieb
    9 Posts 2 Posters 4.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ? This user is from outside of this forum
      Guest
      last edited by

      Hallo.

      Nachdem der Upload von Dateien nur bis ungefähr 1 MB Größe zuverlässig funktioniert und darüber hinaus langsam und deshalb zeitraubend ist, möchte ich die notwendigen Dateien (vornehmlich Manuals und andere Dokus) per FTP hochladen und dann zu Fuss in der Datenbank verankern.

      Das scheitert aber wohl an der Checksum, die vom System ja nur bei einem Upload generiert und gespeichert wird. Wie kann ich es trotzdem so machen?

      dpetereit

      1 Reply Last reply Reply Quote 0
      • ? This user is from outside of this forum
        Guest
        last edited by

        Nachtrag:

        Im Übrigen kommt bei mindestens jeder zweiten Datei der Fehler:

        Fatal error: Maximum execution time of 30 seconds exceeded in D:\sites\m3it\roels-partner\modules\documents\index.php on line 2

        Daher Zusatzfrage und Anregung: Wo kann ich den Wert hochsetzen? Vernünftig wäre eine Aktivitätsanzeige beim Upload, die einen erkennen lässt, dass überhaupt noch was sinnvolles geschieht.

        Wichtig a ber weiterhin: Kann ich Dateien auch manuell eintragen??

        dpetereit

        1 Reply Last reply Reply Quote 0
        • jknuthJ Offline
          jknuth
          last edited by

          @dpetereit2:

          Nachtrag:

          Im Übrigen kommt bei mindestens jeder zweiten Datei der Fehler:

          Fatal error: Maximum execution time of 30 seconds exceeded in D:\sites\m3it\roels-partner\modules\documents\index.php on line 2

          Daher Zusatzfrage und Anregung: Wo kann ich den Wert hochsetzen? Vernünftig wäre eine Aktivitätsanzeige beim Upload, die einen erkennen lässt, dass überhaupt noch was sinnvolles geschieht.

          Wichtig a ber weiterhin: Kann ich Dateien auch manuell eintragen??

          dpetereit

          das mit dem timeout ist ein setting in deinem php.
          es gibt in der php.ini 3 settings die den upload betreffen:

          post_max_size = 8M
          
          upload_max_filesize = 2M
          
          max_execution_time = 30
          
          

          die max_execution_time beschränkt die dauer die der uplaod maximal dauern darf. setzt den wert einmal auf 60 , oder wenn das nicht reicht noch höher.
          die beiden anderen werte geben die maximalte dateigröße an, die upgeloaded werden darf . in diesem beispiel wäre das 2MB. wichtig ist das wenn du upload_max_filesize hochsetzt du post_max_size um die gleichen wert mit hochsetzt . also z.b.

          post_max_size = 10M
          
          upload_max_filesize = 4M
          

          würde einen dateiupload von 4MB erlauben

          grüße

          1 Reply Last reply Reply Quote 0
          • ? This user is from outside of this forum
            Guest
            last edited by

            Änderungen gem. jknuth durchgeführt: Bringt nix.

            Frage nach manueller Eintragemöglichkeit daher umso akuter. Per FTP habe ich den ganzen Kram nämlich schon lange hochgeladen….

            :!: :!: :!: :!: :!: :!: :!: :!: :!:

            1 Reply Last reply Reply Quote 0
            • ? This user is from outside of this forum
              Guest
              last edited by

              Hi,

              die Tabelle mod_documents in der Datenbank doit beinhaltet die ganzen Dateien. Als Typ muss der MIME Type mit derPHP-Funktion mime_get_content_type() erfasst werden, die Checksum ist der MD5-Hash des binären Dateiinhaltes, zu erfassen mit dem PHP-Funktion md5 bzw. SQL-Funktion MD5. Unter anderen Scriptsprachen sind sicherlich auch gleichwertige Funktionen vorhanden, z.B. in Perl oder als Shellskript. Eine Beispieleintragung wäre:

              INSERT INTO doit.mod_documents VALUES('%', 'der_dateiname', [hier die dateigröße], [mime-content-type], [MD5-Checksumme]);
              
              1 Reply Last reply Reply Quote 0
              • ? This user is from outside of this forum
                Guest
                last edited by

                Hallo aw.

                Da will mich aber einer veräppeln, wa? Die Tabelle enthält nicht die ganze Datei. Wär ja technisch auch gar nicht möglich. Die Dateien werden im Pfad
                \i-doit\modules\documents abgelegt. Ich habe auch nicht gefunden, wo man das ändern könnte. Ist ja auch unnötig.

                So. Jetzt kann es doch kein Problem sein, schlicht die Pfade in der Datenbank zu führen, um die Verlinkung zu selbigen aus anderen Tabellen sicher zu stellen. Was soll das Thema mit der MD5-Checksumme? Wofür soll das gut sein?

                dpetereit

                1 Reply Last reply Reply Quote 0
                • ? This user is from outside of this forum
                  Guest
                  last edited by

                  Nachtrag:

                  Und wofür muss innerhalb der DB der Mime-Type gespeichert werden?

                  1 Reply Last reply Reply Quote 0
                  • ? This user is from outside of this forum
                    Guest
                    last edited by

                    Da will mich aber einer veräppeln, wa? Die Tabelle enthält nicht die ganze Datei. Wär ja technisch auch gar nicht möglich. Die Dateien werden im Pfad
                    \i-doit\modules\documents abgelegt. Ich habe auch nicht gefunden, wo man das ändern könnte. Ist ja auch unnötig.

                    Ich veräppel hier sicherlich niemanden.

                    Nein, enthält sie nicht, sondern nur den Namen der Datei. Der Name der Datei, der in dem documents-Verzeichnis genutzt werden muss, hat folgende Syntax:

                    ID_dateiname
                    

                    Die ID ist dabei die ID des Datensatzes in der mod_documents-Tabelle.

                    also z.B.

                    1_text1.txt
                    
                    2_bedienungsanleitung.pdf
                    

                    So. Jetzt kann es doch kein Problem sein, schlicht die Pfade in der Datenbank zu führen, um die Verlinkung zu selbigen aus anderen Tabellen sicher zu stellen. Was soll das Thema mit der MD5-Checksumme? Wofür soll das gut sein?

                    Mit Checksummen kann man die Datenintegrität sicherstellen, ein einfaches Verfahren einer Checksumme wäre z.B. die Quersumme mehrerer Ziffern.

                    Der MIME-Type bestimmt den Typ der Datei, da dieser an der Dateiendung nicht genau auszumachen ist. Wir wollten z.B. einen eigenen Viewer bauen, der je nach Typ in einen anderen Ansichtsmodus geht. Bilder würden halt in einem eigenen i-doIT Fenster angezeigt werden, außerdem könnte man an Dateien mit einem bestimmten Typ externe Scripte aufhängen, die z.B. die PDFs durchparsen und die Keywords in einem Dictionary hinterlegen, um diese für eine bessere Suche zu nutzen.

                    1 Reply Last reply Reply Quote 0
                    • ? This user is from outside of this forum
                      Guest
                      last edited by

                      Hallo aw.

                      Super Ideen. Aber sollte nicht erstmal die Grundfunktionalität sauber stehen, bevor man einen softwaretechnischen Potsdamer Platz ausbaggert?

                      dpetereit

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post