![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Mam formularz którego kod zamieszczam poniżej. Ma on zebrać informacje o pozycjach do wstawienia do fv i przeslania ich do pliku sprzedaz.php. Gdy niezarejestruje w sesji zmiennej pozycje_fv to w pliku sprzedaz.php wyswietla mi sie tylko
Kod Array ( [0] => Array ( [9] => 2 [10] => 21 ) [1] => Array ( [9] => 26 [10] => 211
natomiast jesli ja zarejestruje to otrzymam wyniki tylko dla argumentow od $pozycje_fv[x][0] do $pozycje_fv[x][8] gdzie x to numer wiersza. Czy mam przesylac informacje z pol 0-8 za pomoca input hidden? nie wydaje mi sie jednak to najlepszym rozwiazaniem. Ale nie wiem jak do sesji dopisac pola 9 i 10. Kolejnym problemem z sesja jest to ze jezeli chce zmienic pozycje na fv a juz do sesji sa zapisane jedne dane to nie aktualizuje ich tylko dopisuje jako kolejny wiersz dla tej tablicy. Z gory dzieki za podpowiedz jak rozwiazac ten problem. A tu jest czesc kodu odpowiedzialna za to o czym pisalem: [php:1:9a5fb35ce8]<?php $wynik3= mysql_query($zapytanie3,$dblink); if(!$wynik3) { print("Blad ! <br><br >n"); print("error number :".mysql_errno()."<br />"); print(mysql_error()."<br />"); } //tabela z pozycjami wybranymi do wstawienia do fv rozbudowana do formularza print("<br /><br /><table border bgcolor=#DBDBDB><tr><td align=center></td>"); print("<td align=center>nazwa</td><td>PKWiU</td><td>j.m.</td><td align=center>stawka vat</td>"); print("<td>cena hurt<br />netto 1</td><td>cena hurt<br />netto 2</td><td>Cena netto<br/>"); print("sprzedaży</td><td align=center>ilosc na<br>magazynie</td><td>Ilość</td></tr>"); print("<form action="sprzedaz.php" method="POST">"); $licznik =1;//numeruje pozycje na fv //pobieranie wierszy z bazy danych while($dbRow4 = mysql_fetch_row($wynik3)) { //przypisanie danych z bazy do tablicy pozycje_fv $licznik_poz=$licznik-1;//numeruje indeksy wierszy w tablicy pozycje_fv $pozycje_fv[$licznik_poz][0] = $dbRow4[0]; $pozycje_fv[$licznik_poz][1] = $dbRow4[1]; $pozycje_fv[$licznik_poz][2] = $dbRow4[2]; $pozycje_fv[$licznik_poz][3] = $dbRow4[3]; $pozycje_fv[$licznik_poz][4] = $dbRow4[4]; $pozycje_fv[$licznik_poz][5] = $dbRow4[5]; $pozycje_fv[$licznik_poz][6] = $dbRow4[6]; $pozycje_fv[$licznik_poz][7] = $dbRow4[7]; $pozycje_fv[$licznik_poz][8] = $dbRow4[8]; //wyswietlenie pozycji print("<tr><td>".$licznik . "</td><td>".$dbRow4[2]."</td>"); print("<td>."$dbRow4[5]."</td><td>".$dbRow4[4]."</td><td align=center>".$dbRow4[3]." %</td>"); print("<td>".$dbRow4[6]."</td><td>".$dbRow4[7]."</td><td><input type="text" name=""); print("pozycje_fv[".$licznik_poz."][9]" value="".$dbRow4[6]."" size=5/></td><td>".$dbRow4[8]."</td>"); print("<td><input type="text" name="pozycje_fv[".$licznik_poz."][10]"size=5/></td></tr>"); $licznik++; } print("</table>"); //wysylanie formularza print("<input type="submit" value="Zatwierdź"/></form>"); } ?>[/php:1:9a5fb35ce8] Update: poprawiłem trochę czytelność kodu, na tyle na ile umiałem |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Hm... za bardzo nie rozumiem problemu. Jak możesz to opisz to szerzej i bardziej zrozumiale.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 223 Pomógł: 0 Dołączył: 22.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
No i czy musisz koniecznie laczyc php z html? To okrutnie zmiensza czytelnosc...
|
|
|
![]()
Post
#4
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Sproboje wyjasnic dokladniej o co mi chodzi i w czym mam problem.
Tworze tabele ze zintegrowanymi 2 polami tekstowymi formularza. Dane z wierszy z bazy danych przypisuje do tablicy $pozycje_fv o indeksach [x][0] do [x][8] gdzie x to numer wiersza. Nastepnie uzytkownik dopisuje do tej tablicy za pomoca formularza do kazdego wiersza po dwa pola czyli [x][9] i [x][10]. I tu napotykam na problem. Gdy nie rejestruje zmiennej w sesji to do pliku sprzedaz.php zostana przekazane tylko wszystkie pola o indeksach [x][9] i [x][10] natomiast te ktorym przypisalem wartosci poza formularzem nie zostaja przekazane. Z drugiej strony gdy zarejestruje zmienna $pozycje_fv w sesji to zapisane sa tam tylko pola [x][0] do [x][8] natomiast pol ktore wypelniam przez formularz nie dopisuje, czego konsekwencja jest ze w pliku sprzedaz.php jako zawartosc tablicy $pozycje_fv mam pola [x][0] do [x][8] a pol [x][9] i [x][10] nie ma wogole. Zastanawialem sie nad rozwiazaniem tego problemu za pomoca pol <input type="hidden" value="$pozycje[x][0]> i tak dalej do [x][8] ale nie wydaje mi sie to najlepszym rozwiazaniem. Drugi pomysl to sesje, ale tu nie wiem jak dopisac pola [x][9] i [x][10] do pliku sesji. Z gory dzieki za podpowiedz |
|
|
![]()
Post
#5
|
|
Vice-Administrator serwera Grupa: Przyjaciele php.pl Postów: 395 Pomógł: 0 Dołączył: 7.08.2003 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
szkoda, że nikt nie potrafi mi pomóc. Może jakośsam znajdę rozwiązanie tego problemu...
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 22:24 |