Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak wyświtlic wynik w oknie obok?
Forum PHP.pl > Forum > Przedszkole
soldiernr1
Mamy tabelkę (2 okna). W oknie 1 mamy:

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  4. <meta name="generator" content="PSPad editor, www.pspad.com">
  5.  
  6. <title>typowanie</title>
  7. </head>
  8. <form action="zamowienie.php" method="post">
  9. Twój typ:
  10. <INPUT TYPE="radio" NAME="znak" VALUE="1"> 1
  11. <INPUT TYPE="radio" NAME="znak" VALUE="X"> X
  12. <INPUT TYPE="radio" NAME="znak" VALUE="2"> 2
  13. </li>
  14. <input type="submit" value="OK" />
  15. </body>
  16. </html>



w oknie 2 ma się wyświetlić wybór użytkownika. Jak spowodować by po kliknięciu OK 1,X lub 2 wyświetliło się w oknie obok i automatycznie nastąpiła blokada ponownego wyboru którejś z opcji (1,X,2)?
sledziator
Dajesz w formie target="_blank", czyli:
  1. <form action="zamowienie.php" method="post" target="_blank">

To ci otworzy nowe okno
Potem musisz po stronie przeglądarki zablokować, wysyłkę, tu najłatwiej wykorzystać JAVASCRIPT / JQUERY, np:
  1. $("form").submit(function(){
  2. $("input").attr('disabled', 'disabled');
  3. });

W przykładze wyżej, po wysałniu formularza, dodajesz atrybut disabled="disabled" do wszystkich inputów. Nie wiem co dokładnie chcesz blokować, więc przykład jest bardzo ogólny . Mozesz oczywiście dostosować co chcesz blokować, poczytaj o selektorach w jquery.
d3ut3r
o coś takiego chodziło ?

http://jsfiddle.net/d3ut3r/ZGmxw/
d3ut3r
css tylko dla celów estetycznych, js w dokumencie w którym jest formularz w sekcji head (nie zapomnij dołączyć jQuery).
d3ut3r
powinno być dokładnie tak jak w linku który podałem:

  1. <head>
  2. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  3. <script type="text/javascript">
  4. $(document).ready(function(){
  5.  
  6. $('#tabela form').submit(function(){
  7.  
  8. var wartosc=$('.radio:checked').val();
  9. $('.radio').attr('disabled','disabled');
  10. $('#tabela td span').html(wartosc);
  11. return false;
  12.  
  13. });
  14.  
  15. });
  16. </script>
  17. <style type="text/css">
  18. #tabela{
  19. border:1px solid black;
  20. border-collapse:collapse;
  21. }
  22. #tabela td{
  23. border:1px solid black;
  24. padding:20px;
  25. }
  26. </head>
  27. <table id="tabela">
  28. <tr>
  29. <td>
  30. <form action="zamowienie.php" method="post">
  31. Twój typ:
  32. <input type="radio" name="znak" value="1" class="radio" /> 1
  33. <input type="radio" name="znak" value="X" class="radio" /> X
  34. <input type="radio" name="znak" value="2" class="radio" /> 2
  35. <input type="submit" value="OK" />
  36. </form>
  37. </td>
  38. <td>Wybrano: <span></span></td>
  39. </tr>
  40. </body>
  41. </html>


dane nie są nigdzie wysyłane (zamowienie.php może być puste).
d3ut3r
trochę na kolanie ale powinno zadziałać:

  1. <head>
  2. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  3. <script type="text/javascript">
  4. $(document).ready(function(){
  5.  
  6. $('#tabela form').submit(function(){
  7.  
  8. var nr=parseInt($(this).attr('rel'));
  9. var wartosc=$('.radio'+nr+':checked').val();
  10. $('.radio'+nr).attr('disabled','disabled');
  11. $(this).parent().next('td').html(wartosc);
  12. return false;
  13.  
  14. });
  15.  
  16. });
  17. </script>
  18. <style type="text/css">
  19. #tabela{
  20. border:1px solid black;
  21. border-collapse:collapse;
  22. }
  23. #tabela td{
  24. border:1px solid black;
  25. padding:20px;
  26. }
  27. </head>
  28. <table id="tabela">
  29. <?php
  30. for ($i=1;$i<=30;$i++):
  31. ?>
  32. <tr>
  33. <td>
  34. <form rel="<?=$i?>" action="zamowienie.php" method="post">
  35. Twój typ:
  36. <input type="radio" name="znak<?=$i?>" value="1" class="radio<?=$i?>" /> 1
  37. <input type="radio" name="znak<?=$i?>" value="X" class="radio<?=$i?>" /> X
  38. <input type="radio" name="znak<?=$i?>" value="2" class="radio<?=$i?>" /> 2
  39. <input type="submit" value="OK" />
  40. </form>
  41. </td>
  42. <td>Wybrano: <span></span></td>
  43. </tr>
  44. <?php
  45. endfor;
  46. ?>
  47. </body>
  48. </html>
soldiernr1
Hmm, nie działa. Strona wyświetla tabelę i po wybraniu opcji i kliknięciu OK nic się nie dzieje. Testowałem również na JSFIDDLE i też nie działa.
d3ut3r
dziwne bo u mnie działa smile.gif

tam są fragmenty kodu php nazwij plik np skrypt.php i wrzuć go na serwer i sprawdź Czy nie działa, ew. podaj link. Wkleję jeszcze raz kod:

  1. <html>
  2. <head>
  3. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.  
  7. $('#tabela form').submit(function(){
  8.  
  9. var nr=parseInt($(this).attr('rel'));
  10. var wartosc=$('.radio'+nr+':checked').val();
  11. $('.radio'+nr).attr('disabled','disabled');
  12. $(this).parent().next('td').html(wartosc);
  13. return false;
  14.  
  15. });
  16.  
  17. });
  18. </script>
  19. <style type="text/css">
  20. #tabela{
  21. border:1px solid black;
  22. border-collapse:collapse;
  23. }
  24. #tabela td{
  25. border:1px solid black;
  26. padding:20px;
  27. }
  28. </style>
  29. </head>
  30. <body>
  31. <table id="tabela">
  32. <?php
  33. for ($i=1;$i<=30;$i++):
  34. ?>
  35. <tr>
  36. <td>
  37. <form rel="<?=$i?>" action="zamowienie.php" method="post">
  38. Twój typ:
  39. <input type="radio" name="znak<?=$i?>" value="1" class="radio<?=$i?>" /> 1
  40. <input type="radio" name="znak<?=$i?>" value="X" class="radio<?=$i?>" /> X
  41. <input type="radio" name="znak<?=$i?>" value="2" class="radio<?=$i?>" /> 2
  42. <input type="submit" value="OK" />
  43. </form>
  44. </td>
  45. <td>Wybrano: <span></span></td>
  46. </tr>
  47. <?php
  48. endfor;
  49. ?>
  50. </table>
  51. </body>
  52. </html>
soldiernr1
z perspektywy pisania kodu widzę jak wazne jest okreslenie zamierzen na początku (by ominąć nieścisłości).
Tak chyba będzie najszybciej:
(strona w budowie nieużytkowana)
Powyższa stronka działa na zasadzie wprowadzania danych na sztywno (wysyłka formularza i wprowadzanie danych ręcznie)
Potrzebuję skrypt, który zautomatyzuje wybór opcji przez użytkownika (w przypadku 15 użytkowników wprowadzanie danych juz jest czasochłonne i może nie być nieomylne). Czyli tak jak wcześniej pisałem:
Uzytkownik klika jedną z opcji zatwierdza i obok wyświetla sie jego wybór. Dodatkowo po odświeżeniu strony jego wybór jest zapisany i nie może już go zmienić.
d3ut3r
Podałem Ci już gotowca, sorry ale jeżeli zamierzasz uczyć sie tworzyć strony www to nie wystarczy z każdym problemem iść na forum smile.gif skopiuj kod który Ci podałem działa on na 100% zapisz go do innego pliku i przeanalizuj i wyciągnij wnioski dlaczego u mnie działa a u Ciebie nie.

Cytat
Dodatkowo po odświeżeniu strony jego wybór jest zapisany i nie może już go zmienić.


To już zupełnie inna bajka ... myślę, że wybrałeś za trudny temat zaczyna się zawsze od podstaw a kursów w sieci jest naprawdę sporo smile.gif
soldiernr1
Cytat
Podałem Ci już gotowca, sorry ale jeżeli zamierzasz uczyć sie tworzyć strony www to nie wystarczy z każdym problemem iść na forum smile.gif skopiuj kod który Ci podałem działa on na 100% zapisz go do innego pliku i przeanalizuj i wyciągnij wnioski dlaczego u mnie działa a u Ciebie nie.


Działa wystarczy że zmieniłem plik na php jednak jak juz wiesz chodziło mi o co innego. Ok, dzieki za pomoc.
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.