Есть страница, поделенная div'ами, слева меню справа основная форма. В основной форме Справочник категорий с возможностью добавления. При добавлении категорий обновляется список с учетом добавленной. Но вот это было бы все хорошо если так, а так почему то не всегда обновляется этот самый список. Вот и вопрос почему это так?
основное окно:
category.php
<script type="text/javascript" src="../js/xmlhttprequest.js?x=25"></script>
<script type="text/javascript" src="../js/admin.js?x=1"></script>
</head>
<body>
<input type="hidden" id="who" value="cat">
<center>Название категории
<input name="name_category" id="name_category" type="text" value="Тест">
<select size="1" name="theme" id="id_theme">
<? global $db;
$i=1;
$sql = mysql_query("SELECT * FROM theme",$db);
while ($row = mysql_fetch_array($sql))
{
echo "<option value=$row[0]>$row[1]</option>";
$i++;
}
?>
</select>
<button onclick=AddCategory()>Добавить</button>
.....
admin.js
function RequestComplete()
{
if (req_show_cat.readyState == 4 && req_show_cat.status==200)
{
var result = document.getElementById("category_list");
result.innerHTML = req_show_cat.responseText;
}
}
function admin_showCategory()
{
req_show_cat = getXmlHttpRequest();
req_show_cat.onreadystatechange = RequestComplete;
req_show_cat.open("POST","action.php", true);
req_show_cat.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
param="who=list_category";
req_show_cat.send(param);
}
function AddCategory()
{ req_add_cat = getXmlHttpRequest();
req_add_cat.open("POST", "action.php", true);
req_add_cat.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
param="who="+document.getElementById('who').value+"&id_theme="+document.getElementById('id_theme').value +"&name_category="+document.getElementById('name_category').value+"&action=insert";
req_add_cat.send(param);
admin_showCategory();
}
action.php
case "list_category": //Список категорий
echo "<table border=1>
<tr>
<th>№<br>п/п</th><th>Название категории</th><th>Тип</th><th colspan=2>Действие</th>
</tr>";
$i=1;
$sql = mysql_query("SELECT c.id_category, c.name_category, t.name_theme FROM category c, theme t where c.id_theme = t.id_theme order by c.name_category",$db);
while ($row = mysql_fetch_array($sql))
{
echo "<tr><td>$i</td><td>$row[1]</td><td>$row[2]</td>
<td><a href='action.php?who=update_category&id=$row[0]' class='show'>Редактировать</a></td>
<td>Удалить</td></tr>";
$i++;
}
echo "</table>";
break;
Спасибо!