foreach schleife

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

  • foreach schleife

    Hallo,


    habe folgendes Problem ,

    ich lese mehrere werte aus und explode diese nun möchte ich mit der foreach schleife unten die werte in bilder umwandeln.

    mein Problem ist das er nur die werte die 200 - 219 auslesen soll.
    Doch das amcht er nicht er nimmt alles ab 200 bis zum ende, könnt ihr mir sagen was an meiner schleife falsch ist?



    PHP-Code:
    $werte file ("XXXXX""r") or exit("XXX. Abfragen zur zeit nicht möglich");

      for (
    $i =66$i < (count($werte) -1); $i++)

      {
      
    $werte_explode explode("\t"$werte[$i]); 


        
    $medals_array[$werte_explode[1]]["level"] = $werte_explode[2]; 
        
    $medals_array[$werte_explode[1]]["when"] = $werte_explode[3]; 
        
    $medals_array[$werte_explode[1]]["first"] = $werte_explode[4]; 

      }
     
     
    ?> 



    PHP-Code:
    <?php
    foreach ($medals_array as $key => $value) { if ($key>=200 || $key<=219) { $medals[] = $value;}
    echo 
    "<img src='images/medals/".$key.".gif'>";
    }
    ?>

    danke

  • #2
    Re: foreach schleife

    Original geschrieben von DarksoldierXX
    Doch das amcht er nicht er nimmt alles ab 200 bis zum ende, könnt ihr mir sagen was an meiner schleife falsch ist?
    Auch 237 und 4711 erfüllen die Bedingung, größer als 200 zu sein.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: Re: foreach schleife

      Original geschrieben von wahsaga
      Auch 237 und 4711 erfüllen die Bedingung, größer als 200 zu sein.
      aber hiermit sage ich doch er soll dazwischen alles holen .

      PHP-Code:
      $key>=200 || $key<=219 
      oder was mache ich falsch?

      Kommentar


      • #4
        Re: Re: Re: foreach schleife

        Original geschrieben von DarksoldierXX
        aber hiermit sage ich doch er soll dazwischen alles holen .
        Nein, damit sagst du, dass du alles willst, was mindestens eine der beiden Teilbedingungen erfüllt.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Re: Re: Re: Re: foreach schleife

          Original geschrieben von wahsaga
          Nein, damit sagst du, dass du alles willst, was mindestens eine der beiden Teilbedingungen erfüllt.
          achso, wie mache ich das denn das beide bedingungn erfüllt werden?

          danke schonmal

          Kommentar


          • #6
            Re: Re: Re: Re: Re: foreach schleife

            Original geschrieben von DarksoldierXX
            achso, wie mache ich das denn das beide bedingungn erfüllt werden?
            Du denkst mal ganz scharf nach, was es statt ODER vielleicht noch geben könnte ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Re: Re: Re: Re: Re: Re: foreach schleife

              Original geschrieben von wahsaga
              Du denkst mal ganz scharf nach, was es statt ODER vielleicht noch geben könnte ...

              ja der befehl UND. oder?

              kannst du mir bitte den befehl sagen?

              Kommentar


              • #8
                $key>=200 && $key<=219
                www.vino.la
                www.any-where.de
                www.gospical.de

                Kommentar


                • #9
                  Original geschrieben von mmuell23
                  $key>=200 && $key<=219
                  hallo,


                  das geht leider nicht. er nimtm immer noch die anderen werte mit...


                  hier der link :

                  Klick


                  PHP-Code:
                  <?php
                  foreach ($medals_array as $key => $value) { if ($key>=200 && $key<=2199) { $medals[] = $value;}
                  echo 
                  "<img src='images/medals/".$key.".gif'>";
                  }
                  ?>

                  normalerweise sollte ich das ja über $medals abrufen können da er den key ja dort speichert bzw das ergebnis nur macht er das nicht, habe ich noich einen fehler in meinem code?
                  Zuletzt geändert von DarksoldierXX; 13.03.2007, 17:11.

                  Kommentar


                  • #10
                    Wenn die Ausgabe des Bildes per echo auch noch von der Bedingung abhängig sein soll - dann solltest du sie vielleicht auch in den bedingungsabhängigen Anweisungsblock mit aufnehmen, und nicht dahinterschreiben.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      Original geschrieben von wahsaga
                      Wenn die Ausgabe des Bildes per echo auch noch von der Bedingung abhängig sein soll - dann solltest du sie vielleicht auch in den bedingungsabhängigen Anweisungsblock mit aufnehmen, und nicht dahinterschreiben.
                      das stimmt :-)


                      nun habe ich nur ein kleines problem und zwar wenn der eintrag nicht vorhaden ist dann bringt er diesen Fehler :

                      Warning: Invalid argument supplied for foreach() in /home/p3271/html/bf2142/test.php on line 1285
                      wie kann ich das denn machen das er wenn es keine einträge gibt die passen einfach nicht anzeigt anstatt dem fehler?


                      MFG

                      Kommentar


                      • #12
                        Na dann frag halt vorher ab, ob überhaupt Daten vorliegen ... oder ob's überhaupt ein Array ist ...
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          warum benutzt du eigentlich eine foreach schleife und nicht wie oben for? mit foreach durchläufst du doch immer alle elemente

                          PHP-Code:
                          if ( !empty ( $medals_array ) ) {
                            for ( 
                          $i 200$i 219$i++ ) {
                              
                          $medals [ ] = $medals_array $i ]
                              echo 
                          "<img src='images/medals/"$i ".gif'>";
                            }

                          außen noch ein if das ein leeres array abfängt -> fertig
                          Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                          Kommentar

                          Lädt...
                          X