Добрый день
есть проблема.. сделал гостевую на аяксе.. все нормально выводится.. но не могу сделать переключение страниц в гостевой книге без перезагрузки страницы
index.php
<script src="jquery-1.9.1.min.js"></script>
</head>
<?php
$set['title']='Гостевая книга '; // заголовок страницы
?>
<!-- код формы -->
<form id="myForm" action="site/action" onsubmit="clearForm(this); return true;">
Сообщение:
<textarea id="msg" cols="36" rows="4" style="width:90%;" ></textarea>
</br></br>
<input type="submit" value="Отправить сообщение">
</form>
<div id="messages">
</div>
<script>
function splash()
{
if (document.myForm.msg.value =='')
{
alert ("Заполните текст сообщения!");
return false;
}
return true;
}
// загрузка сообщений из БД в контейнер messages
function show_messages()
{
$.ajax({
url: "show.php",
data: "&page=<?=intval($_GET['page'])?>",
cache: false,
success: function(html){
$("#messages").html(html);
}
});
}
function clearForm(f) {
window.setTimeout(function() {
f.elements.msg.value='';
}, 100);
}
$(document).ready(function(){
show_messages();
// контроль и отправка данных на сервер в фоновом режиме при нажатии на кнопку "отправить сообщение"
$("#myForm").submit(function(){
var msg = $("#msg").val();
if (msg =='')
{
alert ("Заполните текст сообщения!");
return false;
}
$.ajax({
type: "POST",
url: "action.php",
data: "msg="+msg+"&action=add",
success: function(msg){
show_messages();
}
});
return false;
});
show_messages();
setInterval("show_messages()", 10000);
var flagGoIn = true;
$('#myForm')
.off('keydown')
.on('keydown', function(event){
if (event.keyCode == 17) {
$('#myForm').on('keydown', function(event){
var msg = $("#msg").val();
if (event.keyCode == 13 && flagGoIn) {
if (msg =='')
{
alert ("Заполните текст сообщения!");
return false;
}
$.ajax({
type: "POST",
url: "action.php",
data: "msg="+msg+"&action=add",
success: function(msg){
show_messages();
clearForm();
}
});
$('#msg').val('');
//$('#myForm').off('keydown');
flagGoIn = false;
}
})
.keyup(function(event){
flagGoIn = true;
});
}
});
});
</script>
</body>
</html>
action.php
// получаем переменные из формы
//$username=$_REQUEST['username'];
$msg=$_REQUEST['msg'];
$action=$_REQUEST['action'];
$msg=esc(mysql_real_escape_string(stripcslashes(htmlspecialchars($_REQUEST['msg']))));
if ($action=="add")
{
// добавление данных в БД
$sql="INSERT INTO `us_guest` (id_user,id_user_**, time, msg) values('$us[id]', '0', '$time', '$msg')";
$r=mysql_query ($sql);
}
?>
show.php
$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `us_guest` WHERE `id_user_**` = 0"),0);
$k_page=k_page($k_post,$set['p_str']);
if ($page!="end")
{
$page=$_REQUEST['page'];
}
if ($page=="end")
{
$page=$k_page;
}
$start=$set['p_str']*$page-$set['p_str'];
if ($k_post==0)
{
echo "Нет сообщений<br/>\n";
}
$r=mysql_query("SELECT * FROM `us_guest` WHERE `id_user_**` = 0 ORDER BY id DESC LIMIT $start, $set[p_str] ");// выбор всех записей из БД, отсортированных так, что самая последняя отправленная запись будет всегда первой.
while ($post=mysql_fetch_array($r)) // для каждой записи организуем вывод.
{
......
}
echo'<a href="?page=2">Следующая страница</a><br/>';
Мне нужно чтобы при нажатии на ссылку "Следующая страница" .. страница менялась динамически без перезагрузки страницы.. подскажите пожалуйста как это можно сделать ?