Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme bei der for-Schleife! (Dekrementieren des Startwertes)

Einklappen

Neue Werbung 2019

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

  • Probleme bei der for-Schleife! (Dekrementieren des Startwertes)

    Hallo zusammen,

    wie der Titel bereits sagt, habe ich ein kleines Problem bei einer for-Schleife meines Quellcodes. Ich möchte während des Durchlaufes meiner for-Schleife die Variable "$i" dekrementieren. Diese Variable ist die Zählvariable der Schleife. Wenn ich diese nun in einem else-Block verschachtelt in meiner Schleife dekrementieren möchte, hängt sich das komplette Skript ohne Fehlermeldung auf (nach einiger Zeit: Timeout). Ist das nicht möglich die Zählvariable in der Schleife zu verändern? Oder wo liegt der Fehler?
    Schöne Grüße,
    IwiS


  • #2
    Der Fehler liegt irgendwo im Script welches du uns nicht gezeigt hast.
    Zitat von nikosch
    Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

    Kommentar


    • #3
      Der Fehler liegt nicht "irgendwo" im Skript, sondern genau diese Dekrementierung ist das Problem. Hier, obwohl es nicht hilft, der Skriptausschnitt:
      PHP-Code:
      for($i 0$i $arraylength$i++){
          if(
      $r["champions"][$i]["id"] != 0){
              
      $champion[$i] = mysqli_fetch_assoc(mysqli_query($connection"SELECT `Held` FROM `IDs` WHERE `ID` LIKE '{$r["champions"][$i]["id"]}'"));
              
      $totalchampionkills[$i] = $r["champions"][$i]["stats"]["totalChampionKills"];
              
      $totaldeathspersession[$i] = $r["champions"][$i]["stats"]["totalDeathsPerSession"];
              
      $totalassists[$i] = $r["champions"][$i]["stats"]["totalAssists"];
              
      $totalminionkills[$i] = $r["champions"][$i]["stats"]["totalMinionKills"];
              
      $totalturretskilled[$i] = $r["champions"][$i]["stats"]["totalTurretsKilled"];
              
      $totaldoublekills[$i] = $r["champions"][$i]["stats"]["totalDoubleKills"];
              
      $totaltriplekills[$i] = $r["champions"][$i]["stats"]["totalTripleKills"];
              
      $totalquadrakills[$i] = $r["champions"][$i]["stats"]["totalQuadraKills"];
              
      $totalpentakills[$i] = $r["champions"][$i]["stats"]["totalPentaKills"];
              
      $totalsessionswon[$i] = $r["champions"][$i]["stats"]["totalSessionsWon"];
              
      $totalsessionslost[$i] = $r["champions"][$i]["stats"]["totalSessionsLost"];
              
      $totalsessionsplayed[$i] = $r["champions"][$i]["stats"]["totalSessionsPlayed"];
          }else{
              
      $i--;
              continue;
          }

      Schöne Grüße,
      IwiS

      Kommentar


      • #4
        Das ergibt ja auch keinen Sinn was du da machst. Sobald du einmal im Else-Block landest bist du in ner Endlosschleife.
        Zitat von nikosch
        Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

        Kommentar


        • #5
          Tja, im Moment stehe ich auf dem Schlauch, was ist daran falsch?

          Edit: Jetzt sehe ich es auch, danke!
          Schöne Grüße,
          IwiS

          Kommentar


          • #6
            Probleme mit mysqli Abfrage!

            Aus aktuellem Anlass möchte ich noch gerne ein Problem mit einer mysqli Abfrage gelöst wissen. Die nachfolgende Anfrage sollte eigentlich eine komplette Spalte (bestehend aus ca. 35 Datensätzen) in einen Array schreiben, leider geschieht dies nicht:
            PHP-Code:
            $connection mysqli_connect("****""****""****""****");
            $allPlayedChampions mysqli_fetch_row(mysqli_query($connection"SELECT `Held` FROM `The Dolphin 1337` WHERE 1 ORDER BY `Held` ASC"));
            var_dump($allPlayedChampions);
            mysqli_close($connection); 
            Ergebnis:
            array(1) { [0]=> string(6) "Aatrox" }
            Ich hoffe, ihr könnt mich erneut auf meinen (dummen) Fehler hinweisen!
            Schöne Grüße,
            IwiS

            Kommentar


            • #7
              Code:
              FROM `The Dolphin 1337`
              Dein Ernst?
              PHP-Code:
              mysqli_fetch_row 
              fetcht nur eine Zeile, muss in einer Schleife aufgerufen werden.
              Zitat von nikosch
              Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

              Kommentar


              • #8
                ich auh da auch ne frage, und bin zu faul in die docu zu schauen,
                was heisst denn WHERE 1?

                //update:
                gut, posted keiner was, such ich halt doch im netz:

                http://www.phpro.org/articles/MySQL-...re-1-Myth.html

                ob's stimmt?

                Kommentar


                • #9
                  So, und warum funktioniert folgendes nicht (?):
                  PHP-Code:
                  $connection mysqli_connect("****""****""****""****");
                  $request mysqli_query($connection"SELECT `Held` FROM `The Dolphin 1337` WHERE 1 ORDER BY `Held` ASC");
                  while(
                  $row mysqli_fetch_row($request)){
                      for(
                  $i 0$i 36$i++){
                          
                  $allPlayedChampions[$i] = $row[$i];
                      }
                  }
                  var_dump($allPlayedChampions);
                  mysqli_close($connection); 
                  Ergebnis:
                  array(36) { [0]=> string(5) "Ziggs" [1]=> NULL [2]=> NULL [3]=> NULL [4]=> NULL [5]=> NULL [6]=> NULL [7]=> NULL [8]=> NULL [9]=> NULL [10]=> NULL [11]=> NULL [12]=> NULL [13]=> NULL [14]=> NULL [15]=> NULL [16]=> NULL [17]=> NULL [18]=> NULL [19]=> NULL [20]=> NULL [21]=> NULL [22]=> NULL [23]=> NULL [24]=> NULL [25]=> NULL [26]=> NULL [27]=> NULL [28]=> NULL [29]=> NULL [30]=> NULL [31]=> NULL [32]=> NULL [33]=> NULL [34]=> NULL [35]=> NULL }
                  Schöne Grüße,
                  IwiS

                  Kommentar


                  • #10
                    Zitat von IwiS Beitrag anzeigen
                    So, und warum funktioniert folgendes nicht (?):
                    funktioniert doch, der code macht, was du ihm sagst.

                    tip: du benützt zwei schleifen.

                    Kommentar


                    • #11
                      Mein Ziel ist es allerdings den Array mit allen Zeilen (36) zu füllen. Ich wüsste im Moment nicht, wie ich es sonst lösen sollte.
                      Schöne Grüße,
                      IwiS

                      Kommentar


                      • #12
                        An den Grundlagen hapert es noch ein wenig, meinst du nicht auch?
                        Zitat von nikosch
                        Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

                        Kommentar


                        • #13
                          oder am debuging:
                          PHP-Code:
                          while($row mysqli_fetch_row($request)){
                               
                          var_dump($row);

                          wäre mal ein klassischer ansatz, um rauszufinden, was da passiert.

                          Kommentar


                          • #14
                            Queries in Schleifen absetzen. Örks.
                            --

                            „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

                            Lädt...
                            X