ausgabe einer text datei fehlerhaft

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

  • ausgabe einer text datei fehlerhaft

    hi,
    ich will mir ein Sql Backup als download bares file ausgeben lassen.
    $content ist der fertige insert befehl.
    gebe ich $content per echo aus ist alles chic, mit der folgenden Anweisung
    PHP-Code:
    $myfilename "BUP_".$resultProject[0]['name'].".txt";
    $handle fopen($myfilename"w+");
    fwrite($handle,$content);
    fclose($handle);
    header("Content-type: text/text");
    header("Content-Disposition: attachment; filename=" $myfilename ";");
    unlink($myfilename); 
    werden mir aber die Daten in Form eines Arrays ausgegeben ?!?
    Die Daten kommen zwar aus einem array aber wie gesagt, die ausgabe per echo stimmt.
    Meine Frage:
    ist der abgebildete Code grundsätzlich erstmal ok?
    "I don't want to belong to any club that would accept me as a member."

    Groucho Marx

  • #2
    mit der folgenden Anweisung werden mir aber die Daten in Form eines Arrays ausgegeben ?!?
    Ich wette das ist gelogen und obiger Code gibt NICHTS aus!

    Die Daten kommen zwar aus einem array aber wie gesagt, die ausgabe per echo stimmt.
    Und wo ist dieses Array? Welche Rolle spielt das? Wird das vielleicht auch noch testweise ausgegeben?

    Meine Frage: ist der abgebildete Code grundsätzlich erstmal ok?
    okay, ist relativ. Du hast doch bermerkt, dass sich das gewünschte Ergebnis nicht einstellt. Außerdem ist doch sehr fragwürdig, wofür du eine Datei anlegst, wenn du sie nachher direkt wieder löschst. Ansonsten machst du übrigens gar nichts mit der Datei. Auch das wäre in meinen Augen nicht so ganz okay.

    Kommentar


    • #3
      THX TobiaZ für deine Antwort
      Ich wette das ist gelogen und obiger Code gibt NICHTS aus!
      Wette verloren, eine Datei wird ausgegeben...
      Warum gibt der Code deiner Meinung nach nichts aus?
      Und wo ist dieses Array? Welche Rolle spielt das? Wird das vielleicht auch noch testweise ausgegeben?
      da meine abfragen aus mehreren Teilen bestehen hatte ich mir erstmal ein Array gebaut...
      PHP-Code:
      // auszug aus dem Script
      $insertProjectuser[$i] .= ") VALUES (";
              
      $insertProjectuser[$i] .= $resultProjectuser[$i]['id'].", ";
              
      $insertProjectuser[$i] .= $resultProjectuser[$i]['projectid'].", ";
              
      $insertProjectuser[$i] .= $resultProjectuser[$i]['userid'].", ";
              
      $insertProjectuser[$i] .= "'".$resultProjectuser[$i]['subscribed']."'";
              
      $insertProjectuser[$i] .= ")";
              
      $content .= $insertProjectuser[$i]."\n"
      Schon mehrmals geschaut aber alle Kontroll ausgaben sind auskommentiert

      Außerdem ist doch sehr fragwürdig, wofür du eine Datei anlegst, wenn du sie nachher direkt wieder löschst. Ansonsten machst du übrigens gar nichts mit der Datei. Auch das wäre in meinen Augen nicht so ganz okay.
      Ich will teile einer DB archivieren - also mir die relevanten Teile in eine .txt datei schreiben, zuschicken und speichern.

      wenn du eine elegantere Lösung weißt - ich bin ganz Ohr (und Auge)
      "I don't want to belong to any club that would accept me as a member."

      Groucho Marx

      Kommentar


      • #4
        Wette verloren, eine Datei wird ausgegeben...
        Warum gibt der Code deiner Meinung nach nichts aus
        Weil ich da nichts sehe, was eine Ausgabe verursachen könnte. Vielleicht zeigst du es mir?

        da meine abfragen aus mehreren Teilen bestehen hatte ich mir erstmal ein Array gebaut...
        Der Sinn des Arrays erschließt sich mir hier nicht, aber ist ja auch nur nen Auszug, daher irrelevant.

        Ich will teile einer DB archivieren - also mir die relevanten Teile in eine .txt datei schreiben, zuschicken und speichern.
        Wenn du schreibst "speichern", warum löschst du sie dann?

        wenn du eine elegantere Lösung weißt - ich bin ganz Ohr (und Auge)
        naja, wenn ich eine Datei speichern will, würde ich sie nicht löschen. Und wenn ich den Inhalt ausgeben wollte, würde ich eine Ausgabe machen...

        Kümmern wir uns also erstmal um die Stelle mit der Ausgabe.

        OffTopic:
        und was bekomme ich, wenn es doch ein sau dummer Fehler ist?

        Kommentar


        • #5
          und was bekomme ich, wenn es doch ein sau dummer Fehler ist?
          ein Kölsch? das ist fies - ich weiß ja ooch dass das mit sicherheit ein dummer Fehler ist....
          Weil ich da nichts sehe, was eine Ausgabe verursachen könnte.
          vielleicht störst du dich an dem Wort "Ausgabe" - ich will eine Datei erzeugen, die der Browser zum Downloaden anbietet und die dann lokal gespeichert werden kann
          "I don't want to belong to any club that would accept me as a member."

          Groucho Marx

          Kommentar


          • #6
            vielleicht störst du dich an dem Wort "Ausgabe" - ich will eine Datei erzeugen, die der Browser zum Downloaden anbietet und die dann lokal gespeichert werden kann
            Nö an dem Wort störe ich mich nicht.

            Aber damit die Daten (der Inhalt der Datei) als Download zum User geschickt werden, müssen sie ja auch irgendwo "ausgegeben" (gesendet) werden.

            Ich versuch es mal anders:

            Wie soll der User deiner Meinung nach an die Datei kommen, wenn du sie kurzzeitig auf deinem Webspace speicherst und unmittelbar danach wieder löschst? Sag mir wie?

            PS: Ich würde sagen, das Kölsch darfst du mir zu kommen lassen, denn das ist wirklich "dumm".

            Kommentar


            • #7
              Wie soll der User deiner Meinung nach an die Datei kommen, wenn du sie kurzzeitig auf deinem Webspace speicherst und unmittelbar danach wieder löschst? Sag mir wie?
              Verstehe nicht was du meinst:
              PHP-Code:
              $filename "BUP_".$resultProject[0]['name'].".txt"//der File name
              $handle fopen($filename"w+"); //erzeuge eine Datei
              fwrite($handle,$content); //schreibe die Daten rein
              fclose($handle); //Schließe die Datei

              header("Content-type: text/text");
              header("Content-Disposition: attachment; filename=".$filename);
              // Präsentiere die Datei dem User als File Download
              unlink($filename); // lösche die Datei 
              hatte mir den grundsätzlichen Code hier im Forums Archive besorgt:
              http://www.php-resource.de/forum/sho...d/t-49369.html
              "I don't want to belong to any club that would accept me as a member."

              Groucho Marx

              Kommentar


              • #8
                Verstehe nicht was du meinst:
                PHP-Code:
                unlink($filename); // lösche die Datei 
                das.

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

                Kommentar


                • #9
                  // Präsentiere die Datei dem User als File Download
                  Super!

                  Was soll das denn bringen? Wenn du es kommentierst, solltest du es auch tun!

                  Du musst die Datei/Daten auch an den Klient senden, ansonsten kann da nichts ankommen.

                  hatte mir den grundsätzlichen Code hier im Forums Archive besorgt:
                  http://www.php-resource.de/forum/sh...ad/t-49369.html
                  In Dem Falle wäre stupides kopieren ausnahmsweise mal erfolgreicher gewesen. Da wird nämlich eine Ausgabe erzeugt, ganz im Gegensatz zu deinem Fall...

                  OffTopic:
                  Und die temporäre Datei brauchst du eigentlich immer noch nicht...

                  Kommentar


                  • #10
                    ok - die Antwort von firstlord18 im erwähnten Post hatte mich auf den falschen Weg gebracht....
                    "I don't want to belong to any club that would accept me as a member."

                    Groucho Marx

                    Kommentar


                    • #11
                      Jetzt fluppts?

                      Da wurde doch eigentlich nur gesagt, dass die Datei wieder gelöscht werden soll. Aber wie gesagt, es ist nicht notwendig die Datei überhaupt zu erstellen.

                      Einen Content-Type text/text gibt es AFAIK bis her nicht.

                      Kommentar


                      • #12

                        yeah - thx
                        hatte header("Content-Disposition: attachment; filename=".$filename); so verstanden das damit die Datei gesendet wird .....
                        Aber wie gesagt, es ist nicht notwendig die Datei überhaupt zu erstellen.
                        wie würdest du die daten ($content) abschicken?
                        bzw. mit welchen header()?

                        p.s.: es fehlte ein:
                        readfile($filename);
                        "I don't want to belong to any club that would accept me as a member."

                        Groucho Marx

                        Kommentar


                        • #13
                          hatte header("Content-Disposition: attachment; filename=".$filename); so verstanden das damit die Datei gesendet wird .....
                          Manual spricht Bände: header

                          wie würdest du die daten ($content) abschicken?
                          echo $content; ?

                          bzw. mit welchen header()?
                          Der unterscheidet sich natürlich nicht! Sind doch die gleichen Daten, die gesendet werden.

                          Kommentar


                          • #14
                            das kommt davon wenn man sich nur ein Beispiel anschaut
                            THX - hast ein Kölsch gut wenn ich in den Pott komme (oder du nach Berlin)
                            "I don't want to belong to any club that would accept me as a member."

                            Groucho Marx

                            Kommentar


                            • #15
                              wenn ich in den Pott komme
                              OffTopic:
                              mönchengladbach == pott? ihr berliner

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

                              Kommentar

                              Lädt...
                              X