Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Generowanie tabeli z wpisanymi wynikami w odpowiednie miejsca
ghastblood
post
Post #1





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Konstrukcja bazy danych jest następująca w konkurencjach zawodników mam godzinę oraz stanowisko
w ustawieniach pawilonu mam ilosc stanowisk w pawilonie

napisałem taki kodzik
  1. <?php
  2. include "core.php";
  3.  
  4. $sql_wynik = mysql_query("SELECT * FROM pawilony") or die(mysql_error());
  5. $sql_wynik1 = mysql_query("SELECT godzina FROM zawodnik LEFT JOIN konkurencje_zawodnikow ON id_zawodnika = id LEFT JOIN konkurencje ON id_konkurencji = id_konk") or die(mysql_error());
  6.  
  7. $sql_r = mysql_fetch_assoc($sql_wynik);
  8.  
  9.  
  10. while($sql_r1 = mysql_fetch_array($sql_wynik1,MYSQL_ASSOC)){
  11. $tab[] = $sql_r1;
  12. }
  13.  
  14. $stanowiska = $sql_r['ilosc_stanowisk'];
  15.  
  16. for($t=10; $t<=18; $t++){
  17. $godzina[] = $t;
  18. }
  19. echo '<pre>';
  20. var_dump($godzina);
  21.  
  22. echo '<table border="1">';
  23. echo '<tr>';
  24. echo '<td>Godz./Stanowisko</td>';
  25. for($s=1; $s<=$stanowiska; $s++){
  26. echo '<td>'.$s.'</td>';
  27. }
  28. echo '</tr><tr>';
  29. for($g = 10; $g<=18; $g++){
  30. $g = $g.'.00';
  31. echo '<td>'.$g.'</td>';
  32. for( $x = 0, $cnt = count($godzina); $x < $cnt; $x++ ){
  33. if($g == $godzina[$x]){
  34. $sql_wynik = mysql_query("SELECT * FROM zawodnik LEFT JOIN konkurencje_zawodnikow ON id_zawodnika = id
  35. LEFT JOIN konkurencje ON id_konkurencji = id_konk WHERE godzina = ".($g)." && pawilon = '25m'") or die(mysql_error());
  36. while($sql_r = mysql_fetch_assoc($sql_wynik)){
  37. echo '<td>'.$sql_r['nazwisko_zawodnika'].'</td>';
  38. }
  39. }
  40. }
  41.  
  42. echo '</tr><tr>';
  43. }
  44.  


generuje tabele dobrze ale zawodników wpisuje mi jak leci w konkretną godzinę a chciał bym osiągnąć efekt taki jak na obrazku czyli oprócz godziny dla zawodnika żeby był wpisany na odpowiednim stanowisku.

(IMG:http://img24.imageshack.us/img24/125/beznazwy1nl.png)
By ameth69 at 2012-06-08

Naprawdę nikt nie może mi pomóc ?


jestem bliżej niż dalej
  1. <?php
  2. include "core.php";
  3.  
  4. $sql_wynik = mysql_query("SELECT * FROM pawilony") or die(mysql_error());
  5. $sql_r = mysql_fetch_assoc($sql_wynik);
  6. $stanowiska = $sql_r['ilosc_stanowisk'];
  7.  
  8.  
  9.  
  10. echo '<table border="1">';
  11. echo '<tr>';
  12. echo '<td>Godz./Stanowisko</td>';
  13. for($s=1; $s<=7; $s++){
  14. $stanowisko[] = $s;
  15. echo '<td>'.$s.'</td>';
  16. }
  17. echo '</tr><tr>';
  18.  
  19.  
  20.  
  21. for($g = 10; $g<=16; $g++){
  22. $g = $g.'.00';
  23. echo '<td>'.$g.'</td>';
  24. $s = 1;
  25. for( $z = 0, $cnt = count($stanowisko); $z < $cnt; $z++ ){
  26. $sql_wynik1 = mysql_query("SELECT * FROM zawodnik LEFT JOIN konkurencje_zawodnikow ON id_zawodnika = id LEFT JOIN konkurencje ON id_konkurencji = id_konk WHERE pawilon = '25m' && godzina ='$g' && stanowisko = '$s'") or die(mysql_error());
  27. while($sql_r1 = mysql_fetch_assoc($sql_wynik1)){
  28. if($g == $sql_r1['godzina'] && $s == $sql_r1['stanowisko']){
  29. echo '<td>'.$sql_r1['nazwisko_zawodnika'].'</td>';
  30. } else{
  31. echo '<td>&nbsp;</td>';
  32. }
  33. }
  34. $s++;
  35.  
  36. }
  37. echo '</tr><tr>';
  38.  
  39. }
  40. echo '</table>';
  41.  
  42.  
  43. ?>


generuje mi to tabele wpisuje nazwiska ale if w pętli zawsze zwraca pierwszą wartość i nie tworzy mi pustych komórek przez co nazwisko zawodnika nie znajduje się na odpowiednim stanowisku.
może teraz ktoś mi pomoże siedzę nad tym cały dzień.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 06:57