Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Maleńki problem z wykresem
damianprz
post
Post #1





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 26.08.2009
Skąd: Zamojsce

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


(IMG:http://images41.fotosik.pl/185/dcd2828ceae7e2a9m.jpg)
Pewien skrypt pewnego Pana generuje wykresy takie jak ten pierwszy wykres na screenie
Trzeba tylko w pewnym pliku podać odpowiednie dane
I tak ten pomarańczowy wykres miał zapodane takie coś:

  1. $pytanko="SELECT data.data FROM data
  2. INNER JOIN produkty ON (data.id=produkty.id_daty)
  3. WHERE produkty.id_towaru='2' ";
  4. $rezultat = mysql_query($pytanko)
  5. or die("Błąd zapytania");
  6. $ilejest = mysql_num_rows($rezultat);
  7.  
  8. $pytanko2="SELECT produkty.popyt FROM produkty
  9. INNER JOIN data ON (produkty.id_daty=data.id)
  10. WHERE produkty.id_towaru='2' ";
  11. $rezultat2 = mysql_query($pytanko2)
  12. or die("Błąd zapytania");
  13. $ilejest2 = mysql_num_rows($rezultat2);
  14.  
  15. $nazwy = mysql_fetch_array($rezultat);
  16. $wartosci = mysql_fetch_array($rezultat2);


Otrzymuje też wyniki:
  1. ilejest: 9
  2. ilejest2: 9


Moja struktura bazy danych wygląda następująco:
(chodzi o tabele data i produkty)
(IMG:http://images43.fotosik.pl/188/1182f918ccd3c00fm.jpg)

Jak widać w zapytaniu chcę pokazać jakoś popyty dla produktu akurat o Id=2
ale wyświetla mi tylko pierwszą datę i pierwszy popyt dla towaru id=2
W tabeli produkty mam 9 pozycji dla towaru o Id=2

id_daty ...id_towaru... popyt
1.......... 2 ............20
2 ..........2 ............25
3 ..........2 ............15
4 ..........2 ..............5
5 ..........2 ............15
6 ..........2 ............10
7 ..........2 ............15
8 ..........2 ............15
9 ..........2 ............15

Jak pokazać wszystkie daty i wszystkie popyty dla danego id towaru?

Ten post edytował damianprz 29.08.2009, 13:20:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
damianprz
post
Post #2





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 26.08.2009
Skąd: Zamojsce

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


Rozumiem Twoje zdenerwowanie, ale ja nie mam za bardzo już czasu, żeby myśleć po 3 dni nad 1 zagadnieniem. Jak widać mam nie za dużą wiedzę i pewnie z tego myślenia nie wiele by wynikło, a na studiowanie teraz książek z PHP nie mam czasu. Ogólnie mam taką sytuację, że późno pisze prace i bronie się we wrześniu ale nie swojej winy.

Cytat
Nie zerknąłeś nawet do pliku dane.inc.php, gdzie jak byk widać co jest potrzebne jako dane do wykresu i wystarczy tam tylko podmienić dane by zmienić wykres.

Jak nie zerknąłem jak cały czas pisałem że w tym pliku właśnie trzeba podmienić $wartosci i $nazwy na swoje.

Cytat
Ty i tak będziesz musiał jeszcze ten kod wyświetlający zaimplementować w swój kod. Tyle że przy Twojej wiedzy także z tym będziesz miał problem.

Ale autor skryptu pozwolił z niego korzystać pod warunkiem że nie będzie usunięta wzmianka że to jego
Wystarczy mi tylko teraz wygrenerować linki jak w przypadku przeglądu tabelarycznego dziennego popytu danego towaru

  1. for($i=1; $i<=$ile; $i++) {
  2. $wiersz = mysql_fetch_array($rezultat3);
  3. echo '<font size=5><A HREF="przeglad_2.php?id='.$i.'">towar o id:'.$i.'</a>';
  4. echo " i o nazwie: ".$wiersz['nazwa']."<BR>";
  5. };


i następnie w pliku dan.inc.php

  1. $zapytanie="SELECT d.data, p.popyt FROM produkty p LEFT JOIN data d ON p.id_daty=d.id WHERE p.id_towaru='2'";


tę dwójkę zamienić na $_GET['id']

Cienki z PHP jestem, ale dzięki Tobie wiele się nauczyłem, szczególnie to polecenie

  1. UPDATE zapasy z LEFT JOIN (SELECT id_towaru, round(avg( popyt ),2) AS srednia, round(STD( popyt ),2) AS odchylenie FROM produkty GROUP BY id_towaru) p
  2. ON z.id_towaru = p.id_towaru
  3. SET z.srednia = p.srednia, z.odchylenie = p.odchylenie


czy

  1. SELECT t.nazwa, p.id_towaru, round(avg(p.popyt),2) AS srednia, round(std(p.popyt),2) AS odchylenie
  2. FROM Produkty p
  3. LEFT JOIN Towary t ON p.id_towaru = t.id
  4. GROUP BY p.id_towaru


zrobiły na mnie wrażenie bo bez żadnych pętli wykonują działania na tylu rekordach ile jest w tabeli.
PHP miałem na studiach mało, a nie zdecydowałem się żeby dokształcić się na własną rękę.
Tematyka mi się podoba i w związku z tym mam pytanie. Jak najszybciej nauczyć się "praktycznego" PHP, jakieś kursy w internecie może są? albo jakaś fajna książka?
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: 5.10.2025 - 19:10