• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

mysql bład przy zapytaniu

Aruba Cloud - Virtual Private Server VPS
0 głosów
576 wizyt
pytanie zadane 22 stycznia 2023 w SQL, bazy danych przez gatka84 Bywalec (2,150 p.)
edycja 22 stycznia 2023 przez gatka84

Witajcie chce zrobić wykres graficzny z pobranych danych ale przy próbie pobrania w php wywala błąd i nie bardzo wiem czemu :/ więc dane w tabeli próbuje wyświetlić i ... zadaje pytanie w sql w mysql

SELECT SUM(rgb_z * 55), MONTH(start_datetime) FROM schedule_list GROUP BY MONTH(start_datetime)

i jeśli tak podam w sql w mysql to wyświetli mi

SUM(rgb_z * 55) 	MONTH(start_datetime) 	
10241 	10
6847.5 	11
1485 	12

a w php daje tak

$query ="SELECT SUM(rgb_z * 55), MONTH(start_datetime) FROM schedule_list GROUP BY MONTH(start_datetime)";
$query_run = mysqli_query($con, $query);
if (mysqli_num_rows($query_run) > 0) {
  foreach ($query_run as $data) {
?>
<tr>
<td class="align-middle text-center">
  <p class="text-xs font-weight-bold mb-0"><?= $data['rgb_z'] ?></p>
  <p class="text-xs font-weight-bold mb-0"><?= $data['start_datetime'] ?></p>
</td>
</tr>

i wywala błąd i przy

var_dump($query_run);

dostaje

object(mysqli_result)#2 (5) { ["current_field"]=> int(0) ["field_count"]=> int(2) ["lengths"]=> NULL ["num_rows"]=> int(3) ["type"]=> int(0) } 

i nie bardzo wiem czemu z sql podaje prawidłowo a w php już nie :(

Będę wdzięczna za podpowiedzi.

natomiast przy takim zapytaniu

SELECT YEAR(start_datetime) AS year, MONTH(start_datetime) AS month, SUM(rgb_z *55) AS rgb_z FROM schedule_list GROUP BY YEAR(start_datetime), MONTH(start_datetime) ORDER BY YEAR(start_datetime),
MONTH(start_datetime)

wywala mi tylko błąd odnośnie daty tzn

10241
Notice: Undefined index: 'YEAR(start_datetime)' in C:\xampp\htdocs\App-mix\admin\ment.php on line 85
6847.5
Notice: Undefined index: 'YEAR(start_datetime)' in C:\xampp\htdocs\App-mix\admin\ment.php on line 85
1485
Notice: Undefined index: 'YEAR(start_datetime)' in C:\xampp\htdocs\App-mix\admin\ment.php on line 85

i jak podać w zmiennej $data zadać zapytanie o rok miesiąc żeby uzyskać taki wynik jak w sql tj

SUM(rgb_z * 55) 	MONTH(start_datetime) 	
10241 	10
6847.5 	11
1485 	12

gdzie poda dane SUM(rgb_z * 55) dla roku i miesiąca ??

1 odpowiedź

0 głosów
odpowiedź 22 stycznia 2023 przez gatka84 Bywalec (2,150 p.)

już znalazłam odpowiedz tzn

$query ="SELECT YEAR(start_datetime) AS year, MONTH(start_datetime) AS month, SUM(rgb_z *55) AS rgb_z FROM schedule_list GROUP BY YEAR(start_datetime), MONTH(start_datetime) ORDER BY YEAR(start_datetime), MONTH(start_datetime)";
$query_run = mysqli_query($con, $query);
if (mysqli_num_rows($query_run) > 0) {
  foreach ($query_run as $data) {
$peaytArray[] = $data["rgb_z"];
$monthArray[] = $data["month"];
$yearArray[] = $data["year"];
  }
  unset($result);
}else{
    echo 'Brak danych';
}

 

komentarz 22 stycznia 2023 przez VBService Ekspert (256,600 p.)
edycja 22 stycznia 2023 przez VBService

nie powinno być ... wink?

unset($data);

 

możesz użyć jednej tablicy np.

[ on-line, on-line ]

foreach ($query_run as $data) {
  $peaytArray[] = [ $data["rgb_z"], $data["month"], $data["year"] ];
}

 

1
komentarz 22 stycznia 2023 przez gatka84 Bywalec (2,150 p.)

o faktycznie na szybko i przeoczyłam 

unset($data);

 

komentarz 22 stycznia 2023 przez gatka84 Bywalec (2,150 p.)

a w wolnej chwili podpowiedział byś mi w tym temacie https://forum.pasja-informatyki.pl/578503/mysqli-php-sum-z-kazdego-miesiaca-w-kazdym-roku bo nie wiem jak to ugryźć wink, a nie chce koła na nowo wymyślać. To w sumie kontynuacja obecnego tematu ale nie chciałam mieszać wszystkiego w jednym zapytaniu, z góry dziękuje.

Podobne pytania

0 głosów
0 odpowiedzi 588 wizyt
pytanie zadane 15 maja 2022 w SQL, bazy danych przez iderek Nowicjusz (120 p.)
0 głosów
1 odpowiedź 900 wizyt
0 głosów
1 odpowiedź 230 wizyt
pytanie zadane 18 lutego 2023 w SQL, bazy danych przez Jakubbbek678 Nowicjusz (120 p.)

93,335 zapytań

142,331 odpowiedzi

322,415 komentarzy

62,670 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...