Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Nowe dane po wykonaniu formularza (zostają poprzednie dane).
Forum PHP.pl > Forum > Przedszkole
Giluś
Cześć mam taki kod:

  1. ....
  2. case 'zwsu':
  3.  
  4. // Start Get
  5. if(isset($_GET['del'])) {
  6. $del = (int)$_GET['del'];
  7. $zwsud = mysql_query("DELETE FROM user WHERE id='".$del."'");
  8. if($zwsud) $txt = "".wiadomosc("success", "<span class='wym'>Del</span>")."";
  9. else $txt = "".wiadomosc("error","<span class='wym'>Err.</span>")."";
  10. }
  11.  
  12. elseif(isset($_GET['modf'])) {
  13. $modf = (int)$_GET['modf'];
  14. $typ = (int)$_GET['typ'];
  15. $sp = mysql_fetch_array(mysql_query("select * from user WHERE id = '".$modf."'"));
  16.  
  17. if($typ === 1) {
  18. if(!empty($_POST['ok'])){
  19. $id = (int)$_POST['id'];
  20. if ($id === $modf) {
  21. $nazwa = htmlspecialchars(strip_tags($_POST['nazwa']));
  22. $kom = htmlspecialchars(strip_tags($_POST['kom']));
  23.  
  24. $zwsumvt = mysql_query("update use SET nazwa='$nazwa', kom='$kom' WHERE id = '$id'");
  25.  
  26.  
  27. if($zwsumvt) $txt = "".wiadomosc("success", "<span class='wym'>Ok</span>")."";
  28. else $txt = "".wiadomosc("error","<span class='wym'>Err.</span>")."";
  29.  
  30. }
  31. }
  32.  
  33. <div class='trescc info'><p>
  34. <p style='text-align: center; font-size: 16px;'><b>".$sp['nazwa']."</b></p><br /><br />
  35.  
  36. <form action='' method='post'>
  37. Nazwa: <input class='buttons2' type='text' style='margin-left: 72px;' name='nazwa' value='".$sp['nazwa']."'/>
  38. Komentarz: <input class='buttons2' type='text' style='margin-left: 50px;' name='kom' value='".$sp['kom']."'/>
  39. <br /><input class='button2' style='border:0;' type='submit' name='ok' value='Modyfikuj' /></form>
  40. </p></div>
  41. }
  42. }
  43.  
  44. // Koniec GET
  45.  
  46. $us = mysql_query("SELECT * FROM user") or die('Błąd zapytania');
  47. echo $txt;
  48.  
  49. while($us2 = mysql_fetch_assoc($us)) {
  50. echo "
  51. ".$nazwa." - <a href='?a=zwsu&typ=".$us2['typ']."&modf=".$us2['id']."'>Zmień</a> | <a href='?a=zwsu&del=".$us2['id']."'>Usuń</a>
  52. <br /><hr>
  53. ";
  54.  
  55. }
  56. break;
  57. ...



Problem polega na tym, że jak nacisnę: "Usuń" to wyświetla mi się informacja: "Del" oraz od razu usuwa użytkownika, ale gdy dam Zmień i poustawiam tam wszystko, to wyświetla mi się informacja: "Ok", ale zmienia się jedynie w tym podglądzie (pod tym gdzie pisze // Koniec GET) a nie zmienia się w tym formularzu co jest w środku Get'a, można jakimś sposobem wyświetlić nowe dane, tak aby przetrwała mi zmienna $txt ?.

Pozdrawiam i z góry dziękuje.


Edit.:
Jak zobaczycie jakąś literówkę to pewnie mój błąd w czasie pisania posta, ponieważ skróciłem ten kod o kilkadziesiąt linijek w formularzu i wyświetlaniu, tak aby był bardziej czytelny, przejrzysty.
ze4lot
Możesz spróbować przechowywania w zmiennej sesyjnej
Giluś
No tak zrobiłem coś takiego:

  1. if($zwsumvt) $_SESSION['msg_wiad'] = "".wiadomosc("success", "<span class='wym'>Ok</span>")."";
  2.  
  3. header("Location: ?a=zwsu");


I wyświetlanie:
  1. echo $_SESSION['msg_wiad'];


Niby działa, ale to nie to, ponieważ nawet gdy przejdę inną stronę i później wrócę ponownie na ?a=zwsu, to i tak mam wiadomość: "Ok".

Może istnieje jakiś inny sposób ?.

Pozdrawiam i z góry dziękuje.
pitu
Dodaj sprawdzanie czy do formularza przechodzisz z innej strony/podstrony. Jeżeli tak czyść sesje.
Giluś
Cytat(pitu120 @ 16.08.2012, 09:46:13 ) *
Dodaj sprawdzanie czy do formularza przechodzisz z innej strony/podstrony. Jeżeli tak czyść sesje.


Nie rozumiem, pokaż jakiś przykład..
Bo puki co zrobiłem sobie ciasto na 5sekund, jest lepiej ale jeśli ktoś szybko wypełnia formularz to jeszcze będzie miał wiadomość "Ok" a dopiero zaczął wpisywać coś do formularzu smile.gif.

Pozdrawiam i dzięki za odpowiedzi wink.gif.
pitu
Spróbuj:
  1. if(isset($_SERVER['HTTP_REFERER'])) {
  2. $_SESSION['msg_wiad'] = '';
  3. }
Giluś
Dzięki bardzo, mam jeszcze drugie pytanie ale to napisze w innym wątku.

Pozdrawiam.
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.