WHERE Befehl mit AND

gisi

Mitglied
Hallo erstmal,

ich programmiere gerade an einem Script für einen Baseball-Verein
Ich habe den Auftrag bekommen ein Script zu schreiben bei dem das Ergebnis eingetragen werden kann, dann der Tabellenstand ermittelt hat.
Soweit so gut funktioniert das auch, aber jetzt muss ich es für mehrere Saisonen machen.

Ich habe eine Spalte erstellt mit dem Namen saison und möchte nun folgendes:

PHP:
if ($punkte_hm_sp1 < punkte_gm_sp1) {

                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$gastteam', saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                 $tabelle['spiele']--;
                                 $tabelle['siege']--;

                                 $prozent=$tabelle[siege]/$tabelle[spiele];
                                 $ergebnis_sql_change = "UPDATE tabelle_rlw SET spiele='".$tabelle['spiele']."', siege='".$tabelle['siege']."', prozent='".$prozent."' WHERE team='$gastteam', saison=$saison";

                                 $update=mysql_query($ergebnis_sql_change);

Mein Problem ist, dass in der Mysql Tabelle "tabelle_rlw" das gleiche Team öfters vertreten ist, allerdings ist die Spalte "saison" verschieden (logisch).
Ich habe nun bei der SELECT abfrage ein AND dazu programmiert, was nicht funktioniert hat
Nun meine Frage, wie kann ich dieses Problem lösen!

Danke im Voraus
 
Wenn es sich hierbei um dein Selectstatement handelt, einfach das Komme durch ein AND ersetzen. Sollte eigentlich funktionieren.

Nur so als Hinweis, solltest du den Text für die Mannschaft / Team auslagern in eine extra Tabelle mit einem Fremdschlüssel dann zu er aktuellen Verknüpft, wegen evtl. Anomalien bei Änderung, Löschung von Teams.
 
Habe jetzt die Kommas mit AND ersetzt allerdings besteht das Problem immernoch.

Das Ergebnis wird immer noch bei beiden Zeilen geändert. Also in beiden Saisonen!

// EDIT

PHP:
if ($punkte_hm_sp1 < punkte_gm_sp1) {

                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$gastteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                 $tabelle['spiele']--;
                                 $tabelle['siege']--;

                                 $prozent=$tabelle[siege]/$tabelle[spiele];
                                 $ergebnis_sql_change = "UPDATE tabelle_rlw SET spiele='".$tabelle['spiele']."', siege='".$tabelle['siege']."', prozent='".$prozent."' WHERE team='$gastteam' AND saison=$saison";

                                 $update=mysql_query($ergebnis_sql_change);







                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$heimteam' AND saison=$saison";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                  $tabelle[spiele]--;
                                  $tabelle[niederlagen]--;
                                  $prozent=$tabelle[siege]/$tabelle[spiele];
                                  mysql_query("UPDATE tabelle_rlw SET spiele='$tabelle[spiele]' AND niederlagen='$tabelle[niederlagen]', prozent='$prozent' WHERE team='$heimteam', saison=$saison");

			}
 
Zuletzt bearbeitet:
Ok jetzt funktionert das mit dem AND!

Nun hab ich aber das Problem, dass er das Ergebnis falsch errechnet
Es ist so, dass 2 Spiele direkt hintereinander sind! Wenn beide Mannschaften, jeweils 1 Spiel gewinnen, dann bekommt eine Mannschaft die Punkte für beide Siege. Ich weiß nicht warum!

Hier mein PHP - Code (sorry aber er muss so lange sein):
PHP:
// Berechnung Spiel 1
                  if ($punkte_hm_sp1 > punkte_gm_sp1) {

                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$heimteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                 $tabelle['spiele']++;
                                 $tabelle['siege']++;

                                 $prozent=$tabelle[siege]/$tabelle[spiele];
                                 $ergebnis_sql_change = "UPDATE tabelle_rlw SET spiele='".$tabelle['spiele']."', siege='".$tabelle['siege']."', prozent='".$prozent."' WHERE team='".$heimteam."' AND saison='$saison'";

                                 $update=mysql_query($ergebnis_sql_change);



                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$gastteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                  $tabelle[spiele]++;
                                  $tabelle[niederlagen]++;
                                  $prozent=$tabelle[siege]/$tabelle[spiele];
                                  mysql_query("UPDATE tabelle_rlw SET spiele='$tabelle[spiele]', niederlagen='$tabelle[niederlagen]', prozent='$prozent' WHERE team='$gastteam' AND saison='$saison'");

			}





                  if ($punkte_hm_sp1 < punkte_gm_sp1) {

                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$gastteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                 $tabelle['spiele']++;
                                 $tabelle['siege']++;

                                 $prozent=$tabelle[siege]/$tabelle[spiele];
                                 $ergebnis_sql_change = "UPDATE tabelle_rlw SET spiele='".$tabelle['spiele']."', siege='".$tabelle['siege']."', prozent='".$prozent."' WHERE team='".$gastteam."' AND saison='$saison'";

                                 $update=mysql_query($ergebnis_sql_change);



                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$heimteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                  $tabelle[spiele]++;
                                  $tabelle[niederlagen]++;
                                  $prozent=$tabelle[siege]/$tabelle[spiele];
                                  mysql_query("UPDATE tabelle_rlw SET spiele='$tabelle[spiele]', niederlagen='$tabelle[niederlagen]', prozent='$prozent' WHERE team='$heimteam' AND saison='$saison'");


        }
        				// Ende Berechnung Spiel 1

        				// Berechnung Spiel 2
                  if ($punkte_hm_sp2 > punkte_gm_sp2) {

                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$heimteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                 $tabelle['spiele']++;
                                 $tabelle['siege']++;

                                 $prozent=$tabelle[siege]/$tabelle[spiele];
                                 $ergebnis_sql_change = "UPDATE tabelle_rlw SET spiele='".$tabelle['spiele']."', siege='".$tabelle['siege']."', prozent='".$prozent."' WHERE team='".$heimteam."' AND saison='$saison'";

                                 $update=mysql_query($ergebnis_sql_change);


                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$gastteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                  $tabelle[spiele]++;
                                  $tabelle[niederlagen]++;
                                  $prozent=$tabelle[siege]/$tabelle[spiele];
                                  mysql_query("UPDATE tabelle_rlw SET spiele='$tabelle[spiele]', niederlagen='$tabelle[niederlagen]', prozent='$prozent' WHERE team='$gastteam' AND saison='$saison'");

			}





                  if ($punkte_hm_sp2 < punkte_gm_sp2) {

                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$gastteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                 $tabelle['spiele']++;
                                 $tabelle['siege']++;

                                 $prozent=$tabelle[siege]/$tabelle[spiele];
                                 $ergebnis_sql_change = "UPDATE tabelle_rlw SET spiele='".$tabelle['spiele']."', siege='".$tabelle['siege']."', prozent='".$prozent."' WHERE team='".$gastteam."' AND saison='$saison'";

                                 $update=mysql_query($ergebnis_sql_change);


                                 $sql="SELECT*FROM tabelle_rlw WHERE team='$heimteam' AND saison='$saison'";
 				$result = mysql_query($sql);
                                 $tabelle=mysql_fetch_array($result);

                                  $tabelle[spiele]++;
                                  $tabelle[niederlagen]++;
                                  $prozent=$tabelle[siege]/$tabelle[spiele];
                                  mysql_query("UPDATE tabelle_rlw SET spiele='$tabelle[spiele]', niederlagen='$tabelle[niederlagen]', prozent='$prozent' WHERE team='$heimteam' AND saison='$saison'");


        }
        				// Ende Berechnung Spiel 2

HILFE Danke Gruß Gisi
 
Zurück