Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Mnozenie elementów talbic o takich samych indeksach.
Forum PHP.pl > Forum > Przedszkole
Marr
Witam,
Mam taki problem: mam formularz zamówienia a w nim konkretne usługi w formie checkbox'ów. Teraz obok usługi jest mole sztuk. ,które traktuje jako mnożnik ceny usługi. Problem polega na tym, że tablica tworzona z checkbox'ów nie zawiera elementów odznaczonych checkboxów a co za tym idzie jeżeli zaznacze checkboxy uslugi nr1 i nr5 to tablica ma postac 1;5 a tymczasem tablica złożona z wartości inputów sztuk ma postać: 1;;;;2 i nie wiem w związku z tym jak odwoływać się do prawidłowego indeksu. Ma ktoś jakiś pomysł?

narazie robie coś takiego (co jest niepoprawne, ale wypada pokazać do czego doszedłem):
  1. <?php
  2. foreach ( $usluga as $ord_indeks => $kolejna_usluga ){
  3.        
  4.        $actindeks = $indeks+($wskaznik++);
  5.        $podzapytanie = mysql_query (&#092;"SELECT * FROM uslugi WHERE id=$kolejna_usluga\");
  6.    while ($podrekord = mysql_fetch_assoc ($podzapytanie)) {
  7.        $nazwa = $podrekord['nazwa'];
  8.        $nazwa = iconv(&#092;"UTF-8\", \"ISO8859-2\", $nazwa);
  9.        $cenanetto = $podrekord['cenanetto'];
  10.        $cenabrutto = $podrekord['cenabrutto'];
  11.        $vat = $podrekord['vat'];
  12.        $aktmnoznik = $mnoznik[$ord_indeks];
  13.        $idgr = $podrekord['idgr'];
  14.        $servicepricebrutto = $cenanetto*($vat/100);
  15. ?>


EDIT: Tak sobie pomyślałem, że sprawę rozwiązałoby mi usunięcie "dziur" z tablicy mnożnika. Może mi ktoś poradzić jak się to robi?
sowiq
  1. <?php
  2. $tab1[1] = 5;
  3. $tab1[3] = 19;
  4.  
  5. // $tab2 - zdefiniowana od 0 do 128...
  6.  
  7. foreach($tab1 as $id => $v)
  8.    echo ( $v * $tab2[$id] );
  9. ?>


To przykład mnożenia takiego, jak w opisie. Pokombinuj z tym, a osiągniesz cel winksmiley.jpg
Marr
Hmm no, ale przecież ja coś takiego właśnie mam. Z tym, że u mnie tab2 może zawierać u mnie dziury, np. 1;2;;;3 (bo jest tworzona przez zawartość inputów sklejanych w tablice) i wtedy cały proces mnożenia się sypie.
sowiq
Cytat
To przykład mnożenia takiego, jak w opisie. Pokombinuj z tym, a osiągniesz cel


Ja Ci podałem tylko przykład, a nie gotowe rozwiązanie. Zobacz jak to działa i przenieś na swój kod winksmiley.jpg
W podanym przeze mnie przykładzie tab1 jest tą 'dziurawą' tablicą, tab2 jest pełna.
Marr
hmm w sumie nie ogarnąłem, że ta pierwsza to jest dziurawa tablica. Może jest w tym jakiś sens -> popróbuje jutro.
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.