Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP][MYSQL] Wyświetlenie wyniku echo z AVG
Forum PHP.pl > Forum > Przedszkole
WujekLebek
Hejka,

Jak skonstruować echo w php aby wynik z np. AVG(stanowisko.srednia); wyświetlił mi się Srednia 3000 a nie [AVG(stanowisko.srednia)] => 3000 ?

W przypadku wywoływania konkretnych kolumn (bez działań) jest łatwo, czyli echo($x['srednia'].' srednia : '); ale gdy w zapytaniu jest AVG to już tak nie da rady sad.gif
Mam nadzieję, że napisałem zrozumiale o co mi chodzi, jeśli nie to po 17 wrzucę screenshota oraz kod php wraz z zapytaniem, wtedy będzie bardziej "zrozumiale"


Pozdrawiam!
nospor
mysql -> aliasy

. AVG(stanowisko.srednia) as srednia
WujekLebek
Cytat(nospor @ 8.04.2015, 13:59:17 ) *
mysql -> aliasy

. AVG(stanowisko.srednia) as srednia


wtedy wpisze [srednia] => 3000 , a gdy spróbujemy zrobic wtedy echo($x['srednia']); to nie wyswietli w ogole wyniku ;/
nospor
Pokaz cały kod bo pewnie bledy robisz co linijke
WujekLebek
Cytat(nospor @ 8.04.2015, 14:11:34 ) *
Pokaz cały kod bo pewnie bledy robisz co linijke


  1. <html>
  2. <body>
  3. <h3>Zadanie </h3>
  4. <?php
  5. echo "Wujek" . '<br><br>';
  6. $s = mysql_connect ( 'localhost' , 'root' ) or die ( 'padl serwer' );
  7. $s = mysql_select_db ( 'zadanko' ) or die ( 'padla baza' );
  8. print_r ( '<center><h1>Firma Oracle</h1></center>' );
  9. print_r ( '<h2>Lista pracowników Firmy Oracle</h2>' );
  10. print_r ( 'Stanowisko Nazwisko Imie Zarobki' . '<br><br>' );
  11. $wynik = mysql_query ( 'SELECT
  12. firma.Nazwa,
  13. dzial.Nazwa,
  14. pracownik.Nazwisko,
  15. pracownik.Imie,
  16. stanowisko.Wynagrodzenie,
  17. stanowisko.Nazwa
  18. FROM dzial
  19. INNER JOIN firma
  20. ON dzial.id_f = firma.ID
  21. INNER JOIN pracownik
  22. ON pracownik.id_d = dzial.ID
  23. INNER JOIN stanowisko
  24. ON pracownik.id_s = stanowisko.ID
  25. where id_f=2
  26. ORDER BY firma.Nazwa ASC' );
  27. while ( $txt = mysql_fetch_assoc ( $wynik ) )
  28. {
  29. //print_r($txt);
  30. echo ( $txt [ 'Nazwa' ] . ' | ' . $txt [ 'Nazwisko' ] . ' | ' . $txt [ 'Imie' ] . ' | ' . $txt [ 'Wynagrodzenie' ] );
  31. print_r ( '<br>' );
  32. }
  33. print_r ( '<h2>Średnia z zarobków dla danego działu firmy Oracle</h2>' );
  34. $wynik2 = mysql_query ( 'SELECT
  35. firma.Nazwa,
  36. dzial.Nazwa,
  37. AVG(stanowisko.Wynagrodzenie) as srednia
  38. FROM dzial
  39. INNER JOIN firma
  40. ON dzial.id_f = firma.ID
  41. INNER JOIN pracownik
  42. ON pracownik.id_d = dzial.ID
  43. INNER JOIN stanowisko
  44. ON pracownik.id_s = stanowisko.ID
  45. WHERE firma.Nazwa="Oracle"
  46. GROUP BY(dzial.Nazwa)' );
  47. while ( $txt2 = mysql_fetch_assoc ( $wynik2 ) )
  48. {
  49. print_r ( $txt2 );
  50. print_r ( '<br>' );
  51. }
  52. print_r ( '<h2>Średnia wynagrodzenia dla Firmy Oracle</h2>' );
  53. $wynik2 = mysql_query ( 'SELECT
  54. firma.Nazwa,
  55. AVG(stanowisko.Wynagrodzenie) as srednia
  56. FROM dzial
  57. INNER JOIN firma
  58. ON dzial.id_f = firma.ID
  59. INNER JOIN pracownik
  60. ON pracownik.id_d = dzial.ID
  61. INNER JOIN stanowisko
  62. ON pracownik.id_s = stanowisko.ID
  63. WHERE firma.Nazwa="Oracle"
  64. GROUP BY (firma.Nazwa);' );
  65. while ( $txt2 = mysql_fetch_assoc ( $wynik2 ) )
  66. {
  67. print_r ( $txt2 );
  68. }
  69. // ************************************** Microsoft *-**************************************************
  70. print_r ( '<center><h1>Firma Microsoft</h1></center>' );
  71. print_r ( '<h2>Lista pracowników Firmy Microsoft</h2>' );
  72. print_r ( 'Stanowisko|Nazwisko|Imie|Zarobki' . '<br><br>' );
  73. $wynik = mysql_query ( 'SELECT
  74. firma.Nazwa,
  75. dzial.Nazwa,
  76. pracownik.Nazwisko,
  77. pracownik.Imie,
  78. stanowisko.Wynagrodzenie,
  79. stanowisko.Nazwa
  80. FROM dzial
  81. INNER JOIN firma
  82. ON dzial.id_f = firma.ID
  83. INNER JOIN pracownik
  84. ON pracownik.id_d = dzial.ID
  85. INNER JOIN stanowisko
  86. ON pracownik.id_s = stanowisko.ID
  87. where id_f=1
  88. ORDER BY firma.Nazwa ASC' );
  89. while ( $txt = mysql_fetch_assoc ( $wynik ) )
  90. {
  91. //print_r($txt);
  92. echo ( $txt [ 'Nazwa' ] . ' | ' . $txt [ 'Nazwisko' ] . ' | ' . $txt [ 'Imie' ] . ' | ' . $txt [ 'Wynagrodzenie' ] );
  93. print_r ( '<br>' );
  94. }
  95. print_r ( '<h2>Średnia z zarobków dla danego działu Firmy Microsoft</h2>' );
  96. $wynik = mysql_query ( 'SELECT
  97. firma.Nazwa,
  98. dzial.Nazwa,
  99. AVG(stanowisko.Wynagrodzenie) as srednia
  100. FROM dzial
  101. INNER JOIN firma
  102. ON dzial.id_f = firma.ID
  103. INNER JOIN pracownik
  104. ON pracownik.id_d = dzial.ID
  105. INNER JOIN stanowisko
  106. ON pracownik.id_s = stanowisko.ID
  107. WHERE firma.Nazwa="Microsoft"
  108. GROUP BY(dzial.Nazwa)' );
  109. while ( $txt = mysql_fetch_assoc ( $wynik ) )
  110. {
  111. print_r ( $txt );
  112. print_r ( '<br>' );
  113. }
  114. print_r ( '<h2>Średnia wynagrodzenia dla Firmy Microsoft</h2>' );
  115. $wynik2 = mysql_query ( 'SELECT
  116. firma.Nazwa,
  117. AVG(stanowisko.Wynagrodzenie) as srednia
  118. FROM dzial
  119. INNER JOIN firma
  120. ON dzial.id_f = firma.ID
  121. INNER JOIN pracownik
  122. ON pracownik.id_d = dzial.ID
  123. INNER JOIN stanowisko
  124. ON pracownik.id_s = stanowisko.ID
  125. WHERE firma.Nazwa="Microsoft"
  126. GROUP BY (firma.Nazwa);' );
  127. while ( $txt2 = mysql_fetch_assoc ( $wynik2 ) )
  128. {
  129. print_r ( $txt2 );
  130. print_r ( '<br>' );
  131. }
  132. ?>
  133. </body>
  134. </html>
com
wrzuć ten kod jeszcze raz do odpowiednich tagów smile.gif
nospor
facepalmxd.gif
Napisalem wyraźnie AS a ty dajesz JAKO :/
com
i nie jako tylko as w zapytaniach to co podał nospor smile.gif
WujekLebek
Wybacz mi, w pracy blokuje mi pastebina i musze wchodzic przez google tlumacza smile.gif juz poprawione haha.gif
nospor
no jak ty dajesz print_r($txt)
zamiast
echo $txt['srednia'];
to nic dziwnego ze nie dziala
WujekLebek
Cytat(nospor @ 8.04.2015, 14:18:30 ) *
no jak ty dajesz print_r($txt)
zamiast
echo $txt['srednia'];
to nic dziwnego ze nie dziala



teraz jest tam print_r bo ma wypisywać cały rekord tak jak go wyciągnie , przy użyciu echo patrz post nr 2 , ale dla pewności sprawdzę jeszcze raz to w domu i dam znać co i jak.

Cytat
Cytat(nospor @ 8.04.2015, 13:59:17 ) *
mysql -> aliasy

. AVG(stanowisko.srednia) as srednia


wtedy wpisze [srednia] => 3000 , a gdy spróbujemy zrobic wtedy echo($x['srednia']); to nie wyswietli w ogole wyniku




Ok rozwiązałem problem, zamiast
  1. echo($txt2['Nazwa'].' | '.$txt2['srednia']);

wcześniej wpisywałem
  1. echo($txt2['Nazwa'].' | '.$txt['srednia']);


dzięki za pomoc smile.gif
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.