Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Einträge in IF-Schleife Summieren

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Einträge in IF-Schleife Summieren

    hallo,
    ich benötige wieder mal eure unterstützung.

    ich versuche aus einer bestehenden while-schlife eine IF-Abfrage ein zu bauen die mir jeden eintrag summieren soll bei dem "Tipp" = "Resultat" ist.

    PHP-Code:
        while ($fetch mysql_fetch_assoc($query)) {
                    
                    if (
    $fetch['Tipp'] == $fetch['Resultat']) {
                    echo 
    $sum_win_count = +1;        
            }
                     
    '<td><center>' $fetch['Tipp'] . '</center></td>';
                     
    '<td><center>' $fetch['Resultat'] . '</center></td>';

    wenn ich das so abspeichere summiert er mir die zahlen nicht sondern schreibt für jeden "match" eine 1 hin (also: 111111111)

    ich möchte aber die gesamtzahl aller einträge bei denen die zwei parameter übereinstimmen.

    wie löse ich das am besten?

    ratte

  • #2
    PHP-Code:
    $sum_win_count = +
    heißt:

    Code:
    setze $sum_win_count auf +1
    [URL="http://goo.gl/6Biyf"]Lerne Grundlagen[/URL] | [URL="http://sscce.org/"]Schreibe gute Beispiele[/URL] | [URL="http://goo.gl/f2jR7"]PDO > mysqli > mysql[/URL] | [URL="http://goo.gl/jvfSZ"]Versuch nicht, das Rad neu zu erfinden[/URL] | [URL="http://goo.gl/T2PU5"]Warum $foo[bar] böse ist[/URL] | [URL="http://goo.gl/rrfzO"]SQL Injections[/URL] | [URL="http://goo.gl/Q81WJ"]Hashes sind keine Verschlüsselungen![/URL] | [URL="http://goo.gl/2x0e2"]Dein E-Mail Regex ist falsch[/URL]

    Kommentar


    • #3
      will meinen: Inkrementierung

      PHP-Code:
      $sum_win_count = +1
      wird zu
      PHP-Code:
      $sum_win_count++; 
      bzw.
      PHP-Code:
      echo ++$sum_win_count
      [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

      Kommentar


      • #4
        http://if-schleife.de/

        Wobei mit goto könnte man sogar ne If-Schleife bauen^^

        LG
        https://github.com/Ma27
        Javascript Logic is funny:
        [] + [] => "", [] + {} => object, {} + [] => 0, {} + {} => NaN

        Kommentar


        • #5
          Bitte?

          PHP-Code:
          $a = +1
          ist identisch zu

          PHP-Code:
          $a 1
          Was du meinst wäre

          PHP-Code:
          $a += 1
          [URL="http://goo.gl/6Biyf"]Lerne Grundlagen[/URL] | [URL="http://sscce.org/"]Schreibe gute Beispiele[/URL] | [URL="http://goo.gl/f2jR7"]PDO > mysqli > mysql[/URL] | [URL="http://goo.gl/jvfSZ"]Versuch nicht, das Rad neu zu erfinden[/URL] | [URL="http://goo.gl/T2PU5"]Warum $foo[bar] böse ist[/URL] | [URL="http://goo.gl/rrfzO"]SQL Injections[/URL] | [URL="http://goo.gl/Q81WJ"]Hashes sind keine Verschlüsselungen![/URL] | [URL="http://goo.gl/2x0e2"]Dein E-Mail Regex ist falsch[/URL]

          Kommentar


          • #6
            Lese meinen Beitrag noch mal, Apo
            [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

            Kommentar


            • #7
              Wie die anderen schon schrieben. Du hast im Endeffekt der Zahl nur ein positives Vorzeichen verpasst.

              PHP-Code:
              //inkrementieren
              $zahl++; //immer plus 1

              //oder
              $zahl += 2//immer plus 2 

              Kommentar


              • #8
                echo $sum_win_count = +1;
                '<td><center>' . $fetch['Tipp'] . '</center></td>';
                Du meine Güte, jeder Deiner Beiträge toppt den davor um Längen.
                [COLOR="#F5F5FF"]--[/COLOR]
                [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                [COLOR="#F5F5FF"]
                --[/COLOR]

                Kommentar


                • #9
                  @ma27: ich habe die überschrift leider falsch betitelt, sollte eigentlich IF-Funktion in while-schleife heißen.
                  @apo, tr0y & fuel: danke für die info, aber es haut immer noch nicht hin.
                  hab das jetzt mal so umgeschrieben:
                  PHP-Code:
                  while ($fetch mysql_fetch_assoc($query)) {
                                  
                                  
                                  if (
                  $fetch['Tipp'] == $fetch['Resultat']) {
                                  
                  $sum_win_count 0;
                                  echo 
                  $sum_win_count++; 
                  ich bekomme aber trotzdem einen haufen 0er ausgegeben.

                  wenn ich nur
                  PHP-Code:
                  echo $sum_win_count++; 
                  verwende bekomm ich (irgendwie logisch) ein: "Undefined variable: sum_win_count" zurück.

                  wenn ich das so schreibe:

                  PHP-Code:
                  while ($fetch mysql_fetch_assoc($query)) {
                                  
                                  
                                  if (
                  $fetch['Tipp'] == $fetch['Resultat']) {
                                  
                  $sum_win_count 0;
                                  echo 
                  $sum_win_count+=; 
                  schreibt er mir statt einen haufen 0er einen haufen 1er hin.


                  @nikosch: gut möglich, deswegen schreibe ich auch in jeden 2. post rein dass ich anfänger bin und poste auch nur in die kategorie "Einsteiger".
                  es freut mich dass du so ein php-guru bist, aber anstätt herablassende kommentare bei anfängern zu hinterlassen die versuchen erklärungen zu finden wie man etwas umsetzt könntest du mit deinem know how auch solche leute unterstützen.
                  das ist eben so wenn man etwas neues lernt, aber wenn du einen weg kennst die weisheit mit dem löffel zu fressen dann wäre ich dir sehr dankbar wenn du mir sagen könntest wie man informationen mittels nahrungsaufname zu sich nehmen kann.

                  wenn du keine lust hast mir hilfestellung zu geben dann poste bitte nicht auf meine fragen.

                  danke

                  Kommentar


                  • #10
                    $sum_win_count einmalig VOR der schleife auf 0 setzen.
                    [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

                    Kommentar


                    • #11
                      Und wenn du die Inkrementierung zusammen mit dem echo nutzen willst, musst du die ++$var-Variante nutzen.

                      Kommentar


                      • #12
                        danke dir, aber haut auch nicht hin:

                        wenn ich es so mache:

                        PHP-Code:
                        $sum_win_count 0;
                            while (
                        $fetch mysql_fetch_assoc($query)) {                
                                        
                                        if (
                        $fetch['Tipp'] == $fetch['Resultat']) {
                                        echo 
                        $sum_win_count++;        
                                } 
                        bekomme ich als ausgabe "0123456789101112131415161718192021222324252627282 930".
                        es sollte aber eigentlich 31 rauskommen da es 31 übereinstimmungen in der schleife gibt.

                        :/

                        Kommentar


                        • #13
                          Wenn du die Zahl bei jedem Schleifendurchlauf ausgibst, was erwartest du dann?

                          Du kannst aber auch gleich per SQL filtern und zählen, dann kannst du dir das komplett sparen.

                          PHP-Code:
                          $query mysql_query("SELECT COUNT(*) c FROM something WHERE Tipp = Resultat");
                          $res mysql_fetch_assoc($query);
                          echo 
                          $res['c']; 
                          Nochmal der Hinweis: mysql_ ist veraltet, nutze mysqlii_ oder PDO
                          [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

                          Kommentar


                          • #14
                            Hast du jemals auch nur ein Tutorial in PHP gemacht?
                            [URL="http://goo.gl/6Biyf"]Lerne Grundlagen[/URL] | [URL="http://sscce.org/"]Schreibe gute Beispiele[/URL] | [URL="http://goo.gl/f2jR7"]PDO > mysqli > mysql[/URL] | [URL="http://goo.gl/jvfSZ"]Versuch nicht, das Rad neu zu erfinden[/URL] | [URL="http://goo.gl/T2PU5"]Warum $foo[bar] böse ist[/URL] | [URL="http://goo.gl/rrfzO"]SQL Injections[/URL] | [URL="http://goo.gl/Q81WJ"]Hashes sind keine Verschlüsselungen![/URL] | [URL="http://goo.gl/2x0e2"]Dein E-Mail Regex ist falsch[/URL]

                            Kommentar


                            • #15
                              ... sollte er jedenfalls. Sonst beschäftigt er andere noch eine ganze Weile lang mit so einem Unsinn ...

                              Kommentar

                              Lädt...
                              X