a_n_d_y
Гуру форума
- Регистрация
- 26 Мар 2006
- Сообщения
- 470
- Реакции
- 62
- Автор темы
- #1
Короче хрен могу понять проблемы.
Вот код.
Хрень в том что во вторую функцию нихуа не передается, а если отрезаю JS sel, то переходять все данные. Есен перец что лохонклся гле-то в в фнкции на яваскрипте. Мож кто разрулит?
Вот код.
PHP:
<?php
require_once("../ajax/xajax.inc.php");
require "../../db.php";
require "../inc.php";
unset($logged_user);
session_start();
if (sess_check($logged_user)==0) header('location:../index.php');
session_register($logged_user);
if (!mysql_connect($SERVER,$USER,$PASSWD))
{
include "../../up.php";
echo "Нет коннекта с базой данных. Подождите 2 минуты.\n";
include "../../bottom.php";
exit;
}
mysql_select_db($DB);
mysql_query("set names cp1251");
$xajax = new xajax();
$xajax->registerFunction("psih");
$xajax->registerFunction("psih_res");
$xajax->debugOn();
function psih($id)
{
$content="<form id='players' onsubmit=\"xajax_psih_res(xajax.getFormValues('players'));return false;\">";
$res=mysql_query("blaabla bla"); // дело полюбому не в запрсе ;)
while ($r=mysql_fetch_array($res)){
$pl[]=array('name'=>$r['name'], 'id'=>$r['id'], 'moral'=>$r['moral']);
}
$max_num=12;
$num_pl=mysql_num_rows($res);
$num=min($max_num, $num_pl);
for ($i=0; $i<$num; $i++)
{
$content.="<li><select name='i_$i' id='i_$i' ".(($i>0)?"disabled":"")." OnChange=\"sel('$i','$num')\"><option>";
foreach ($pl as $v)
{
$content.="<option value=".$v['id'].">".$v['name']." (".$v['moral'].")";
}
$content.="</select></li>";
}
$content.="<input type=submit value='Поговорить'><input type=button onclick=\"xajax_psih('$id')\" value='Сбросить'></form>";
$objResponse = new xajaxResponse();
$objResponse->addAssign("result","innerHTML", $content);
return $objResponse;
}
function psih_res($arr)
{
foreach ($arr as $k=>$v)
{
$$k=$v;
}
$content="<pre>".var_export($arr, true)."</pre>";
$objResponse = new xajaxResponse();
$objResponse->addAssign("res","innerHTML", $content);
return $objResponse;
}
$xajax->processRequests();
if (getglobal('nochange')=='1' and $logged_user!='liv') header('location:../index.php');
if(isset($logged_user)) {
$pagetitle="Кабинет психолога";
include "../../up.php";
echo "<div id=\"result\"><script>xajax_psih('$logged_user');</script></div><div id=\"res\"></div>";
include "../../bottom.php";
?>
<script>function sel(selectid,selectnum)
{
var selectedid=xajax.$('i_'+selectid).options[xajax.$('i_'+selectid).selectedIndex].value;
var id=selectid*1;
for (var i=id+1; i<selectnum; i++)
{
for (var k=0; k<xajax.$('i_'+i).options.length; k++)
{
if (xajax.$('i_'+i).options[k].value==selectedid) {xajax.$('i_'+i).options[k]=null; }
}
}
xajax.$('i_'+selectid).disabled = true;
var next=id+1;
if (next<selectnum){
xajax.$('i_'+next).disabled = false;
}
};
</script>
<?}
?>