![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 16.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Otóż moj problem polega na tym, że wyświetlam sobie w tabeli rodzaje i dla kazdego rodzaju cene minimalna i cene maxymalna oraz link dla kazdego rodzaju aby kazdy z osobna aktualizowac!! Problem polega jednak na tym ze nie bardzo chce mi to niestety dzialac i nie bardzo wiem jak sobie z tym poradzic!! Podkresle ze jezeli zastosowalbym przycisk submit to ni ebyloby problemu z updatem wszystkich rekordow naraz ale jak mowie ja chcialbym update'ować tylko te wybrane!! Bez uzycia submita metoda POST raczej odpada i pozostaje moto da GET :/ Oto fragment mojego kodu gdzie wyswietlam tabele i pobieram dane z bazy danych:
Wpierw dolacze moje zapytanie i pobranie danych z bazy: Kod $query="SELECT rodzaje.id_r, nazwa_r, cena_min, cena_max FROM rodzaje, koncerny, stacje, stacje_rodzaj WHERE koncerny.id_k=stacje.id_k AND stacje.id_s=stacje_rodzaj.id_s AND stacje_rodzaj.id_r=rodzaje.id_r GROUP BY nazwa_r ORDER BY nazwa_r LIMIT $start, $wyswietl"; $result=@mysql_query($query); echo'<form action="granica.php" method="get">'; //Naglowek tabeli echo '<table align="center" cellspacing="2" cellpadding="2"> <tr><td align="left"><b>Rodzaj</b></td><td align="center"><b>cena min</b></td><td align="center"><b>cena max</b></td><td align="center"><b>Aktualizuj cene</b></td></tr>'; //Pobieranie i wyswietlenie wszystkich rekordow $kolor='#eeeeee'; //Okreslenie koloru tła while($row=mysql_fetch_array($result, MYSQL_NUM)) { $kolor=($kolor=='#eeeeee' ? '#ffffff' : '#eeeeee'); //Ustawienie koloru tla dl aposzczegolnych wierszy echo '<tr bgcolor="',$kolor, '"><td align="left">', ($row[1]), '</td><td align="center"><input type="text" name="cena_min" size="2" maxlength="4" value='.$row[2].'></td><td align="center"><input type="text" name="cena_max" size="2" maxlength="4" value='.($row[3]).'></td><td align="center"><a href=granica.php?akcja=aktualizuj&id=',$row[0],'&rodzaj=',$row[1],'>Aktualizuj</a></td></tr>'; } echo '</form>'; Nastepnie na poczatku skryptu sobie sprawdzam: if((isset($_GET['akcja']))&&(($_GET['akcja']) == 'aktualizuj')) { $query="UPDATE rodzaje SET cena_min={$_GET['cena_min']} AND cena_max={$_GET['cena_max']} WHERE rodzaje.id_r={$_GET['id']}"; $results=mysql_query($query); Niesstety to nie dziala i nie wiem jak rozwiazac problem!! Bardzo Prosze o pomoc!! |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 656 Pomógł: 3 Dołączył: 26.10.2005 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
z chęcią bym ci pomógł ale wyjaśnij precyzyjniej i zwięźlej co chcesz zrobić (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Ten post edytował misiek172 31.05.2006, 14:26:47 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 16.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Otóż w bazie danych dla kazdego nazwy rodzaju paliwa mam dwie kolumny gdzie mam ustalic cene minimalna i cene maxymalna jaki dany rodzaj moze cene uzyskac!! Wyciagam sobie te dane z bazy danych i wyswietlam w tabeli po 10 rekordow(rodzajow) na strone. Dla ceny minimalnej i maxymalnej tworze inputy i wczytuje auktualna cene minimalna dla jednego inputa i dla drugiego maxymalna i tak dla kazdego rodzaju paliwa. Rowniez dla kazdego rodzaju paliwa wyswietlam link "zaktualizuj" gdzie chialbym w linku przekazac te zmienne z cena minimalna i maxymalna, ktore zczytalem z bazy i zmienilem. Ale niestety ta aktualizacja mi nie dziala ;/ zauwazylem jeszcze jeden blad ale i z tym bledem mi nie dziala :/
Problem tkwi na pewno w przekazywanu zmiennych przez link!! Wiem ze musze przekazac juz zmieniona wartosc z inputa dla ceny_min i ceny_max ale nie wiem jak to zrobic?? Ten post edytował fafrys 31.05.2006, 14:38:26 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 30.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Do każdego pola tekstowego i przycisku dołączasz id danego paliwa np
gdzie $id jest numerem id pobranym z bazy, potem robisz foreach dla otrzymanej tabeli $_POST['cena_min'] gdzie kluczami będą właśnie numery id a wartościami - wpisana w to pole tekstowe liczba. Ten post edytował KG- 31.05.2006, 14:44:31 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 16.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
chodzi mi bardziej o to jak przekazac juz zmieniona wartość w inpucie poprzez link!!
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 30.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli dobrze zrozumiałem (i jeśli Ty sam wiesz co chcesz zrobić) to masz 2 rozwiązania:
1) generować link dynamicznie po kliknięciu na przycisk i ładować stronę o tym linku - możesz to zrobić w javascript 2) wysyłać formularz poprzez GET i odczytywać jego parametry ze zmiennej $_GET Tak czy inaczej musisz w jakiś sposób ponumerować pola które wysyłasz (np po id), bo niby skąd skrypt który będzie miał wiedzieć o które z 10 pól 'cena_min' Ci chodziło? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 16.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
I tak teraz zrobilem
I na poczatku
i dla ceny_min sie da zrobic ale jak zrobic rownoczesnie dla ceny min i max!!??(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) Ten post edytował fafrys 1.06.2006, 00:11:26 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.08.2025 - 16:25 |