|
|
|
| Скажите пожалуйста как можно можно сделать архив для вывода заметок такой как и на движке wp | |
|
|
|
|
|
|
|
для: antosha23
(03.12.2010 в 12:08)
| | Если заметки хранятся в базе, то выбирать заметки по дате(месяцу) и сформировать соответствующее меню на странице вывода архива | |
|
|
|
|
|
|
|
для: Slo_Nik
(03.12.2010 в 16:14)
| | меню сформировано но не выводятся следующие заметки
<?php include("blocs/bd.php");
if (isset($_GET['date']))
{
$date = $_GET['date'];
}
else
{
exit("<p>Вы обратились к файлу без необходимых параметров. Проверьте адресную строку браузера.");
}
$new_date = $date;
$date_begin = $date;
$date++;
$date_end = $date;
$date_begin = $date_begin."-01";
$date_end = $date_end."-01";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title><? echo "Архив уроков по photoshop за $new_date" ?></title>
<link href="css/style.css" rel="stylesheet" type="text/css">
</head>
<!--начало выравнивание сайта по центру-->
<div id="conteyner">
<!--шапка сайта/меню горизонтальное-->
<?php include("blocs/header.php"); ?>
<?php include("blocs/newsles.php"); ?>
<!--фон для контента-->
<div id="content_top"></div>
<div id="content">
<table width="100%" border="0">
<tr>
<td id="wrapper" valign="top">
<?php
$result77 = mysql_query("SELECT str FROM options", $db);
$myrow77 = mysql_fetch_array($result77);
$num = $myrow77["str"];
// Извлекаем из URL текущую страницу
@$page = $_GET['page'];
// Определяем общее число сообщений в базе данных
$result00 = mysql_query("SELECT COUNT(*) FROM lessons");
$temp = mysql_fetch_array($result00);
$posts = $temp[0];
// Находим общее число страниц
$total = (($posts - 1) / $num) + 1;
$total = intval($total);
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
// Вычисляем начиная с какого номера
// следует выводить сообщения
$start = $page * $num - $num;
// Выбираем $num сообщений начиная с номера $start
$result4=mysql_query( "SELECT id,title,description,mini_img,view, date FROM lessons WHERE date>'$date_begin' AND date<'$date_end' ORDER BY date LIMIT $start, $num ", $db );
if (mysql_num_rows($result4)>0)
{
$myrow4=mysql_fetch_array($result4);
do
{$date = $myrow4["date"];
list($year, $month, $day) = explode("-", $date); // Или сразу, за мес{$date = $myrow["date"];
list($year, $month, $day) = explode("-", $date); // Или сразу, за место $date, поставить $myrow["date"]
$date = "$day.$month.$year"; // Дата в новом формате
printf("<table class='bg_les'>
<tr>
<td valign='top'>
<span id='post_les' ><img class='mini_img' src='%s'>%s</span>
<div class='post_date'> опубликовано: $date</div>
<div class='post_desc'>%s</div>
<table class='info'>
<tr>
<td valign='top' id='post_view' >просмотров: %s</td>
<td valign='top' ><div id='post_bg'><a href='lessons.php?id=%s'>читать далее</a></div></td>
</tr>
</table> </td>
</tr>
</table> ",$myrow4["mini_img"],$myrow4["title"],$myrow4["description"],$myrow4["view"],$myrow4["id"] );
}
while ($myrow4=mysql_fetch_array($result4));
// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 5 > 0) $page1left = ' <a href=archive_ps.php?date='.$date.'&page='. ($page - 5) .'>'.($page - 5) .'</a> | ';
if($page - 4 > 0) $page1left = ' <a href=archive_ps.php?date='.$date.'&page='. ($page - 4) .'>'.($page - 4) .'</a> | ';
if($page - 3 > 0) $page1left = ' <a href=archive_ps.php?date='.$date.'&page='. ($page - 3) .'>'.($page - 3) .'</a> | ';
if($page - 2 > 0) $page1left = ' <a href=archive_ps.php?date='.$date.'&page='. ($page - 2) .'>'.($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = ' <a href=archive_ps.php?date='.$date.'&page='. ($page - 1) .'>'.($page - 1) .'</a> | ';
if($page + 5 <= $total) $page5right = ' | <a href=archive_ps.php?date='.$date.'&page='. ($page + 5) .'>'.($page + 5) .'</a> | ';
if($page + 4 <= $total) $page4right = ' | <a href=archive_ps.php?date='.$date.'&page='. ($page + 4) .'>'.($page + 4) .'</a> | ';
if($page + 3 <= $total) $page3right = ' | <a href=archive_ps.php?date='.$date.'&page='. ($page + 3) .'>'.($page + 3) .'</a> | ';
if($page + 2 <= $total) $page2right = ' | <a href=archive_ps.php?date='.$date.'&page='. ($page + 2) .'>'.($page + 2) .'</a> | ';
if($page + 1 <= $total) $page1right = ' | <a href=archive_ps.php?date='.$date.'&page='. ($page + 1) .'>'.($page + 1) .'</a> | ';
// Вывод меню если страниц больше одной
if ($total > 1)
{
Error_Reporting(E_ALL & ~E_NOTICE);
echo "<div class=\"pstrnav\">";
echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
echo "</div>";
}
}
else
{echo"<p>Информация по запросу не может быть выбранна в таблице нет записей.</p>";
exit();
}?>
</td>
</tr>
</table>
</td>
<td id="siadbar"valign="top"> <?php include("blocs/siadbar.php"); ?></td>
</tr>
</table>
</div>
<div id="content_bot"></div>
<!--конец контента сайта-->
<!--футер сайта-->
<?php include("blocs/foter.php"); ?>
</div>
<!--конец выравнивание сайта по центру-->
</body>
</html>
пишет в таблице нет записей хотя там еще 3 есть | |
|
|
|
|
|
|
|
для: antosha23
(03.12.2010 в 23:39)
| | Зачем Вы вывалили весь код? Тут у Вас и постраничная навигация и html разметка и ещё не понятно что.
error_reporting() у Вас в середине кода, а должна быть в начале всего кода и уберите ~E_NOTICE
уберите цикл do()while() , используйте просто while()
когда выкладываете код, то используйте специальные теги форматирования, что бы код подсвечивался, а то смотреть его.... | |
|
|
|
|
|
|
|
для: antosha23
(03.12.2010 в 23:39)
| | > Вы обратились к файлу без необходимых параметров. Проверьте адресную строку браузера.
Ага, и вдолбите запрос вручную. | |
|
|
|