Spielergebnisse auf Tendenz/Gleicheheitprüfen

Alles, was PHP betrifft, kann hier besprochen werden.

Spielergebnisse auf Tendenz/Gleicheheitprüfen

Postby kore » 14. March 2004 13:01

hi,
wie kann ich am besten spielergebnis und spieltipp auf gleichheit oder tendenz prüfen? für das richtige ergebnis ist es leicht spielt ein team spielt 2:1 und der tipp lautete 2:1, dann ist 21 == 21 und es gibt drei punkte.. wie aber stelle ich eine richtige tendenz fest?

z.b. tippt jemand 4:2 und die haben 2:1 gespielt... oder 2:2 gespielt und 1:1 getippt..
sollte dann jeweils 1 punkt geben.. nur wie? ne idee?

ich habe leider keine.. :(

danke für eure hilfe
kore
 
Posts: 5
Joined: 01. March 2004 13:04
Location: Berlin

hi!

Postby H0MER » 14. March 2004 19:18

erst mal testest du ob beide ergebnisse (tipp und tatsächliches ergebnis) gleich sind. wenn das nicht der fall sein sollte versuche folgendes:

du könntest ja in deinem fall einfach 3 verschiedene fälle vergeben!
1=verloren
2=unentschieen
3=gewonnen

du hast zb. den tipp 2:1 und das ergebnis war 3:1.

dann prüfst du im ersten schritt ob 2 größer, kleiner oder gleich 1 ist.
in unserem fall wäre das also fall 3 (2 ist größer als 1)
dann machst du das gleiche für das ergebnis (auch fall 3, da 3 größer als 1).

und dann vergleichst du einfach nur noch die verschiedenen fälle ...
da tipp und ergebinis == 3 :tendenz stimmt.
das gleiche geht dann auch für unentschieden etc.

mfg
H0MER
H0MER
 
Posts: 53
Joined: 11. June 2003 17:30

Postby kore » 14. March 2004 19:20

Habe schon eine Variante, diese hier funktioniert einwandtfrei, vielen Dank.

Code: Select all

<?PHP
   // Das tatsächliche Ergebnis
   $ergebnis = "1:1";

   // Das Ergebnis zerlegen
   $data1 = explode(":", $ergebnis);

   // 1 = Heimsieg, 0 = Unentschieden, 2 = Auswärtssieg
   if ($data1[0] > $data1[1])
     $erg1 = 1;
   else if ($data1[0] == $data1[1])
     $erg1 = 0;
   else
     $erg1 = 2;

   // Der abgegebene Tipp
   $tipp = "1:1";

   // Den Tipp zerlegen
   $data2 = explode(":", $tipp);

   // Auch hier 1 = Heimsieg, 0 = Unentschieden, 2 = Auswärtssieg
   if ($data2[0] > $data2[1])
     $erg2 = 1;
   else if ($data2[0] == $data2[1])
     $erg2 = 0;
   else
     $erg2 = 2;

   // Übereinstimmung des Ergebnisses
   if ($erg1 == $erg2)
   {
      // Stimmen die Zahlen komplett überein, gibt 3 Punkte,
      // sonst stimmt die Tendenz, also gibt es einen Punkt
      if ($data1[0] == $data2[0] && $data1[1] == $data2[1])
        $punkte = 3;
      else
        $punkte = 1;
   }
   else
     $punkte = 0;
     
     echo 'Punkte: '.$punkte;
?>
kore
 
Posts: 5
Joined: 01. March 2004 13:04
Location: Berlin


Return to PHP

Who is online

Users browsing this forum: No registered users and 5 guests