<?php
$link = mysql_connect("localhost","2","2"); //Подключаемся к серверу базы данных
mysql_select_db("2",$link); //Выбираем базу
$posts = mysql_query("SELECT * FROM zakaz");
$total_posts = mysql_num_rows($posts); //Считаем число строк в таблице с сообщениями (posts)
//Итак, начало положено. Теперь будем писать функцию для отображения ссылок на другие страницы с
//сообщениями, собственно говоря сам постраничный вывод. Это не слишком сложная функция, но и не самая
// простая, т.к. меньше она быть не должна, а больше по вашему усмотрению. Мы задаем функции 4 аргумента
//(в комментарии они описаны). Вы можете добавить несколько примочек в эту функцию на свой вкус я дал вам лишь
//основу, дальше двигайтесь сами. Можно например выделить ссылку на текущую страничку.
function print_links($total,$page,$number,$links) //1 аргумент - всего сообщений, 2 - номер текущей страницы,
//3 - число сообщений на странице, 4 - число отображаемых ссылок
{
$return = null;
$pages = ceil($total/$number); //Вычисляем сколько должно получиться страниц
if ($page+$links <= $pages)
{
$start = $page;
}
else
{
$start = $pages-($links-1);
$finish = $pages;
}
if ($start < 0)
{
$start = 1;
}
for ($i=$start;$i<=$finish;$i++) //Записываем в переменную ссылки
{
$return .= "<a href='?page=$i.'>".$i."</a>";
}
return $return; }
//Итак, функция у нас готова. В ней вы можете указать сколько ссылок будет отображаться и сколько сообщений выводить.
//Осталось самое легкое: надо вывести сообщения в браузер, с учетом номера страницы, на которой сейчас посетитель.
//Для начала добавим небольшую проверку. Если у вас не указан номер страницы, то по умолчанию вам будет отображаться
//первая страница. МОжно добавить также дополнительные проверки, чтобы исключить работу скрипта при запросах вида:
//$#$## или фав1324. Это повысит безопасность скрипта, а следовательно и сайта.
if (!isset($page)) { $page = "1"; } //Здесь мы делаем проверку. Если переменная page (номер страницы)
// не указана, то ей присваивается значение 1
print print_links($total_posts,$page,"10","5"); //Выводим в браузер ссылки
$query = mysql_query("SELECT * FROM zakaz LIMIT ".(($page-1)*10).",10 "); //Выбираем нужное число сообщений
while ($row=mysql_fetch_array($query)) { print "<br>".$row['ФИО']."_".$row['Адрес']."_".$row['Телефон']."_"."<br>"; //Выводим сообщения (дизайн делайте сами)
}
mysql_close($link);
?>
Нужна помощь с mySQL и PHP
нужно что бы при выводе данных тоесть записей из mySQL, записи делились на страницы, 10 записей на странице, остальные 1,2,3,4,5,6 и т.д
Буду признателен любой помощи!
Дополнительно:
---------------------------------------------------------------------------
Вот массив который выводит данные:
$i=0;
while ($row = mysql_fetch_array($result, MYSQL_NUM))
{
if( $i%2 )
echo "<tr BGCOLOR=\"#ADD8E6\">";
else
echo "<tr BGCOLOR=\"#E0FFFF\">";
echo "<td>".$row[0]."<td>".$row[1]."<td>".$row[2]."<td>".$row[3]."<td><a href=\"delete.php?id=".$row[0]."&op=delete\"><img src=b_drop.png></a>"."<td><a href=\"edit.php?id=".$row[0]."&id1=".$row[1]."&id2=".$row[2]."&id3=".$row[3]."\"><img src=b_edit.png title=edit>";
$i++;
}
limit n,m
где n - номер записи, с которой начать выводд, m - количество записей
когда переходит по ссылке на др. страницу делаешь новый запрос
с нужными n,m
Может не до конца понял,но есть примерно такой код:
Спасибо, все понятно, все работает! :)