shit, dass geht noch nicht, das blöde ding

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

  • shit, dass geht noch nicht, das blöde ding

    Hallo!

    Durch eingabe des content durch ein formular, werden die daten in eine txt gespeichert. jeder feldeintrag wird als $var in eine neue zeile der txt gespeichert.

    das problem an dem script, dass ich zum auslesen der variablen aus der txt verwende, ist, dass es nur inhalte ausliest, welche in der 1. zeile stehen. d.h. es wird nur der erste feldeintrag, also jehner der in der ersten zeile steht, ausgegeben.

    PHP-Code:
    <?php
    $f
    =file("proj".$nr."/"."top".$top.".txt");
    parse_str($f[0]);
    echo 
    $var4;
    ?>
    wie muß das script aussehen, damit alle zeilen ausgelesen werden?

    Danke für die Hilfe!

    0816x

  • #2
    PHP-Code:
    <?
    $fcontents = file ('proj".$nr."/"."top".$top.".txt');
    while (list ($line_num, $line) = each ($fcontents)) {
        echo "<b>Line $line_num:</b>; ", htmlspecialchars ($line), "<br>\n";
    }
    ?>

    Kommentar


    • #3
      script geht nicht

      Hallo!

      danke für das script (@ hand), aber es funktioniert nicht ganz so, wie ich es gerne hätte. denn das script liest immer die ganze txt und nicht nur die einzelnen variablen aus und gibt sie an einem stück aus.

      hier nochmals die erklärung, wie ich das genau möchte:

      durch ein formular werden verschiedene inhalte in eine txt gespeichert. z.b. im ersten textfeld wird der name angegeben, im 2 textfeld die adresse. nun werden diese daten in eine txt gespeichert. dem feldeintrag name wird die variable var1 zugeordnet, dem eintrag adresse die variable var2. da die einträge durch 2 verschiedene textfelder eingefügt wurden, stehen sie in der txt, wo sie abgespeichert wurden, in verschiedenen zeilen. in der ersten steht die variable var1, in der zweiten zeile die variable var2.

      wenn ich nun z.b. die var2 mit meinem im ersten beitrag hier im forum gezeigten script einlese, wird der inhalt der var2 nicht angezeigt, bzw kann nicht ausgelesen werden, weil der eintrag in der txt in der 2. zeile steht. keine ahnung warum das so ist. daher suche ich ein script, welches den gesamten inhalt der txt durchgeht, und auch eine variable in der 2. oder 5. zeile findet und ausliest.

      ich hoffe ihr könnt mir helfen.

      mfg

      0816x

      Kommentar


      • #4
        PHP-Code:
        <?php
        $f
        =file("proj".$nr."/"."top".$top.".txt");
        $f explode("\n"$f);
        for(
        $x=0;$x<count($f);$x++) {
        parse_str($f[$x]);
        echo 
        $varXX;
        }
        ?>
        ist es das was du gemeinst hast?
        PHP rulez | ASP suxx =P

        Visit http://www.sourcefactory.net =)

        Metal rul€Z =D

        Der Laie braucht Ordnung, das Genie beherrscht das Chaos!

        Kommentar


        • #5
          nein ... file liefert schon ein Array zurück, das explode ist unnötig.
          mein Sport: mein Frühstück: meine Arbeit:

          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

          Kommentar


          • #6
            dann versteh ich nicht ganz was sein problem ist...
            PHP rulez | ASP suxx =P

            Visit http://www.sourcefactory.net =)

            Metal rul€Z =D

            Der Laie braucht Ordnung, das Genie beherrscht das Chaos!

            Kommentar


            • #7
              mein problem

              das problem ist, dass nur variablen aus der txt ausgelesen werden, die in der 1. zeile stehen. z.b. $var1, $var2, $var3 stehen in der txt in der 1. zeile und werden problemlos ausgelesen. $var4 steht in der zweiten zeile, und wird nicht ausgelesen. wieso, keine ahnung. und dieses problem möchte ich lösen.

              aber es ist sicher auch irgendwie möglich, alles in eine zeile in die txt zu speichern. nur weiß ich nicht wie.

              mein script sieht momentan sie aus. damit werden die inhalte in die txt gespeichert:

              PHP-Code:
              <?php$daten="&var1=$top&var2=$zimmer&var3=$kurzl&var4=$kurzr";
              $db="../pages/wohnungen/proj".$nr."/"."top".$top.".txt";
              $datei= fopen($db,"w+");
              fwrite($datei, $daten);?>
              vielleicht weiß ja jemand ne lösung.

              Kommentar


              • #8
                PHP-Code:
                <?
                $fcontents = file ('proj".$nr."/"."top".$top.".txt');
                while (list ($line_num, $line) = each ($fcontents)) {
                    $AllesInEinerVariable .= $line;
                }
                Print  $AllesInEinerVariable; // oder was Du auch immer damit machen willst.
                ?>

                Kommentar


                • #9
                  naja, das ist

                  auch nicht unbedingt das was ich suche.

                  bei deinem script werden ja alle feldeinträge einfach in eine txt zusammengeworfen, ohne irgendwelche variablennamen zuzuordnen. d.h. ich kann keine einzelnen teile auslesen, sondern nur immer alles.

                  gibt es keine möglichkeit, meinem script oben ergendwie noch was anzuhängen, damit alles in eine zeile geschrieben wird??

                  Kommentar


                  • #10
                    schreib halt alles in eine zeile und benutz ein trennzeichen und dann machste nen explode ?
                    PHP rulez | ASP suxx =P

                    Visit http://www.sourcefactory.net =)

                    Metal rul€Z =D

                    Der Laie braucht Ordnung, das Genie beherrscht das Chaos!

                    Kommentar


                    • #11
                      ich glaube du hast mich falsch verstanden

                      Dier inhalt der txt setzt sich aus mehreren textfeldeinträgen zusammen. und jedem textfeldeintrag wird eine variable zugeordnet. d.h. ich kann nicht alles in eine zeile schreiben.

                      Kommentar


                      • #12
                        Wieso?
                        Du arbeitest einfach mit Trennzeichen. Zwischen 2 Einträge setzt Du z.B. die Zeichenfolge -#- und splittest danach die Zeile mit
                        $f=explode("-#-",$f);
                        wieder auf. Dann hast Du einen array, indem für jeden Textfeldeintrag ein Element steht. Damit kannst Du dann machen was Du willst.
                        Of all things I've lost
                        I miss my mind the most

                        Kommentar


                        • #13
                          geht noch einfacher und sicherer:

                          erst die Variablennamen in ein Array:
                          $vars = array ('variable1', 'variable2', ...);
                          dann setzt du per Schleife eine URL-Query zusammen:
                          $url = array();
                          foreach($vars as $varname)
                          $url[] = "$varname=". rawurlencode($$varname);
                          $zeile = implode('&', $url);
                          und schreibst $zeile in die Datei

                          ausgelesen wird ganz normal
                          und dekodiert mit parse_str
                          mein Sport: mein Frühstück: meine Arbeit:

                          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                          Kommentar

                          Lädt...
                          X