FDF-Daten verarbeiten

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

  • FDF-Daten verarbeiten

    Hallo.

    Ich habe ein kleines Problem bei der Verarbeitung von FDF-Dateien. Normalerweise sollte das ja mit PHP kein Problem sein (siehe hier: http://de3.php.net/fdf) nur leider funktioniert das ganze nicht. Ich habe das auf oben genannter Seite aufgeführte Beispiel mit einer eigenen FDF-Datei versucht, bekomme aber leider nur folgenden Fehler für fdf_get_value($fdf, "Feldname");

    Warning: fdf_get_value() expects parameter 1 to be resource, boolean given
    Danach kommt für das Schließen der FDF-Datei der Fehler


    fdf_close(): supplied argument is not a valid fdf resource
    Laut phpinfo ist fdftk installiert und enabled.
    Hat jemand eine Ahnung was ich falsch mache? Wäre für jegliche Hilfe dankbar, ich weiß nicht, was da los ist.

    Gruß
    Drauka

  • #2
    ich denke, dass ein klein wenig mehr code ganz hilfreich wäre

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Hat jemand eine Ahnung was ich falsch mache? Wäre für jegliche Hilfe dankbar, ich weiß nicht, was da los ist.
      steht eigentlich alles in der fehlermeldung.

      in $fdf steht besten falles true drin. vielleicht aber auch false. zeig mal die entsprechende zeile.

      Kommentar


      • #4
        Eigentlich ist das schon aufs Wesentliche minimiert:

        PHP-Code:

        <?php
        $fdf 
        fdf_open("test.fdf");

        $name fdf_get_value($fdf"Name");
        echo 
        "Das Feld Name hat den Wert '<B>$name</B>'<BR>";

        fdf_close($fdf);
        ?>
        Er scheint schon ein Problem beim öffnen zu haben, denn ein echo $fdf; brachte keine Rückmeldung.

        Kommentar


        • #5
          dann geh mal davon aus dass fdf_open ein false zurück liefert und

          Kommentar


          • #6
            Schön, ich soll also das verdammte Manual lesen. Wunderbare Antwort. Kannst Du mir helfen, oder weißt Du es selbst nicht?
            Ganz ehrlich, ich würde hier nicht fragen, wenn ich auch nur den blassesten Schimmer hätte, woher der Fehler kommt.

            Kommentar


            • #7
              tzz

              du hast offensichtlich nichtmal überprüft, von welchem typ die rückgabe ist. schonmal was von debugging gehört?

              Also:
              - Rückgabe ist vom Typ?
              - Datei existiert?
              - Inhalt der Datei?

              Mehr ziehe ich dir nicht aus der Nase. Du willst programmieren...

              Kommentar


              • #8
                Original geschrieben von Drauka
                Schön, ich soll also das verdammte Manual lesen. Wunderbare Antwort. Kannst Du mir helfen, oder weißt Du es selbst nicht?
                Er hat dir doch gesagt, was du dir anschauen sollst.
                Die richtigen Schlüsse daraus zu ziehen, wäre wohl erst mal deine Aufgabe.
                Ganz ehrlich, ich würde hier nicht fragen, wenn ich auch nur den blassesten Schimmer hätte, woher der Fehler kommt.
                Du fragst im Moment, weil du nicht mal den blassesten Schimmer von prinzipieller Fehlerbehandlung und -Suche hast.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Sorry, die Verzweiflung spricht aus mir. Ich gelobe Besserung.

                  Also der Typ der Rückgabe ist boolean, der Rückgabewert, wie schon richtig von Dir vermutet, false.

                  Die Datei existiert. Inhalt der Datei:

                  Code:
                  %FDF-1.2
                  %âãÏÓ
                  1 0 obj<</FDF<</Fields[<</T(Einsendegrund)/V/1>><</T(Email)/V(þÿ)>><</T(Fax)/V(þÿ)>>
                  <</T(Fehler1)/V(þÿ)>><</T(Fehler2)/V(þÿ)>><</T(Mobil)/V(þÿ)>>
                  <</T(Name)/V(Alexander Schmidt)>>
                  <</T(Ort)/V(þÿ)>><</T(PLZ)/V(þÿ)>><</T(PN1)/V(þÿ)>>
                  <</T(PN2)/V(þÿ)>><</T(RMA#5FNr)/V(þÿ)>><</T(SKU1)/V(þÿ)>>
                  <</T(SKU2)/V(þÿ)>><</T(SN1)/V(þÿ)>><</T(SN2)/V(þÿ)>><</T(Strasse)/V(þÿ)>>
                  <</T(Telefon)/V(þÿ)>><</T(abschicken)>>
                  <</T(sonstGrund)/V(þÿ)>>]/ID[<21F325CD712A810C2237851E332CE916>
                  <21F325CD712A810C2237851E332CE916>]/F(/F/****.pdf)>>>>
                  endobj
                  trailer
                  <</Root 1 0 R>>
                  %%EOF

                  Kommentar


                  • #10
                    Original geschrieben von Drauka
                    Also der Typ der Rückgabe ist boolean, der Rückgabewert, wie schon richtig von Dir vermutet, false.
                    Also dann - bemühe dich um eine Fehlerbehandlung und -analyse.

                    Auch bei FDF gibt's dafür schliesslich Funktionen.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      OK, ich seh schon. Ohne den nötigen Druck bekomm ich nix gebacken. Also danke, dass Ihr so hart zu mir wart

                      Der Fehler ist "A file system error occurred or the file was not found"

                      Also findet er entweder die Datei nicht, oder er kann sie nicht öffnen.
                      Na dann such ich mal weiter. *seufz*

                      Danke Euch!

                      Kommentar


                      • #12
                        Original geschrieben von Drauka
                        Also findet er entweder die Datei nicht, oder er kann sie nicht öffnen.
                        Da könnte man dann ja erst mal Prüfungen mit file_exists und is_readable vorschalten, um genaueres zu erfahren ...
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          Vielen Dank für den Tip, hab ich natürlich auch prompt getestet. Das Ergebnis verwirrt mich jedoch etwas. Hier mal mein Test-Code:

                          PHP-Code:
                          if (file_exists("test.fdf")) {
                          echo 
                          "File existiert<br>";
                           if (
                          is_readable("test.fdf")) {
                            echo 
                          "Lesen kann man es auch<br>";

                             
                          $fdf fdf_open("test.fdf");
                              if (
                          $fdf) {
                               echo 
                          "is offen, los gehts!";
                              }
                              else {
                               echo 
                          "Fehler:";
                               echo 
                          fdf_error(fdf_errno());
                              }
                            }
                           else {
                            echo 
                          "Kann Datei nicht lesen";
                           }
                          }
                          else {
                           echo 
                          "Datei existiert nicht";

                          Tja, und das bekomm ich zurück:

                          File existiert
                          Lesen kann man es auch
                          Fehler:A file system error occurred or the file was not found

                          Kommentar


                          • #14
                            Nur kurz zur Klärung: hab ich nen Fehler gemacht beim Testen? Falls nicht, hat jemand ne Idee, woran es noch liegen könnte?

                            Vielen Dank.

                            Kommentar


                            • #15
                              Nein, vom Test her ist das OK.

                              Da vermute ich den Fehler eher in den FDF-Funktionen von PHP. Lässt sich leider bei Google auf Anhieb auch nichts brauchbares zu finden.
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X