Ankündigung

Einklappen
Keine Ankündigung bisher.

array auslesen und -werten

Einklappen

Neue Werbung 2019

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

  • array auslesen und -werten

    Hallo werte Fachmenschen...

    Es kam der Tag an dem ich versuche aus einem Array Daten auszulesen.
    In $gase und $geruch (es gibt noch mehr Variable) steht 0 bis 3.
    Jetzt möchte ich gerne die Variablen mit 0 oder die mit 1-3 zählen.
    Also nicht die Inhalte addieren sondern den Inhalt auslesen und nach 0 oder 1-3 sortieren und zählen.

    Ich habe da schon was, es geht aber nicht. Da scheint was Endloses zu sein.

    PHP-Code:
    $gase=$_GET['gase'];
    $geruch=$_GET['geruch'];

    $key array_keys($_GET);
    for(
    $i 0sizeof($_GET); $i++) 
            {
            if (
    $_GET[$key[$i]] == '0')
            {
            
    $ns++;
            }
                else
                {
                
    $zs++;
                }
            } 
    in ns möchte ich z.B. die 0en zählen und in zs die 1-3er

    Da ich eingeschneit bin, habe ich heute Abend zeit

    Gruss Antonius

  • #2
    Und jetzt zeigst Du uns noch den HTML-Code des Formulars.
    Der PHP-Code, der es erzeugt ist jetzt mal nicht so wichtig.

    Und sag uns auf gar keinen Fall, was schief geht.
    Wir wollen alle unbedingt wieder unsere Glaskugeln auspacken.

    Das hättest Du übrigens unter den anderen Thread drunter packen können, in dem Du mit dem Problem angefangen hast.

    Und das alles hättest Du durchaus wissen dürfen. Mit über 160 Beiträgen bist Du ja schon eine Weile hier.


    Ich tipp jetzt mal auf eine Endlosschleife, die von Deiner for-Bedingung kommt.

    PHP-Code:
    <?php
    for($i 0sizeof($_GET); $i++)  
    ?>
    sizeof ist immer true und die Schleife läuft ewig.
    Oder zumindest bis das Zeitlimit zuschlägt.

    So funktioniert eine Schleife:
    PHP-Code:
    <?php
    for($i 0$i sizeof($_GET); $i++)  
    ?>

    Kommentar


    • #3
      Vielen Dank!
      Thanks läuft!!!

      Kommentar


      • #4
        Wenn ich dein Script mal verbessern darf, denn es sieht scheußlich aus:

        PHP-Code:
        <?php
        $ns 
        $zs 0// init
        if (count($_GET) > 0) { // sizeof
          
        foreach ($_GET as $value) { // loop GET vars
            
        if ($value == 0)
              
        $ns++;
            else
              
        $zs++;
          }
        }
        printf("NS: %u
        ZS: %u"
        $ns$zs);
        ?>

        Kommentar


        • #5
          Hallo!

          Besser ist immer gut

          Nur ich hatte den Hochzähler $i auf 1 gesetzt, damit wieder die richtige Zahl der Werte aingezeigt wurde.
          Diese Einstellmöglichkeit habe ich jetzt wo?
          Es werden 16 Werte ausgegeben

          PHP-Code:
          $key array_keys($_GET);
          for(
          $i 1$i sizeof($_GET); $i++)  
          {
              if (
          $_GET[$key[$i]] == '0'
          Das Antonius

          Kommentar


          • #6
            Das funktioniert so nicht.
            Damit überspringst du das erste Element mit Index 0.

            Kommentar


            • #7
              Hallo!

              Bei 15 Werten werden in der Summe 16mal ja oder nein angegen, also die Schleife einmal zuviel durchlaufen ?

              Oder wo entsteht das 1mal?

              Antonius

              Kommentar


              • #8
                Hast Du $ns und $zs überhaupt mal irgendwo auf 0 initialisiert?
                Hast Du oben in Dein Script die Zeile
                error_reporting(E_ALL);
                geschrieben?

                Woher weißt Du, dass es 15 Werte sind? Hast Du $_GET mal mit print_r ausgeben lassen?

                Wenn nicht, dann mach das mal schnell.

                Kommentar


                • #9
                  $ns + $zs = 16

                  Nicht bewertet: 7 Bewertet wurden: 9

                  Kommentar


                  • #10
                    Komm wieder wenn Du auf eine meiner Fragen antworten willst!

                    Kommentar


                    • #11
                      Jetzt ja

                      Mitgezählt wird wohl [submit] => Rechnen

                      Code:
                      Array ( [natur] => 1 [bewaert] => 3 [problem] => 3 [energie] => 3 [radio] => 0 [elekt] => 3 [therm] => 3 [akku] => 0 [micro] => 0 [diff] => 0 [hygro] => 0 [trock] => 0 [sorp] => 0 [gase] => 0 [geruch] => 0 [submit] => Rechnen )

                      Antonius

                      Kommentar


                      • #12
                        Bei 15 Werten werden in der Summe 16mal ja oder nein angegen, also die Schleife einmal zuviel durchlaufen ?

                        Oder wo entsteht das 1mal?
                        Dann einfach mal das 1. auf gut dünken wegzulassen ist aber eine kreative Lösung.
                        PHP-Code:
                        <?php
                        print '<pre>';
                        print_r($_GET);
                        ?>
                        Hilft dir das weiter? Wenn nicht können wir dir mit diesen Informationen auch nicht groß weiterhelfen.

                        Edit: OK, gib dem submit-Button einfach keinen Namen, und schon
                        garnicht submit. Du glaubst nich wie lang du nach dem Fehler suchst,
                        wenn du dann mal document.forms[0].submit() ausführen willst und es
                        nicht klappt

                        Kommentar


                        • #13
                          funzt!

                          Danke

                          Kommentar

                          Lädt...
                          X