Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Wstawianie wykresu na stronie na podstawie danych z bazy
AlKhalif
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 9.08.2016

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


ma wykonany kod pobierający informacje z bazy danych i sumujący je na podstawie miesięcy. Chciałbym je wstawić do wykresu jaki znalazłem w internecie, ale nie wiem jak je wstawić w miejsce przykładowych liczb z pobranego wykresu. Chciałbym też aby wykres pokazywał mi tylko np. ostatnie 12 miesięcy.

Oto kod pobierający dane:

  1. require_once "config/dbinfo.php";
  2. $connect = mysqli_connect($host, $db_user, $db_password, $db_name);
  3. if(mysqli_connect_errno())
  4. {
  5. echo "wystopil bald polanczenia z baza";
  6. }
  7. else
  8. {
  9.  
  10. $wypisz="SELECT SUM(suma) FROM vssaction GROUP BY Month(data)";
  11.  
  12. $wynik= mysqli_query($connect, $wypisz)
  13. or die('Błąd zapytania');
  14. while($r= mysqli_fetch_array($wynik))
  15. {
  16. echo $r['SUM(suma)'].'<br>';
  17. }
  18. }
  19. mysqli_close($connect);

A to przykładowy skrypt tego wykresu pobrany z internetu

  1. <?php
  2. include_once(&#8218;./LabChartsLine.php’);
  3. $LabChartsLine = new LabChartsLine();
  4. $LabChartsLine->setData(array(27,25,60,31,25,39,25,31,26,28,8,28,27,31,27,29,26,35,70,25));
  5. echo &#8218;<img src=”‚.$LabChartsLine->getChart().‚” />’;
  6. ?>

Jak podstawić pobrane dane w miejsce tych liczb w $LabChartsLine?

Mam jeszcze taki kod w którym są ustawione miesiące

  1.  
  2. <?php
  3. $LabChartsLine->setColors(&#8218;D9351C’);
  4. $LabChartsLine->setSize(&#8217;400×250′);
  5. $LabChartsLine->setTitle(&#8218;Zyski w poszczególnych miesiącach’);
  6. $LabChartsLine->setAxis (10, &#8218;Sty||Mar||Maj||Lip||Wrz||Lis||Sty||Mar||Maj||Lip|’);
  7. $LabChartsLine->setGrids (10);
  8. echo &#8218;<img src=”‚.$LabChartsLine->getChart().‚” />’;
  9. ?>

Jak go przerobić aby wyświetlał tylko kilka ostatnich miesięcy?[php][/php]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Kshyhoo
post
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Dane wrzucasz tu:
  1. $LabChartsLine->setData(array(27,25,60,31,25,39,25,31,26,28,8,28,27,31,27,29,26,35,70,25));

Chyba nie problem?
  1. while($r= mysqli_fetch_array($wynik)) {
  2. $LabChartsLine->setData(array($r["miesiac"]));
  3. }


--------------------
Go to the top of the page
+Quote Post
AlKhalif
post
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 9.08.2016

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


Cytat(Kshyhoo @ 22.11.2016, 18:58:45 ) *
Dane wrzucasz tu:
  1. $LabChartsLine->setData(array(27,25,60,31,25,39,25,31,26,28,8,28,27,31,27,29,26,35,70,25));

Chyba nie problem?
  1. while($r= mysqli_fetch_array($wynik)) {
  2. $LabChartsLine->setData(array($r["miesiac"]));
  3. }


Ale to nie zrobi tak, że utworzy mi masę zmiennych tej samej nazwie? Bo jeśli treść $LabChartsLine->setData(array jest wewnątrz pętli to za każdym rekordem ją powtórzy.
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #4





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Nie musisz cytować całej mojej wypowiedzi.
Wpierw sprawdź a potem narzekaj.


--------------------
Go to the top of the page
+Quote Post
AlKhalif
post
Post #5





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 9.08.2016

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


Nie działa i nie zwraca żadnych komunikatów.
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@Ksyhoo ty jak czasami cos palniesz bez zastanowienia....

@AlKhalif Dane masz wpierw wlozyc do tablicy

  1. $arr = array();
  2. while($r= mysqli_fetch_array($wynik))
  3. {
  4. $arr[]=$r['SUM(suma)'];
  5. }


A te tablice potem w miejsce danych wpisanych z palca:

  1. $LabChartsLine->setData($arr);


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Kshyhoo
post
Post #7





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Cytat(nospor @ 22.11.2016, 21:35:15 ) *
@Ksyhoo ty jak czasami cos palniesz bez zastanowienia....

Wzorowałem się na miszczach.


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




To jak juz sie wzorujesz na miszczach, to rob to troche dokladniej
Czy naprawde uwazasz, ze te metody
addPoints()
setData()

robia to samo? Bo wg mnie nazwy dosc wyraznie mowia co robi kazda z tych metod a co za tym idzie kiedy i jak mozna ich uzywac

ps: pozatym czemu uznales ze kod dla pCHart bedzie dzialac dla LabChart?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Boshi
post
Post #9





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Cytat(Kshyhoo @ 22.11.2016, 21:49:34 ) *
Wzorowałem się na miszczach.


addpoints nie przyjmuje tablicy zapewne a skalary w przeciwieństwie do setData. Dlatego to na czym się wzorowałeś ma prawo działać ustawiajac punkty w przestrzeni.

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 14:49