AJAX и данные из <form>

vlad275

Новичок
AJAX и данные из <form>

С помощью AJAX вывожу список пользователей.
Начал писать фильтр, например выбрать только пользователей женского пола. Почему-то неотмеченные чекбоксы выводятся как отмеченные. Как поправить?
И как используя технологию Ajax задать поиск у меня результат запроса post из скрипта появляется в новом окне а не в innerHTML?

ajax_framework.js

Код:
/* -------------------------- */
/*   XMLHTTPRequest Enable    */
/* -------------------------- */
function createObject() {
var request_type;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
request_type = new ActiveXObject("Microsoft.XMLHTTP");
} else {
request_type = new XMLHttpRequest();
}
return request_type;
}

var http = createObject();

/* -------------------------- */
/*        SEARCH              */
/* -------------------------- */
function searchNameq() {
searchq = encodeURI(document.getElementById('searchq').value);
aaa = encodeURI(document.getElementById('aaa').value);
bbb = encodeURI(document.getElementById('bbb').value);
ccc = encodeURI(document.getElementById('ccc').value);
ddd = encodeURI(document.getElementById('ddd').value);
eee = encodeURI(document.getElementById('eee').value);
fff = encodeURI(document.getElementById('fff').value);
ggg = encodeURI(document.getElementById('ggg').value);
hhh = encodeURI(document.getElementById('hhh').value);
iii = encodeURI(document.getElementById('iii').value);
jjj = encodeURI(document.getElementById('jjj').value);
kkk = encodeURI(document.getElementById('kkk').value);
lll = encodeURI(document.getElementById('lll').value);
mmm = encodeURI(document.getElementById('mmm').value);
nnn = encodeURI(document.getElementById('nnn').value);
ooo = encodeURI(document.getElementById('ooo').value);
ppp = encodeURI(document.getElementById('ppp').value);
qqq = encodeURI(document.getElementById('qqq').value);
rrr = encodeURI(document.getElementById('rrr').value);
sss = encodeURI(document.getElementById('sss').value);
ttt = encodeURI(document.getElementById('ttt').value);
uuu = encodeURI(document.getElementById('uuu').value);

document.getElementById('msg').style.display = "block";
document.getElementById('msg').innerHTML = "Searching for <strong>" + searchq+"<br />aaa:"+aaa+"<br />bbb:"+bbb+"<br />ccc:"+ccc+"<br />ddd:"+ddd+"<br />eee:"+eee+"<br />fff:"+fff+"<br />ggg:"+ggg+"<br />hhh:"+hhh+"<br />iii:"+iii+"<br />jjj:"+jjj+"<br />kkk:"+kkk+"<br />lll:"+lll+"<br />mmm:"+mmm+"<br />nnn:"+nnn+"<br />ooo:"+ooo+"<br />ppp:"+ppp+"<br />qqq:"+qqq+"<br />rrr:"+rrr+"<br />sss:"+sss+"<br />ttt:"+ttt+"<br />uuu:"+uuu;
// Set te random number to add to URL request
nocache = Math.random();
http.open('get', 'in-search.php?name='+searchq+'&nocache='+nocache+'&aaa='+aaa+'&bbb='+bbb+'&ccc='+ccc+'&ddd='+ddd+'&eee='+eee+'&fff='+fff+'&ggg='+ggg+'&hhh='+hhh+'&iii='+iii+'&jjj='+jjj+'&kkk='+kkk+'&lll='+lll+'&mmm='+mmm+'&nnn='+nnn+'&ooo='+ooo+'&ppp='+ppp+'&qqq='+qqq+'&rrr='+rrr+'&sss='+sss+'&ttt='+ttt+'&uuu='+uuu);
http.onreadystatechange =  searchNameqReply;
http.send(null);
}
function searchNameqReply() {
if(http.readyState == 4){
var response = http.responseText;
document.getElementById('search-result').innerHTML = response;
}
}


employers.php
Код:
<html>
	<head>
		<title>Просмотр резюме</title>
		<meta http-equiv="Content-Language" content="ru">
		<!--meta http-equiv=Content-Type content="text/html; charset=windows-1251"-->
		<meta content="Creative KADR" name=r-d-v>
		<meta name="description" content="Интересует подбор домашнего персонала? Нужная информация здесь!>
		<link rel="shortcut icon" href="/favicon.gif" />
		<link rel="icon" href="/favicon.gif" type="image/gif" />
		<link href="styles.css" rel="stylesheet" type="text/css">
		<script language="javascript" src="ajax_framework.js"></script>
	</head>
	<body onLoad="javascript:searchNameq()">
		<center>
			<div class="frame" align=center style="background:#EEEEEE;width:769px;">
				<?php
					include('header.inc');
				?>
				<div align=left STYLE='margin-bottom:30px;margin-top:40px;'>
					<a href=index.php>Главная</a>-><a href=employers.php>Для работодателей</a>->Просмотр резюме
				</div>
				<form id="searchForm" name="searchForm" method="POST" action="javascript:insertTask();">
					<div class="searchInput" align=left STYLE=margin-left:20px;>
						<input name="searchq" type="text" id="searchq" size="30" onkeyup="javascript:searchNameq()"/><br />

					    <input name="aaa" id="aaa"  type=checkbox onkeyup="javascript:searchNameq()" /> Помощник по хозяйству<br />
					    <input name="bbb" id="bbb"   type=checkbox> Садовник<br />
					    <input name="ccc" id="ccc"  type=checkbox> Няня<br />
					    <input name="ddd" id="ddd" type=checkbox> Гувернантка<br />
					    <input name="eee" id="eee"  type=checkbox> Повар<br />
					    <input name="fff" id="fff"  type=checkbox> Домработница<br />
					    <input name="ggg" id="ggg"  type=checkbox> Логопед<br />
					    <input name="hhh" id="hhh"  type=checkbox> Репетитор<br />
					    <input name="iii" id="iii"  type=checkbox> Сиделка<br />
					    <input name="jjj" id="jjj"  type=checkbox> Персональный водитель<br />
					    <input name="kkk" id="kkk"  type=checkbox> Семейная пара<br />
					    <input name="lll" id="lll"  type=text size=40 MAXLENGTH=255> Другое<br />

						<select name="mmm" id="mmm"  >
							<option disabled>Выберите пол</option>
							<option value="F">Женский</option>
							<option value="M">Мужской</option>
						</select>
						Пол<br />
						<input name="nnn" id="nnn"  type="text" size="30" /> Опыт <br />
						<select name="ooo" id="ooo"  >
							<option>Любое</option>
							<option value="0">0</option>
							<option value="1">1</option>
							<option value="2">2</option>
							<option value="3">3</option>
							<option value="4">4</option>
							<option value="5">5</option>
							<option value="6">6</option>
							<option value="7">7</option>
							<option value="8">8</option>
							<option value="9">9</option>
							<option value="10">10</option>
							<option value="11">11</option>
							<option value="12">12</option>
							<option value="13">13</option>
							<option value="14">14</option>
							<option value="15">15</option>
							<option value="16">16</option>
							<option value="17">17</option>
							<option value="18">18</option>
							<option value="19">19</option>
							<option value="20">20</option>
							<option value="21">21</option>
						</select>
						Сколько у вас детей<br />
						
						<input name="ppp" id="ppp"  type="checkbox" size="30" /> Высшее педагогическое<br />
						<input name="qqq" id="qqq"   type="checkbox" size="30" /> Среднее педагогическое <br />
						<input name="rrr" id="rrr"   type="checkbox" size="30" /> Высшее медицинское<br />
						<input name="sss" id="sss"   type="checkbox" size="30" /> Среднее медицинское <br />
						<input name="ttt" id="ttt"   type="checkbox" size="30" /> Высшее другое<br />
						<input name="uuu" id="uuu"   type="checkbox" size="30" /> Среднее другое <br />
						
						<input type="button" name="submitSearch" id="submitSearch" value="Показать" onclick="javascript:searchNameq()"/>
					</div>
				</form>
				<fieldset>
					<legend>Список соискателей</legend>
					<div id="msg"></div>
					search-result:<div id="search-result"></div>
				</fieldset>

				<div align=center  style="margin-top:20px;display:inline;background:#EFEFEF ; float:left; width:769px;">
					<fieldset>
					</fieldset>
				</div>
			</div>
		</center>
	</body>
</html>
in-search.php

Код:
<?php
	//ini_set('display_errors',1);
	error_reporting(E_ALL ^E_NOTICE);

	//Берем из строки http.open('get', 'in-search.php?name='+searchq+'&nocache = '+nocache);
	$myvar_searchq = $_GET['name'] ;
	$myvar_aaa = $_GET['aaa'] ;
	$myvar_bbb = $_GET['bbb'] ;
	$myvar_ccc = $_GET['ccc'] ;
	$myvar_ccc = $_GET['ccc'] ;
	$myvar_ddd = $_GET['ddd'] ;
	$myvar_eee = $_GET['eee'] ;
	$myvar_fff = $_GET['fff'] ;
	$myvar_ggg = $_GET['ggg'] ;
	$myvar_hhh = $_GET['hhh'] ;
	$myvar_iii = $_GET['iii'] ;
	$myvar_jjj = $_GET['jjj'] ;
	$myvar_kkk = $_GET['kkk'] ;
	$myvar_lll = $_GET['lll'] ;
	$myvar_mmm = $_GET['mmm'] ;
	$myvar_nnn = $_GET['nnn'] ;
	$myvar_ooo = $_GET['ooo'] ;
	$myvar_ppp = $_GET['ppp'] ;
	$myvar_qqq = $_GET['qqq'] ;
	$myvar_rrr = $_GET['rrr'] ;
	$myvar_sss = $_GET['sss'] ;
	$myvar_ttt = $_GET['ttt'] ;
	$myvar_uuu = $_GET['uuu'] ;
	
	echo  "myvar_searchq:".$myvar_searchq."<br />";
	echo  "myvar_aaa:".$myvar_aaa."<br />";
	echo  "myvar_bbb:".$myvar_bbb."<br />";
	echo  "myvar_ccc:".$myvar_ccc."<br />";
	echo  "myvar_ddd:".$myvar_ddd."<br />";
	echo  "myvar_eee:".$myvar_eee."<br />";
	echo  "myvar_fff:".$myvar_fff."<br />";
	echo  "myvar_ggg:".$myvar_ggg."<br />";
	echo  "myvar_hhh:".$myvar_hhh."<br />";
	echo  "myvar_iii:".$myvar_iii."<br />";
	echo  "myvar_jjj:".$myvar_jjj."<br />";
	echo  "myvar_kkk:".$myvar_kkk."<br />";
	echo  "myvar_lll:".$myvar_lll."<br />";
	echo  "myvar_mmm:".$myvar_mmm."<br />";
	echo  "myvar_nnn:".$myvar_nnn."<br />";
	echo  "myvar_ooo:".$myvar_ooo."<br />";
	echo  "myvar_ppp:".$myvar_ppp."<br />";
	echo  "myvar_qqq:".$myvar_qqq."<br />";
	echo  "myvar_rrr:".$myvar_rrr."<br />";
	echo  "myvar_sss:".$myvar_sss."<br />";
	echo  "myvar_ttt:".$myvar_ttt."<br />";
	echo  "myvar_uuu:".$myvar_uuu."<br />";
	$c = mysql_connect("localhost", "root", "") or die("Problem mysql_connect");
	mysql_select_db("variantdialog_99k_db1") or die("Problem mysql_select_db");
	//$sql ="SELECT * FROM tCandidates WHERE intID=$myvar_searchq";

	$myvarchar_start=$_POST['start'];
	$myvarchar_end=$_POST['end'];
	if ($myvarchar_end<1){
		$myvarchar_start=0;
		$myvarchar_end=3;
	}
	echo $myvarchar_start;
	echo $myvarchar_end+"<br />";
	$sql ="SELECT * FROM tCandidates WHERE varcharStatus<>'on' LIMIT $myvarchar_start,$myvarchar_end";
	printf ($sql);
	$result = mysql_query($sql) or die("Problem mysql_query");
	//$f = mysql_fetch_array ($result) or die ("Problem mysql_fetch_array");
	
	$myvarchar_start=$myvarchar_start+3;
	$myvarchar_end=$myvarchar_end+3;
	
	echo "<form method=POST action=in-search.php><input name=start type=hidden value=$myvarchar_start><input name=end type=hidden value=$myvarchar_end><input type=submit value='->'</form>";
	
	echo "<form method=GET action=send.php>";
	while ($f = mysql_fetch_array ($result)) {
		$myvar_intID=$f['intID'];
		$myvar_intBirthyear=$f['intBirthyear'];
		
		$date_time_array = getdate( time() );
		$myvar_Age=$date_time_array['year']-$myvar_intBirthyear;
		$myvar_Age1 = substr($myvar_Age, 0, 1)*10;
		$myvar_Age2 = $myvar_Age1+10;

		$myvar_varcharWorkExperience=$f['varcharWorkExperience'];
		$myvar_varcharGender=$f['varcharGender'];
		$myvar_intChildren=$f['intChildren'];
		$myvar_varcharPicture=$f['varcharPicture'];
		
		$i=$i+1;									
		echo "<input type=checkbox name=idcheckbox$i>";
		echo "<input type=hidden name=idhidden$i value=$myvar_intID>";
		echo "ID: $myvar_intID<br />";
		echo "Имя: ".$f['varcharName']."<br />";
		echo "Отчество: ".$f['varcharSecondname']."<br />";
		echo "Возраст: $myvar_Age1-$myvar_Age2<br />";
		echo "Опыт работы: $myvar_varcharWorkExperience<br />";
		echo "Пол: $myvar_varcharGender<br />";
		echo "Детей: $myvar_intChildren<br />";
		echo "<img src=upload/$myvar_varcharPicture><hr STYLE=width:140px;/>";

	}
	echo "<label for=myvartext>Координаты для связи(ФИО, телефон, email, время звонка): </label><br /><textarea name=myvartext id=myvartext STYLE=width:500px;height:100px;></textarea><br />";
	echo "<input type=submit value='Отослать заявку' />";

	echo "</form>";
	
		
?>
 

dimagolov

Новичок
ты отформатировал свой код и запостил в 10 форумов, вдруг где сделают за тебя работу? зря старался, тут никто вникать в твою простыню не будет.
Почему-то неотмеченные чекбоксы выводятся как отмеченные.
отлаживай свой код и разбирайся почему
 

vlad275

Новичок
dimagolov
Хамство - это обязательный атрибут рускоязычных форумов?
 

damngood

Мозг был, но ушел...
vlad275
Написал чтолько, что никто читать не будет.

action="java script:insertTask();" - вообще ахтунк
 

vlad275

Новичок
damngood, Вы строите из себя супер спеца, а не знаете, что у checkbox значение хранится не в свойстве value, а в checked.
Если вы себя считаете постоянным пользователем этого форума, то должны знать, что движок форума режет слово javascript в коде на две части. Дальнейшие ваши сообщения буду проматывать не читая. Ваш негатив и отсутствие дельной информации - трата нервов и времени впустую.

All, Кто-нибудь использовал пагеризацию с технологией Ajax?
 

Adelf

Administrator
Команда форума
Ну я делал(ничего сложного). Но не хочу вникать в твой код.

$myvar_aaa = $_GET['aaa'] ; повторенное раз 20 - вааще кошмар :) и не единственный в этом коде.
 

damngood

Мозг был, но ушел...
vlad275
Солнце мое, не позорься, а? Значение чекбокса задается ТОЛЬКО через value атрибут, и никак иначе. Если только ты не хочешь иметь дефолтный "on" при помеченном чекбоксе в качестве его значения.

Что же качается моего сообщения, то было написано не про разрыв в слово javascript, а про то, что тебе там уперлось написать этот вызов функции просто везде. Хотя вполне бы хватило повесить ее на кнопку.
 
Сверху