zusammenzählen...

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

  • zusammenzählen...

    Hi ...

    ich rufe in verschiedenen Spalten Nummern aus einer Datenbank auf.

    <? echo $grA31 ?>
    <? echo $grA32 ?>

    wobei A31 und B31 ein Ergebnis ist zB: 3:1

    in einer anderen Spalte rufe ich nochmals ein Ergebnis auf.
    jetzt möchte ich diese Ergebnisse vergleichen

    das Problem für mich ist hier die if else anweisung aufzustellen, da die Nummern aus verschiedenen Reihen kommen aber die selben Parameter haben

    erste Zeile
    $result = mysql_query("select * from $table where username = ergebnis");
    zweite:
    $result = mysql_query("select * from $table_t where username = tip1");

    bei Übereinstimmung soll eine 4 ausgespuckt werden, bei Tendenz richtig 2

    und ganz unten möchte ich diese Punkte dann zusammen zählen

    wie mach ich das?
    Zuletzt geändert von Mistert77; 27.05.2002, 14:36.

  • #2
    Vergleich zweier Spalten in verschiedenen Tabellen:
    SELECT * FROM tabelle1,tabelle2 WHERE tabelle1.ergebnis=tabelle2.tip.

    Und ... ein paar mehr Details wären gut, dann kann ich dir vielleicht auch noch ein paar Tips geben.
    Immer erst mal gucken, ob Benzin im Tank ist ...

    Kommentar


    • #3
      ok mehr hier:

      also ich habe 2 ergebnisse, die ich vergleichen will und dann soll jeweils entschieden werden wie die Punkte vergeben werden.

      erstes Ergebnis bekomme ich so:

      <?php
      $result1 = mysql_query("select * from $table_t where username = 'referenz'");
      $grA11 = mysql_result($result1,0,"grA11");
      $grA12 = mysql_result($result1,0,"grA12");
      echo "$grA11" ;
      echo " : " ;
      echo "$grA12" ;
      ?>

      zweites Ergebnis

      <?php
      $result2 = mysql_query("select * from $table_t where username = 'user1' ");
      $grA11 = mysql_result($result2,0,"grA11");
      $grA12 = mysql_result($result2,0,"grA12");
      echo "$grA11" ;
      echo " : " ;
      echo "$grA12" ;
      ?>

      Bsp: referenz hat das ergebnis 3:1 und user hat ebenfalls 3:1 getippt -> in einer neuen Spalte soll dann stehen 4 Punkte
      oder referenz hat 3:1 , user1 hat 3:2 getippt -> Tendenz richtig also sollen 2 Punkte ausgespuckt werden. Am Ende der Puntke Tabelle sollen alle gegebenen Punkte zusammengezählt werden.

      das wars!

      Kommentar


      • #4
        Als Ansatz gebe ich dir mal ein Beispiel, allerdings mußt du dir die Tendenz selber hinbasteln, da ich nicht weiß, welche Abweichungen du auf beiden Seiten des Ergebnisses als "Tendenz" bezeichnen willst.
        PHP-Code:
        $result mysql_query("SELECT * FROM tabelle1 WHERE username = 'referenz' ");
        $row mysql_fetch_array($result);
        $grA11_ref $row[grA11];
        $grA12_ref $row[grA12];

        $result mysql_query("SELECT * FROM tabelle1 WHERE username = 'user1' ");
        $row mysql_fetch_array($result);
        $grA11_user $row[grA11];
        $grA12_user $row[grA12];

        $punkte 0;
        if (
        $grA11_ref == $grA11_user && $grA12_ref == $grA12_user$punkte 4;
          else if (
        $grA11_ref == $grA11_user or $grA12_ref == $grA12_user$punkte 2// Tendenz: so ähnlich (??)
        echo "Referenz: $grA11_ref:$grA12_ref <br>";
        echo 
        "User: $grA11_user:$grA12_user <br>";
        echo 
        "Punkte: $punkte"
        Immer erst mal gucken, ob Benzin im Tank ist ...

        Kommentar


        • #5
          So hab ich es verwirklicht:

          <?php
          $result = mysql_query("SELECT * FROM $table_t WHERE username = 'referenz' ");
          $row = mysql_fetch_array($result);
          $grE11_ref = $row[grE11];
          $grE12_ref = $row[grE12];

          $result = mysql_query("SELECT * FROM $table_t WHERE username = '$username' ");
          $row = mysql_fetch_array($result);
          $grE11_user = $row[grE11];
          $grE12_user = $row[grE12];
          $punkte2 = 0;
          if ($grE11_ref == $grE11_user && $grE12_ref == $grE12_user) $punkte2 = 4;
          else if ($grE11_ref-$grE12_ref == 0 & $grE11_user-$grE12_user == 0 & $grE11_ref <>NULL) $punkte2 = 2;
          else if ($grE11_ref-$grE12_ref < 0 & $grE11_user-$grE12_user < 0 & $grE11_ref <>NULL) $punkte2 = 2;
          else if ($grE11_ref-$grE12_ref > 0 & $grE11_user-$grE12_user > 0 & $grE11_ref <>NULL) $punkte2 = 2;

          echo "$punkte2";?>

          so.. ich vergebe jetzt immer Punkte1 bis x.. unten zähle ich dann so zusammen

          <?php
          $result_all=$punkte1+$punkte2;
          echo "$result_all" ;
          ?>

          oder hat jemand ne bessere Idee?

          Kommentar


          • #6
            funktioniert klasse!!!

            noch einwas müsste ich wissen...

            wie übergebe ich die Gesamtpunktzahl

            $result_all von meiner Seite "tip1.php" auf eine andere Seite?

            Kommentar


            • #7
              Als Link ginge das so:
              <a href="tip1.php?result_all=<?=$result_all ?>">Link</a>

              Oder innerhalb eines Formulars ohne direktes Eingabefeld:
              <input type=hidden name="result_all" value="<?=$result_all ?>">
              Immer erst mal gucken, ob Benzin im Tank ist ...

              Kommentar


              • #8
                Nein das is nix für mich... ich brauch das ohne Link...

                dann werd ichs wohl in die DB reinschreiben müssen...

                Kommentar


                • #9
                  wie wäre es, wenn du es einer session übergibst?

                  Kommentar

                  Lädt...
                  X