Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Dodawanie wartości pól bazy do siebie
Forum PHP.pl > Forum > Przedszkole
Androsset
Chciałbym policzyć sumę punktów dla wybranego gracza. Tabela wygląda tak:

id | gospodarz | przeciwnik | punkty1 | punkty2
1 | bartek | ajax | 12 | 9 |
2 | marcin | krzys | 15 | 3 |
1 | ajax | bartek | 20 | 15 |

  1. require "conn.php";
  2.  
  3. $sql = "SELECT * FROM fow_data";
  4. $result = mysqli_query($conn,$sql)or die(mysqli_error($conn));
  5. $suma=0;
  6. while($row = mysqli_fetch_array($result)) {
  7. $gospodarz = $row['gospodarz'];
  8. $przeciwnik = $row['przeciwnik'];
  9. $punkty1 = $row['punkty1'];
  10. $punkty2 = $row['punkty2'];
  11. if($gospodarz = 'ajax'){
  12. $suma = $suma + $punkty1;
  13. }elseif ($przeciwnik = 'ajax'){
  14. $suma = $suma + $punkty2;
  15. }
  16.  
  17.  
  18.  
  19. }
  20.  
  21. echo "<tr><td>".$gospodarz."</td><td>".$suma."</td></tr>";
  22.  


Sumuje mi tylko po punkty1 nie uwzględniając warunków. Dla gracza ajax wynik wychodzi 91. Czyli sumuje wszystkie punkty w kolumnie punkty1.

Jestem początkujący mógłby ktoś naprowadzić mnie na rozwiązanie.
viking
Co to ostatnio za wysyp postów z tym problemem.
= oznacza w PHP przypisanie (czyli dla if warunek zawsze spełniony)
== albo === porównywanie wartości
Zatem nie $gospodarz = 'ajax' a $gospodarz == 'ajax'
trueblue
  1. SELECT gracz, SUM(punkty)
  2. FROM(
  3. SELECT gospodarz AS gracz,punkty1 AS punkty
  4. FROM gracz
  5. UNION ALL
  6. SELECT przeciwnik AS gracz,punkty2 AS punkty
  7. FROM gracz
  8. ) AS tmp
  9. GROUP BY gracz
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.