Ankündigung

Einklappen
Keine Ankündigung bisher.

Dateiabfrage, ich komm nicht weiter

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

  • Dateiabfrage, ich komm nicht weiter

    Hallo in die Runde,
    im Zuge meiner Versuche meine noch bescheidenen php Kenntnisse zu verbessern versuche ich mich an dieser Lösung:

    foreach( file( $db ) as $v ) {
    $d = explode( "|", $v );

    if ( $d[0] == "004")
    echo "<p>$d[1] $d[2] $d[3].<br></p>";
    // alternativ
    // fwrite ($datei, "$d[0] $d[1] $d[2] $d[3]");
    }

    es gelingt mit die gesuchen Werte auszugeben oder (alternativ) in eine Datei zu schreiben, klar die Formel funktioniert halt.

    Aber die ausgegebenen Daten bekomme ich nicht in ein array um sie weiter verarbeiten zu können.

    Beim versuche als Anweisung in der if-Funktion anstelle von

    echo "<b>$d[0]</b>";
    zB
    $ergebnis = array("<b>$d[0]</b>");

    zu verwenden, erhalte ich kein Array.

    Wie bekomme ich den Inhalt der Datei-Abfrage in ein array;
    ...besser noch, wie kann ich es gleich nach bestimmten Werten ($d[x] sortieren.

    Ich freue mich über jede Hilfe!
    Danke, Thomas


  • #2
    Probier es mal mit:

    PHP-Code:
    $ergebnis[0] = $d[0

    Kommentar


    • #3
      Zitat von spaziergänger Beitrag anzeigen
      Hallo in die Runde,
      im Zuge meiner Versuche meine noch bescheidenen php Kenntnisse zu verbessern versuche ich mich an dieser Lösung:

      foreach( file( $db ) as $v ) {
      $d = explode( "|", $v );

      if ( $d[0] == "004")
      echo "<p>$d[1] $d[2] $d[3].<br></p>";
      // alternativ
      // fwrite ($datei, "$d[0] $d[1] $d[2] $d[3]");
      }

      es gelingt mit die gesuchen Werte auszugeben oder (alternativ) in eine Datei zu schreiben, klar die Formel funktioniert halt.

      Aber die ausgegebenen Daten bekomme ich nicht in ein array um sie weiter verarbeiten zu können.
      aber du hast doch schon dein array $d

      Zitat von spaziergänger Beitrag anzeigen
      Beim versuche als Anweisung in der if-Funktion anstelle von

      echo "<b>$d[0]</b>";
      zB
      $ergebnis = array("<b>$d[0]</b>");

      zu verwenden, erhalte ich kein Array.
      ???

      Kommentar


      • #4
        Wie bekomme ich den Inhalt der Datei-Abfrage in ein array;
        Eigentlich machst du genau das mit der Funktion file()
        PHP: file - Manual

        Sortieren kannst du mit
        PHP: array_multisort - Manual oder PHP: usort - Manual hierfür brauchst du allerdings eine eigene Funktion nach der du sortieren willst.

        Solltest du jedoch meinen, dass du die Daten die der Bedingung entsprechen in einem neuen Array haben willst, kannst du das beispielsweise so erledigen:

        PHP-Code:
        foreach( file$db ) as $v ) {
        $d explode"|"$v );

        if (
        $d[0] == "004") {
        $result[] = array('D1' => $d[1],
                               
        'D2' => $d[2],
                               
        'D3' => $d[3]); 
         }


        Kommentar


        • #5
          Danke für Eure schnellen Antworten!

          mit
          $ergebnis[0] = $d[0]
          erhalte ich das Ergebis des Inhalts der letzen Zeile meiner abgefragten Datei.

          Warscheinlich habe ich mein anliegen nicht richtig erläutert. Jedenfalls finde ich die Stelle nicht, auf der ich wohl auf dem Schlauch sehe

          Hier eine andere Darstellung

          Inhalt der abzufragenden Datei
          001 einser
          004 vierer
          003 dreier
          004 vierer2
          007 siebener

          Meine Abfrage nach "004" bringt mir diese Ausgabe
          004 vierer
          004 vierer2

          so weit i.O.

          Diese Ausgabe möchte ich aber so erhalten, dass ich sie weiter verwenden kann. Jetzt geben ich sie aus (echo) oder schreibe sie in eine Datei (fwrite). Was ich nicht kann, ist daraus z.B. eine weitere Selektion (oder sortieren) zu gewinnen.

          Kann es sein, dass ich jedes mal, wenn ich
          004 vierer
          004 vierer2
          erzeugen möchte, das aus einer Datei auslesen muss, in die ich es zuvor geschieben habe?

          Grüße, Thomas

          Kommentar


          • #6
            Sorry, aber das ist doch Unfug. Beschäftige Dich ein paar Tage mit Datenbanken und Du kannst auf diesen ganzen Murx verzichten. Für jede erdenkliche Suchanfrage nach und nach eine neue Datei zu erstellen, kann man nicht ernsthaft als Lösung bezeichnen.
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar


            • #7
              die Ausgabe ist doch völlig egal. lass doch n Zähler mitlaufen und mach aus deinem $d n zweidimensionales Array

              Kommentar

              Lädt...
              X