![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 19.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Potrzebuję edytowac wyszukane wcześniej rekordy w bazie danych - jednego pola wszystkich wyszukanych.
Tutaj mam formularz po którym szukam rekordów do zmiany: Kod <? include('menu_promocje_com.php'); ?> <b>WYSZUKIWARKA PRODUKTU</b><br><br> <form action="doznajdz_promocje_com.php" method="post"> Data od (>=):<br /> <input type="text" name="data_od" /><br /> Data do (<=):<br /> <input type="text" name="data_do" /><br /> Kwota od (>=):<br /> <input type="text" name="kwota_od" /><br /> Kwota do (<):<br /> <input type="text" name="kwota_do" /><br /> <input type="submit" value="szukaj" /> </form> </center> </html> Tutaj mi pokazuje wszystkie wyszukane rekordy do zmiany i w polu promocja dodaję tekst który chcę aby pojawił się w jednym rekordzie tabeli we wszystkich wyszukanych danych. Kod <? include('menu_promocje_com.php'); mysql_select_db("nazwa_bazy"); $data_od = $_POST['data_od']; $data_do = $_POST['data_do']; $kwota_od = $_POST['kwota_od']; $kwota_do = $_POST['kwota_do']; $query = "select * from orders where (order_date >= '$data_od' and order_date <= '$data_do' and order_sum >= '$kwota_od' and order_sum < '$kwota_do') order by order_date asc"; $result = mysql_query($query); $num_results = mysql_num_rows($result); print "<p>Ilo¶ć znalezionych klientów do promocji: ".$num_results."</p>"; print ("<font size=2 color=yellow>Nr zam.| Nr Kl. | Imię | Nazwisko | Data zam. | Warto¶ć zam. | Notka | </font><BR>"); for ($i=0; $i <$num_results; $i++) { $row = mysql_fetch_array($result); print ("<font size=2>| "); print stripslashes($row["order_id"]); print (" | "); print stripslashes($row["user_id"]); print (" | "); print stripslashes($row["bill_firstname"]); print (" | "); print stripslashes($row["bill_lastname"]); print (" | "); print stripslashes($row["order_date"]); print (" | "); print stripslashes($row["order_sum"]); print (" zł | "); print stripslashes($row["notes_pub"]); print " |</font></font><br>"; } ?> <hr width="75%" align="CENTER" size="2" color="white"> <form action="promocja_dodana_com.php" method="post"> Tekst promocji dla wybranych wyżej klientów:<br /> <input type="text" name="promocja" size="100" /><br /> <input type="submit" value="DODAJ PROMOCJE" /> </form> </center> </html> I tutaj mam problem ponieważ nie wiem jaki kod umieścić, aby wszystki wyszukanym rekordom w polu notes_pub='$promocja' wpisało tekst mojej promocji. Bardzo proszę o podpowiedzi. Ja obecnie mam tak i to nie działa: Kod <? include('menu_promocje_com.php');
mysql_select_db("nazwa_bazy"); $promocja = $_POST['promocja']; $query = "select * from orders where (order_date >= '$data_od' and order_date <= '$data_do' and order_sum >= '$kwota_od' and order_sum < '$kwota_do') order by order_date asc"; $result = mysql_query($query); $num_results = mysql_num_rows($result); for ($i=0; $i <$num_results; $i++) { $row = mysql_fetch_array($result); $query2="update orders set notes_pub='$promocja' WHERE order_id='$row['order_id']'"; } echo 'Promocja została dopisana'; ?> <hr width="75%" align="CENTER" size="2" color="white"> </center> </html> |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 125 Pomógł: 14 Dołączył: 2.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
nie wiem czy nie prościej było by w update wcisnąć taki sam warunek jak masz w select
czyli wyglądało by to tak:
Ten post edytował radziopoke 19.06.2012, 14:38:48 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 19.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za podpowiedź masz rację, natomiast jest jeden problem w ostatnim pliku nie pamięta mi parametrów z formularza z drugiego pliku czyli
Kod $data_od = $_POST['data_od']; $data_do = $_POST['data_do']; $kwota_od = $_POST['kwota_od']; $kwota_do = $_POST['kwota_do']; pamięta tylko Kod $promocja = $_POST['promocja']; hm ? Czyli ostatni plik zmieniłem na : Kod <? include('menu_promocje_com.php'); mysql_select_db("baza1258_s_kont"); $data_od = $_POST['data_od']; $data_do = $_POST['data_do']; $kwota_od = $_POST['kwota_od']; $kwota_do = $_POST['kwota_do']; $promocja = $_POST['promocja']; $query2="update orders set notes_pub='$promocja' where (order_date >= '$data_od' and order_date <= '$data_do' and order_sum >= '$kwota_od' and order_sum < '$kwota_do')"; echo 'Promocja została dopisana'; ?> <hr width="75%" align="CENTER" size="2" color="white"> </center> </html> Ale nie działa |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 872 Pomógł: 94 Dołączył: 31.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
daj adres stronki, to Ci ja rozloze. Polecam zapoznac sie z funkcja mysql_real_escape_string. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 19.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
niestety nie mogę podać adresu stronki
wszystko jest jednak tak jak napisałem pierwszy kod to plik nr 1 który jest formularzem plik nr 2 który odczytuje dane z tabeli względem wypełnionego formularza, na dole w tym pliku jest kolejny formularz w którym wpisujemy tekst promocji plik nr 3 to ten w którym następuje edycja pola notes_pub tekstem promocji we wszystkich wyszukanych zamówieniach ID nie wiem jak to zrobić zapętliłem się, chyba że w pliku nr 2 ponownie w formularzu podać dane z pliku nr 1 dodatkowo |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 19:59 |