Witam,
pod adresem http://vbch.nazwa.pl...re1/visitas.php mam formularz. Przy każdym polu jest "+" po kliknięciu którego otwiera się nowe okno w okienku wyswietlane są w postaci linków rekordy z bazy, po kliknięciu w rekord tekst zostaje wpisany do formularza. Mój problem polega na tym, że po przejściu na drugą i kolenją stronę, kliknięty tekst wpisany zostaje na button "reset" a nie do wybranego pola. A kolejny problem to to, że po użyciu wyszukiwarki tekst nie wpisuje się wogóle.

  1. Plik: visitas.php
  2.  
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  5. <title>Aplikacja testowa</title>
  6. <script src="http://code.jquery.com/jquery-latest.js"></script>
  7.  
  8.  
  9. <link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title" charset="utf-8">
  10. <script type="text/javascript">
  11. $(document).ready(function(){
  12.  
  13. $("form#submit").submit(function() {
  14. valid = true;
  15. $('select, input', this).each(function(){
  16. if($(this).val() == ''){
  17. $('div.blad').fadeIn(400).delay(4000).fadeOut(400);
  18. valid = false;
  19. return false;
  20. }
  21. });
  22.  
  23. if(!valid) return false;
  24.  
  25. var data = $(this).serialize();
  26.  
  27. $.ajax({
  28. type: "POST",
  29. url: "http://vbch.nazwa.pl/iten/inserts/insert.php",
  30. data: data,
  31. success: function(){
  32. $('div.dodano').fadeIn(400);
  33. setTimeout(function(){ $("div.dodano").fadeOut(400) }, 4000);
  34. }
  35. });
  36. return false;
  37. });
  38.  
  39. $('form#submit label').append(' <a href="#"><img src="../images/add.png"></a>');
  40. $('form#submit label a').click(function(){
  41. id = $(this).parent().attr('for');
  42. win = window.open('http://vbch.nazwa.pl/iten/pag/options.php?id=' + id, 'win', 'status=0,resizable=0,toolbar=0,location=0,menubar=0,directories=0,scrollbars=0,h
    eight=300,width=300,
  43. left=100');
  44. return false;
  45. });
  46. });
  47.  
  48. </script>
  49. </head>
  50. <body>
  51. <div id="content">
  52. <h1>Aplikacja testowa</h1>
  53. <form id="submit" method="post" name="submit" action="">
  54. <fieldset>
  55. <legend>Visitas</legend>
  56.  
  57. <label for="iddecomercial">iddecomercial:</label>
  58. <br />
  59. <input type="text" name="iddecomercial" class="text" size="20" />
  60. <br />
  61. <label for="fecha">fecha:</label>
  62. <br />
  63. <input type="text" name="fecha" class="text" size="20" />
  64. <br />
  65. <label for="hora">hora:</label>
  66. <br />
  67. <input type="text" name="hora" class="text" size="20" />
  68. <br />
  69. <label for="duracion">duracion:</label>
  70. <br />
  71. <input type="text" name="duracion" class="text" size="20" />
  72. <br />
  73. <label for="tipovisita">Tipo visita:</label>
  74. <br />
  75. <input type="text" name="tipovisita" class="text" size="20" />
  76. <br />
  77. <label for="iddetipoinstalacion">Tipo instalacion:</label>
  78. <br />
  79. <input type="text" name="iddetipoinstalacion" class="text" size="20" />
  80. <br />
  81. <label for="observaciones">observaciones:</label>
  82. <br />
  83. <input type="text" name="observaciones" class="text" size="20" />
  84. <br />
  85. <br />
  86.  
  87.  
  88. <input type="reset" value="Reset">
  89. <button type="submit" id="submit"> Add </button>
  90. <a href="java script:history.back();"><button type="button">Back</button></a>
  91. </fieldset>
  92. </form>
  93.  
  94.  
  95.  
  96. <div class="dodano" style="display:none;">
  97. <p><img class="tick" src="tick.png" alt="" />New position is saved</p>
  98. </div>
  99. <div class="blad" style="display:none;">
  100. <p><img class="error" src="error.png" alt="" />Fill all fields in form!</p>
  101. <FORM>
  102. <INPUT type="button" value="Cencel" onclick="history.back()">
  103. </FORM>
  104. </div>
  105.  
  106. </div>
  107.  
  108. </body>


  1. Plik: options.php
  2. <head>
  3.  
  4. <!-- <![CDATA[
  5.  
  6.  
  7. function szukaj(formularz) {
  8. plik = "szukaj.php?q="+formularz.q.value;
  9. element = document.getElementById("wynik");
  10. $('ol').hide()
  11. xml = null;
  12. element.innerHTML="";
  13. try {
  14. xml = new ActiveXObject("Microsoft.XMLHTTP"); // IE
  15. } catch(e) {
  16. try {
  17. xml = new XMLHttpRequest(); // Mozilla/FireFox/Opera
  18. } catch(e) {
  19. xml = null;
  20. }
  21. }
  22. if (xml != null) {
  23. xml.onreadystatechange = function() {
  24. if (xml.readyState==4) {
  25. element.innerHTML=xml.responseText;
  26. }
  27. }
  28. xml.open("GET", plik, true);
  29. xml.send(null);
  30. }
  31. return false;
  32. }
  33.  
  34.  
  35. // ]]> -->
  36. </script>
  37. </head>
  38. <body>
  39.  
  40. <fieldset>
  41. <form action="index.php" method="get" onsubmit="return szukaj(this)">
  42. <div>
  43. <input type="text" name="q" />
  44. <input type="submit" value="search" />
  45. </div></form>
  46. <button onclick="window.location.href = '../tables/tipovisita.php'">Add new</button>
  47. <button onclick="window.location.href = '../index.html'">Back</button>
  48. </fieldset>
  49. <div id="wynik"></div>
  50.  
  51. <ol>
  52.  
  53.  
  54. <?
  55. function pasek($rekordow,$na_stronie,$na_pasku,$skrypt,$s) {
  56. $stron = ceil($rekordow/$na_stronie);
  57. if ($s<1) $s=1;
  58. if ($s>$stron) $s=$stron;
  59. $koniec = $s+$na_pasku;
  60. if ($s<=$na_pasku) $koniec = $na_pasku*2+1;
  61. if ($koniec>$stron) $koniec = $stron;
  62. $start = $koniec-$na_pasku*2;
  63. if ($start<1) $start=1;
  64. if ($s>1) $p = "<a href='$skrypt".($s-1)."'><<<</a>";
  65. else $p = "<span style='color:gray'><<<</span>";
  66. if ($s<$stron) $n = "<a href='$skrypt".($s+1)."'>>>></a>";
  67. else $n = "<span style='color:gray'>>>></span>";
  68. for ($i=$start; $i<=$koniec; $i++) {
  69. if ($i==$s) $l .= " <span style='color:#cc0000;'><b>$i</b></span> ";
  70. else $l .= "<a href='$skrypt$i'>$i</a>";
  71. }
  72. if ($rekordow<1) $wynik = "brak informacji spełniających kryteria wyszukiwania";
  73. else $wynik = "Find records: $rekordow, page $s from $stron<br />";
  74. if ($stron>1) $wynik .= "$p - $l - $n";
  75. return $wynik;
  76. }//
  77. ?>
  78.  
  79.  
  80.  
  81.  
  82. <script type="text/javascript">
  83. $(document).ready(function(){
  84. $('a').click(function(){
  85. v = $(this).html();
  86. $('input[name=<?php echo $_GET['id']; ?>]', opener.document).val(v);
  87. //window.close();
  88. });
  89. });
  90. </script>
  91.  
  92. <?php
  93. $s = ($_GET["s"]>1)?number_format($_GET["s"], 0, "", ""):1;
  94. $id = $_GET['id'];
  95. $na_stronie = 5;
  96. $na_pasku = 50;
  97. $skrypt = "options.php?s=";
  98. //$skrypt = 'options.php?id='.$id.'&s=';
  99.  
  100. if (mysql_connect($sql_serwer, $sql_login, $sql_haslo)
  101. and mysql_select_db($sql_baza)) {
  102.  
  103. $start = ($s-1)*$na_stronie;
  104. $wynik = mysql_query("SELECT SQL_CALC_FOUND_ROWS tipovisita
  105. FROM tipovisitas LIMIT $start, $na_stronie
  106. ");
  107. $rekordow = mysql_result(mysql_query("SELECT FOUND_ROWS()"),0);
  108.  
  109. $stron = ceil($rekordow/$na_stronie);
  110. if ($s>$stron and $rekordow>0) {
  111. $start = ($stron-1)*$na_stronie;
  112. $wynik = mysql_query("SELECT tipovisita
  113. FROM tipovisitas LIMIT $start,
  114. ");
  115. }
  116.  
  117. }
  118. echo "<p style='text-align:center;'>";
  119. echo pasek($rekordow,$na_stronie,$na_pasku,$skrypt,$s);
  120. //echo "</p>";
  121. while($wynik and $dane = mysql_fetch_assoc($wynik)) {
  122. foreach($dane as $pole) echo '<li><a href="#">'.$pole.'</a>' ;
  123. }
  124. ?>
  125. <div>
  126.  
  127. </div>
  128. </body>


Pierwsza część problemu
W pliku o options.php
było
  1. $skrypt = "options.php?s=";

a miało być
  1. $skrypt = 'options.php?id='.$id.'&s=';

Teraz kliknięty tekst poprawnie wpisuje się do formularza, tylko pojawił sie kolejny problem po kliknięciu w numer kolejnej strony, zarówno kliknięty numer jak i "<<<", ">>>" również wpisyją sie do formularza. Jak sie tego pozbyć?
No i druga część tematu. Czemu po użyciu wyszukiwarki kliknięty rekord nie wpisuje sie do formularza? Gdzie jest błąd?
Proszę o pomoc