Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: powrót do listy pozycji po aktualizacji
Forum PHP.pl > Forum > PHP
hettmix
Witam.

Mam taki oto formularz, który wrzuca w iframe tabelę z pozycjami z bazy MySQL wg. zadanych kryteriów:
  1. <iframe style="margin-top: -15px; padding-top: 0px; border-top: double; border-bottom: double;" name="ramka_porzadkowe" id="ramka_porzadkowe" marginwidth="0"
  2. marginheight="0" allowtransparency="true" align="middle" src="" scrolling="auto" width="100%" height="425" border="0" frameborder="0">
  3. ups... twoja przeglądarka nie obsługuje ramek - skontaktuj się z administratorem platwormy ewidencje.sgk
  4. </iframe>
  5.  
  6. <form style="margin-top: -15px" id="formularz_marki" name="formularz_marki" action="modules/mod_porzadkowe/form_marki_show.php" method="post"
  7. target="ramka_porzadkowe">
  8. <legend id="legend">Marki</legend>
  9. <b>Nr marki:</b><input style="margin-left: 43px; width: 100px; height: 10px;" type="text" name="nr_marki" id="nr_marki" value=""></br>
  10. <b>Data wystawienia:</b><input style="height: 11px; margin-left: 5px; margin-top: 4px; margin-bottom: 4px;" type="text" name="data_wystawienia_od"
  11. id="datepicker_1" value="">&nbsp;&nbsp;do&nbsp;<input style="height: 11px; margin-left: 5px; margin-top: 4px; margin-bottom: 4px;" type="text"
  12. name="data_wystawienia_do" id="datepicker_2" value="<?php echo date("Y-m-d"); ?>"></br>
  13. <b>Stawka:</b><input style="margin-left: 70px; width: 100px; height: 10px;" type="text" name="stawka" id="stawka" value="">
  14. <input style="float: right; width: 90px; margin-top: 15px;" type="submit" name="znajdz_marki" value="Szukaj...">
  15. </form>

Po wyświetleniu wyników w ramce przeprowadzam edycję tej jednej sprawy za pomocą poniższego formularza również otwieranego w iframe:
  1. $id = trim($_GET['id']);
  2.  
  3. if(!empty($id)) {
  4. $wynik = mysql_query("SELECT * FROM tbl_glowna_porz WHERE id='$id'") or die('Błąd zapytania');
  5.  
  6. if(mysql_num_rows($wynik) > 0) {
  7. $r = mysql_fetch_assoc($wynik);
  8. }
  9. }
  10.  
  11. ?>
  12.  
  13. <form action="edycja_update.php" method="post">
  14. <input type="hidden" name="id" value="<?php echo $id;?>" />
  15. <legend id="legend">Marki</legend>
  16. <span style="position: absolute; margin-left: 21em;"><b>ID:&nbsp;<input style="text-align: center;" type="text" maxlength="2" size="2"
  17. disabled="1" readonly="1" value="<?php echo $id;?>" /></span>
  18. <b>Marki:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Typ:<br />
  19. <input type="text" id="marki_seria_nr" name="marki_seria_nr" maxlength="10" size="10" value="<?php echo $r['marki_seria_nr'];?>" />
  20. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" id="marki_typ" name="marki_typ" maxlength="3" size="4"
  21. value="<?php echo $r['marki_typ'];?>" />
  22. <br />Data wyst.:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Stawka:<br />
  23. <input type="text" id="datepicker_3" name="marki_data_wystawienia" maxlength="10" size="10"
  24. value="<?php echo $r['marki_data_wystawienia'];?>" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" id="marki_stawka"
  25. name="marki_stawka" maxlength="6" size="4" value="<?php echo $r['marki_stawka'];?>" /><br />
  26. <input style="margin-left: 370px; position: absolute;" type="submit" name="Zapisz" class="button-standard"
  27. value="Zapisz" /><br />
  28. <input style="margin-left: 370px; margin-top: -30px; position: absolute;" type="button" value="Anuluj" class="button-standard"
  29. onclick="history.go(-1)" />
  30. </form>

Po edycji aktualizuję dane poprzez plik edycja_update.php
  1. <?php
  2. $id = $_POST['id'];
  3. $marki_seria_nr = htmlspecialchars(trim($_POST['marki_seria_nr']));
  4. $marki_typ = htmlspecialchars(trim($_POST['marki_typ']));
  5. $marki_data_wystawienia = htmlspecialchars(trim($_POST['marki_data_wystawienia']));
  6. $marki_stawka = htmlspecialchars(trim($_POST['marki_stawka']));
  7.  
  8. mysql_query("UPDATE tbl_glowna_porz SET marki_seria_nr='$marki_seria_nr',marki_typ='$marki_typ',marki_data_wystawienia='$marki_data_wystawienia',
  9. marki_stawka='$marki_stawka' WHERE id='$id'")
  10. or die('Błąd zapytania aktualizującego');
  11.  
  12. $adres="tabela_glowna_porz_save.php";
  13.  
  14. ?>
  15. <script>
  16. document.location.href="<?php echo $adres;?>";
  17. </script>

Po aktualizacji wyświetlam w iframe tabelę główną zawierającą wszystkie pozycje.
Problem z którym walczę już od kilku dni, to jak po aktualizacji wrzucić do iframe tylko te pozycje, które zostały wyszukane w pierwszym kroku poprzez podanie kryteriów wyszukiwania w formularzu. Próbuję już kilku rozwiązań ale żadne nie przynosi pożądanego rezultatu.
memory
Sesja, ciasteczka, lub baza danych
hettmix
Cytat(memory @ 17.07.2012, 15:37:57 ) *
Sesja, ciasteczka, lub baza danych

Zastosowałem ciasteczka i wszystko fajnie śmiga. Z ciekawości zapytam, które z zaproponowanych
rozwiązań jest bardziej wskazane/optymalne.
franki01
Najbezpieczniej trzymać dane na serwerze, bo są najmniej podatne na manipulację. Osobiście wybrałbym bazę danych ze względu na łatwe operowanie na wynikach przez powiązania. Najlepiej, gdybyś w linku wyszukiwania miał np. domena.pl/wyszukiwanie/iu23b5uy2h3v5b2u3jhy5b23/, gdzie to ostatnie to id wyników generowanie podczas wyszukiwania. Wtedy w tabeli z wynikami robisz odpowiednią kolumnę z tym kluczem. Użytkownik może wtedy przeglądać kilka wyszukiwań naraz i nie musi mieć nawet włączonej obsługi ciasteczek.
hettmix
Cytat(franki01 @ 19.07.2012, 15:07:22 ) *
Najbezpieczniej trzymać dane na serwerze, bo są najbardziej podatne na manipulację. Osobiście wybrałbym bazę danych ze względu na łatwe operowanie na wynikach przez powiązania. Najlepiej, gdybyś w linku wyszukiwania miał np. domena.pl/wyszukiwanie/iu23b5uy2h3v5b2u3jhy5b23/, gdzie to ostatnie to id wyników generowanie podczas wyszukiwania. Wtedy w tabeli z wynikami robisz odpowiednią kolumnę z tym kluczem. Użytkownik może wtedy przeglądać kilka wyszukiwań naraz i nie musi mieć nawet włączonej obsługi ciasteczek.

Dzięki za kilka cennych rad na przyszłość.
Problem rozwiązany więc kończę ten wątek.
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.