السلام عليكم ورحمة الله تعالى وبركاته
اليوم قمت ببرمجة سكريبت يقوم بعرض معطيات موجودة في قاعدة بيانات على عدة صفحات ما عليك الا ان تحدد عدد العناصر التي تريدها في كل صفحة
<?php
@mysql_connect('localhost','root','') or die('not connected');
@mysql_select_db('learn')or die('not connected');
function makelink($page,$string,$style=''){
return '<a href="http://localhost/id7ake2/multi_pages.php?page='.$page.'" style="'.$style.'">'.$string.'</a> ';
}
$query = 'SELECT username FROM users';
$element_page = 4;//عدد العناصر في كل صفحة
$elements_num = mysql_num_rows(mysql_query($query));//معرفة عدد العناصر الموجودة
if(isset($_GET['page']) AND (int)$_GET['page']>0){//هدا الشرط لتفادي ذغرة SQL injection
$page = $_GET['page'];
}else{
$page = 1;
}
if($elements_num%$element_page == 0){
$pages = (int)$elements_num/$element_page ;
}else{
$pages = (int)($elements_num/$element_page)+1;
}
$start = ($page-1)*$element_page;//المكان الذي سييبدأ بجلب العناصر منه
$query = "SELECT username,id FROM users LIMIT $start,$element_page";
if(!$query_run = mysql_query($query)){
echo mysql_error();
}else if($page <=$pages){//التاكد من ان الصفحة موجودة
while ($element = mysql_fetch_assoc($query_run)) {
echo $element['id'].'==>'.$element['username'].'<br>';
}
}else{
echo 'no page founded<br>';
}
if ($page!=1) {
echo makelink($page-1, 'back');
}
for ($i=1; $i <=$pages ; $i++) {
if ($i == $page) {
echo makelink($i, $i, 'color:red;text-decoration:none;');
}else{
echo makelink($i,$i);
}
}
if ($page<$pages) {
echo makelink($page+1, 'next');
}
?>