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.
Plik: visitas.php
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Aplikacja testowa</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title" charset="utf-8">
<script type="text/javascript">
$(document).ready(function(){
$("form#submit").submit(function() {
valid = true;
$
('select, input', this
).each(function(){ if($(this).val() == ''){
$('div.blad').fadeIn(400).delay(4000).fadeOut(400);
valid = false;
return false;
}
});
if(!valid) return false;
$.ajax({
type: "POST",
url: "http://vbch.nazwa.pl/iten/inserts/insert.php",
data: data,
success: function(){
$('div.dodano').fadeIn(400);
setTimeout(function(){ $("div.dodano").fadeOut(400) }, 4000);
}
});
return false;
});
$('form#submit label').append(' <a href="#"><img src="../images/add.png"></a>');
$('form#submit label a').click(function(){
id = $(this).parent().attr('for');
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,
left=100');
return false;
});
});
</script>
</head>
<body>
<div id="content">
<h1>Aplikacja testowa</h1>
<form id="submit" method="post" name="submit" action="">
<fieldset>
<legend>Visitas</legend>
<label for="iddecomercial">iddecomercial:</label>
<br />
<input type="text" name="iddecomercial" class="text" size="20" />
<br />
<label for="fecha">fecha:</label>
<br />
<input type="text" name="fecha" class="text" size="20" />
<br />
<label for="hora">hora:</label>
<br />
<input type="text" name="hora" class="text" size="20" />
<br />
<label for="duracion">duracion:</label>
<br />
<input type="text" name="duracion" class="text" size="20" />
<br />
<label for="tipovisita">Tipo visita:</label>
<br />
<input type="text" name="tipovisita" class="text" size="20" />
<br />
<label for="iddetipoinstalacion">Tipo instalacion:</label>
<br />
<input type="text" name="iddetipoinstalacion" class="text" size="20" />
<br />
<label for="observaciones">observaciones:</label>
<br />
<input type="text" name="observaciones" class="text" size="20" />
<br />
<br />
<input type="reset" value="Reset">
<button type="submit" id="submit"> Add </button>
<a href="java script:history.back();"><button type="button">Back</button></a>
</fieldset>
</form>
<div class="dodano" style="display:none;">
<p><img class="tick" src="tick.png" alt="" />New position is saved</p>
</div>
<div class="blad" style="display:none;">
<p><img class="error" src="error.png" alt="" />Fill all fields in form!</p>
<FORM>
<INPUT type="button" value="Cencel" onclick="history.back()">
</FORM>
</div>
</div>
</body>
Plik: options.php
<head>
<!-- <![CDATA[
function szukaj(formularz) {
plik = "szukaj.php?q="+formularz.q.value;
element = document.getElementById("wynik");
$('ol').hide()
xml = null;
element.innerHTML="";
try {
xml = new ActiveXObject("Microsoft.XMLHTTP"); // IE
} catch(e) {
try {
xml = new XMLHttpRequest(); // Mozilla/FireFox/Opera
} catch(e) {
xml = null;
}
}
if (xml != null) {
xml.onreadystatechange = function() {
if (xml.readyState==4) {
element.innerHTML=xml.responseText;
}
}
xml.open("GET", plik, true);
xml.send(null);
}
return false;
}
// ]]> -->
</script>
</head>
<body>
<fieldset>
<form action="index.php" method="get" onsubmit="return szukaj(this)">
<div>
<input type="text" name="q" />
<input type="submit" value="search" />
</div></form>
<button onclick="window.location.href = '../tables/tipovisita.php'">Add new</button>
<button onclick="window.location.href = '../index.html'">Back</button>
</fieldset>
<div id="wynik"></div>
<ol>
<?
function pasek($rekordow,$na_stronie,$na_pasku,$skrypt,$s) {
$stron = ceil($rekordow/$na_stronie); if ($s<1) $s=1;
if ($s>$stron) $s=$stron;
$koniec = $s+$na_pasku;
if ($s<=$na_pasku) $koniec = $na_pasku*2+1;
if ($koniec>$stron) $koniec = $stron;
$start = $koniec-$na_pasku*2;
if ($start<1) $start=1;
if ($s>1) $p = "<a href='$skrypt".($s-1)."'><<<</a>";
else $p = "<span style='color:gray'><<<</span>";
if ($s<$stron) $n = "<a href='$skrypt".($s+1)."'>>>></a>";
else $n = "<span style='color:gray'>>>></span>";
for ($i=$start; $i<=$koniec; $i++) {
if ($i==$s) $l .= " <span style='color:#cc0000;'><b>$i</b></span> ";
else $l .= "<a href='$skrypt$i'>$i</a>";
}
if ($rekordow<1) $wynik = "brak informacji spełniających kryteria wyszukiwania";
else $wynik = "Find records: $rekordow, page $s from $stron<br />";
if ($stron>1) $wynik .= "$p - $l - $n";
return $wynik;
}//
?>
<script type="text/javascript">
$(document).ready(function(){
$('a').click(function(){
v = $(this).html();
$('input[name=
<?php echo $_GET['id']; ?>]', opener.document).val(v);
//window.close();
});
});
</script>
<?php
$id = $_GET['id'];
$na_stronie = 5;
$na_pasku = 50;
$skrypt = "options.php?s=";
//$skrypt = 'options.php?id='.$id.'&s=';
$start = ($s-1)*$na_stronie;
$wynik = mysql_query("SELECT SQL_CALC_FOUND_ROWS tipovisita FROM tipovisitas LIMIT $start, $na_stronie
");
$stron = ceil($rekordow/$na_stronie); if ($s>$stron and $rekordow>0) {
$start = ($stron-1)*$na_stronie;
FROM tipovisitas LIMIT $start,
");
}
}
echo "<p style='text-align:center;'>"; echo pasek
($rekordow,$na_stronie,$na_pasku,$skrypt,$s); //echo "</p>";
foreach($dane as $pole) echo '<li><a href="#">'.$pole.'</a>' ; }
?>
<div>
</div>
</body>
Pierwsza część problemu
W pliku o options.php
było
$skrypt = "options.php?s=";
a miało być
$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