Fliand
Well-Known Member
- Регистрация
- 16.09.2007
- Сообщения
- 81
Вот хочу написать новостной скрипт. И возник вопрос. Мне нужно, что на главно стр отображались новости, но ни полностью, а токо начало новости и далее мы могли нажимать на ссылку читать дальше и уже просматривать новсть полностью.
Вот сделал так, но не уверен, что это правильно. Плиз подскажите как это лучше сделать.
Вот сделал так, но не уверен, что это правильно. Плиз подскажите как это лучше сделать.
Код:
<!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></title>
<link href="styles/style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="all">
<div id="main">
<div id="top"><h1>Лента новостей</h1></div>
<?php
require_once 'functions.php';
$link = connect_db();
$rows = mysql_query("SELECT COUNT(*) FROM news;");
$rows = mysql_fetch_array($rows);
$rows = $rows['COUNT(*)'];
if(isset($_GET['news'])) {
$page = $_GET['news'];
$num_news = $rows;
if($page < 1) $page = 1;
if($page > $num_news) $page = $num_news;
$query = "SELECT * FROM news WHERE id=".$page.";";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$head = $row['head'];
$nick = $row['nick'];
$msg = $row['text'];
$date = $row['date'];
$id = $row['id'];
?>
<!-- ВЫВОД ПОЛНОГО СООБЩЕНИЯ -->
<?php
} else {
if($rows == 0) {
?>
<p>Новостей нет <b>:(</b></p>
<?php
}
$page = $_GET['page'];
$num_page = ceil($rows / $posts);
if(!isset($page)) $page = 1;
if($page < 1) $page = 1;
if($page > $num_page) $page = $num_page;
$i = 0;
$start = ($page-1) * $posts;
$result = mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT ".$start.", ".$posts.";");
if($result) {
while($row = mysql_fetch_array($result)) {
$i++;
$head = $row['head'];
$nick = $row['nick'];
$msg = $row['text'];
$date = $row['date'];
$id = $row['id'];
?>
<!-- ВЫВОД ННЕПОЛНЫХ СООБЩЕНИЙ -->
<?php
}
}
mysql_close($link);
$url_admin = 'admin.php';
if($num_page != 1) {
echo "<div class=\"pages\">";
$start_page = start_page($page, $num);
$end_page = end_page($page, $num, $num_page);
if((($page-$num)-1) > 0) echo "<a href=\"$url_admin?page=1\">1</a><b>...</b>";
if($page > 1) echo "<a href=\"$url_admin?page=".($page-1)."\" title=\"Предыдущая страница\"><</a>";
for($i = $start_page; $i <= $end_page; $i++) {
if($i == $page) {
?>
<a href="<?=$url_admin."?page=".$i;?>" id="this_page"><?=$i;?></a>
<?php
} else {
?>
<a href="<?=$url_admin."?page=".$i;?>" title="<?=$i;?>"><?=$i;?></a>
<?php
}
}
if($page < $num_page) echo "<a href=\"$url_admin?page=".($page+1)."\" title=\"Следующая старница\">></a>";
if(($page+$num) < $num_page) echo "<b>...</b><a href=\"$url_admin?page=$num_page\">$num_page</a>";
echo "</div>";
}
<?php
}
?>