Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Tabela - jak dodać wartości za pomocą pętli
amstrad_pw
post 8.11.2013, 15:31:12
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 8.11.2013

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


Witam,

Jestem początkujący, więc pytanie może okazać się banalne.
Mam dane w pliku XML w którym mam dane - poniżej przykład:

Punkt (sklep) - Towar - Sprzedaż
1 - Towar A - 4
2 - Towar A - 3
4 - Towar A - 2
1 - Towar B - 6
3 - Towar B - 4
4 - Towar B - 2

Mój problem polega na tym, że jeżeli zaczytuje te dane z XML'a do tablicy w PHP to punkty (sklepy) są dodawane w tablicy rosnąco. W przypadku, gdy wszystkie punkty mają sprzedaż, to nie ma problemu. Niestety w tym przykładzie, punkt 3 nie sprzdał Towau A, a punkt 2 Towaru B.
Co należy zrobić, aby zaczytując dane, jeżeli punkt nie ma sprzedaży daneto towaru, to w tablicy następowałby przeskok indeksu o jedną, lub więcej pozycji do góry, tak, aby indeks był taki sam jak numer punktu.

Punkt - Towar A - Towar B
1 - 4 - 6
2 - 3 - 0
3 - 0 - 4
4 - 2 - 2

Każdy towar ma inną wagę, więc nie mogę tego sumować jeden do jednego :-(
Go to the top of the page
+Quote Post
404
post 8.11.2013, 17:48:22
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 25
Dołączył: 22.05.2011

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


Pokaż kod, w którym odczytane dane wrzucasz do tablicy i napisz gdzie chcesz tą tablicę później wykorzystać.
Go to the top of the page
+Quote Post
b4rt3kk
post 8.11.2013, 18:03:49
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Proponuję Ci zrobić z tego następującą tablicę:

  1. $tablica[$punkt][$towar] = array(1,2,3,4); // 1,2,3,4 to przykładowe wartości sprzedaży


Przy czym zapis wyglądałby tak (załóżmy że lecisz w pętli i wszystkie te elementy masz dostępne za każdą iteracją):

  1. while (...) {
  2. $tablica[$punkt][$towar][] = $sprzedaz;
  3. }


By teraz odczytać sprzedaż danego punktu i danego produktu zwyczajnie odwołujesz się do zadanych kluczy tablicy:

  1. var_dump($tablica[1]['towar_a']);


Jeśli w nazwach występują spacje zastąp je podkreśleniem, zmień również polskie znaki, itd.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
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 Wersja Lo-Fi Aktualny czas: 18.04.2024 - 13:53