Това са кодовете
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
|
Странициране без рефреш
|
Урок за VIDEOTUTORIALS-BG.COM
|
</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<style type="text/css">
h2{ text-align: center; }
div#news{ width: 500px; border: 2px solid; margin: 0 auto;}
div#pages{ width: 500px; border: 2px solid; margin: 0 auto; text-align: center;}
div#news img, div#pages img{ width: 16px; height: 16px; display: block; margin: 0 auto; }
div#news h4{ margin: 2px 0px; background: #aaa; padding: 1px 0 1px 10px; }
div#news div{ margin: 2px 0px; background: #0000ff; padding: 4px 10px; text-indent: 20px; }
</style>
<script type="text/javascript" src="jquery-latest.js"></script>
<script type="text/javascript">
$(function(){
// Зарежадаме броя на всички резултати
jQuery.post("page.php", { "type" : "getPageLength" }, function(data){
// Обект, в който ще съхраняваме данните
window.p = {
// Резултати на страница
results: 5,
// Има ли активна заявка
active: false,
// Текуща страница
current: 1
}
// Брой страници
p.total = Math.ceil( data / p.results );
// Показваме броя страници
$("div#pages span:last").html(p.total);
// Зареждаме първа страница
loadPage(p.current);
}, "html");
});
function loadPage(number){
// Има ли активна заявка
if(p.active) return; p.active = true;
// Слагаме картинката за зареждане
$("#news").html("<img src='spinner.gif' alt='' />");
//Зареждаме страницата
jQuery.post("page.php", { "page" : number, "howMuch": p.results}, function(data){
// Показваме резултатите
$("#news").html(data);
// Показваме текущата страница
$("div#pages span:first").html(p.current);
// Вече няма активни заявки
p.active = false;
}, "html");
}
// Следваща и предишна страница
function next(){
if( p.current == p.total )return;
loadPage(++p.current);
}
function previous(){
if( p.current == 1 )return;
loadPage(--p.current);
}
</script>
</head>
<body>
<h2>Нашите новини</h2>
<div id="news">
<img src='spinner.gif' alt='' />
</div>
<br />
<div id="pages">
<a href="javascript: previous();" title="">Предишна</a>
<b><span>1</span>/<span>1</span></b>
<a href="javascript: next();" title="">Следваща</a>
</div>
</body>
</html>
Код:
<?php
# Документа съдържа HTML
header('Content-Type: text/html; charset=windows-1251');
# Забранявам кеширането на файла
header("Cache-Control:no-cache");
# За изпратените данни
function p($value){
# Имаме ли данни
if(!isset($_POST[$value])) return false;
# Връщаме стойността
return $_POST[$value];
}
# Има ли изпратени данни
if(
p("type") || ( p("page") && p("howMuch") )
){
# Осъществяване на връзка с MySQL
$conn = @mysql_connect("localhost", "root", "")
or die("Не може да се осъществи връзката с MySQL!");
# Селектирме нужната база данни
$db = @mysql_select_db("flash", $conn)
or die("Селектирането на база данни е неуспешно!");
# Оправяме си енкодинга
mysql_query("SET NAMES UTF-8");
$table = "coments";
// Създаваме заявка
$query = ( p("type") == "getPageLength" )?
"select id from $table":
"select*from $table limit ".( p("page") - 1 )*p("howMuch").", ".p("howMuch")."";
// Успешна ли е заявката
if(!($query = @mysql_query($query, $conn))) die(mysql_error());
// Извеждаме броя на резултатите ако това е изискано
if( p("type") == "getPageLength" ) die( (string) mysql_num_rows($query) );
// Има ли резултати
if(mysql_num_rows($query) > 0) {
# Обхождане на резултатите
while($com = mysql_fetch_array($query)) {
# Извеждаме новините
$message=$com['message'];
$message=wordwrap($message,20," ",true);
echo '<br />
<div class="komentari">
<div class="avtor">Пуснал:'.$com['name'].'</div>
<div class="date">Дата:'.$com['date'].'</div>
<div class="com">'.$message.'</div>
</div>
';
}
} else echo("Няма добавени новини");
} else echo("Не сте изпратили данни!");
?>