|
|
|
| Привет Всем. Я собрался написать каталог на РНР, начать я его смог, а закончить не могу. Помогите мне с правильным выводом объявлений и использованием команды цикла for.Код скрипта я приведу ниже.
<html>
<head>
<TITLE>Каталог ссылок от Дашевского Эдуарда.</TITLE>
<META HTTP-EQUIV="content-type" CONTENT="TEXT/HTML; CHARSET=windows-1251">
<style type="text/css">
<!--
.style1 {font-family: "Comic Sans MS"}
.style2 {font-family: "Times New Roman", Times, serif}
body {
background-image: url(t.gif);
}
-->
</style>
</head>
<body>
<p align="center"><img src="back.gif" width="300" height="80"></p>
<?php
###############################################################################
###############################################################################
##Скрипт "Каталог v1.0" предназначен для повышения Тиц Вашего сайта. ##
##Автор скрипта: Дашевский Эдуард. ##
##Скрипт написан: 10 сентября 2005г. ##
##Скрипт принадлежит автору. Запрещается распространять скрипт без ##
##авторского согласия. Что бы снять авторские ссылки обращайтесь на ##
##мэил: edik_dashevskii@mail.ru или свяжитесь со мной по асе: 34-661155-0. ##
###############################################################################
###############################################################################
// Начало скрипта
include "configuration.php";
echo "<body bgcolor=$bgcolor>";
$fod=getcwd();
$fold=$fod."/basa";
chdir($fold);
$fo=opendir($fold);
while ($read=readdir($fo))
{if(($read!=".")&&($read!=".."))
{
$a[]=$read;
asort($a);
}
}
closedir($fo);
@$ad=sizeof($a);
echo "<table bgcolor=FFFFFF width=800 align=center border=1><tr><td><center>Сейчас в базе $ad
ссылок</center></td></tr></table>";
$dir = ".";
$d = @opendir($dir);
if ($d) {
$list = array();
while (false !== ($e = readdir($d))) {
if ($e[0] == ".") continue;
$list[] = "$dir/$e";
}
rsort($list);
if ($list) {
foreach ($list as $fname) {
$f = @fopen($fname, "r"); if (!$f) continue;
$ssil = (fread($f,filesize($fname)));
$i = 0;
for ($i = 1; $i <= $ss; $i++)
{
echo "<table bgcolor=FFFFFF width=800 align=center border=1><tr><td><center>$i</center>$ssil</td></tr></table>";
}
}
}
}
?>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: Эдуард
(06.09.2005 в 17:06)
| | А в чём проблема? Что не работает? | |
|
|
|
|
|
|
|
для: cheops
(06.09.2005 в 17:59)
| | При создании скрипта я хотел использовать вместе функцию for и fread.Я добился чтения файлов из каталога basа. Но я не могу добиться вывода именно 10 объявлений. При использовании функции цикла, эти 10 таблиц создаются, а вывод получается такой: Сколько файлов в каталоге столько 10 таблиц и создаються, помогите решить эту проблему. | |
|
|
|
|
|
|
|
для: Эдуард
(07.09.2005 в 10:12)
| | Так как вопрос о постраничной навигации возникает достаточно часто, Artem S. написал специальную статью, которая помещена в разделе "Статьи о PHP" http://www.softtime.ru/info/articlephp.php?id_article=33, кроме того, вы можете посмотреть тему по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=3044, где приводится список тем с различными вариантами постраничной навигации. | |
|
|
|
|
|
|
|
для: cheops
(07.09.2005 в 13:20)
| | Сейчас попробуем. | |
|
|
|
|
|
|
|
для: Эдуард
(07.09.2005 в 15:47)
| | Каталог построен не на MySQL, А на обычных файлах. Покажите мне пожалуйста, как вывести на страницу содержимое файлов, и как сделать что бы выводилось определённое кол-во ссылок. Добавляю сам каталог(архив). Скачайте и посмотрите где моя ошибка. | |
|
|
|
|
|
|
|
для: Эдуард
(07.09.2005 в 16:08)
| | Хм... что-то не видно элементов постраничной навигации, они где сосредоточены? | |
|
|
|
|
|
|
|
для: cheops
(08.09.2005 в 02:04)
| | Пока что постраничной навигации нет, мне надо что бы на страницу выводилось содержимое файлов находящихся в basa, каталог ведь не на MySQL. | |
|
|
|
|
|
|
|
для: Эдуард
(08.09.2005 в 02:32)
| | Вот чего не понятно - они выводятся сейчас или нет? Должно выводится именно содержимое или названия файлов? Скрипт вывода в теме по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=4792 | |
|
|
|
|
|
|
|
для: cheops
(08.09.2005 в 02:39)
| | Содержимое файлов. | |
|
|
|
|
|
|
|
для: Эдуард
(08.09.2005 в 10:16)
| | Тепреь я решил написать скрипт на мускуле. Проблема проще:
При нажатии на кнопку навигации то есть << <<|1|2 и т .д. страница остаётся той же. Код скрипта:
<html>
<head>
<TITLE>Каталог ссылок от Дашевского Эдуарда.</TITLE>
<META HTTP-EQUIV="content-type" CONTENT="TEXT/HTML; CHARSET=windows-1251">
<style type="text/css">
<!--
.style1 {font-family: "Comic Sans MS"}
.style2 {font-family: "Times New Roman", Times, serif}
body {
background-image: url(t.gif);
}
-->
</style>
</head>
<body>
<p align="center"><img src="back.gif" width="300" height="80"></p>
<?php
###############################################################################
###############################################################################
##Скрипт "Каталог v1.0" предназначен для повышения Тиц Вашего сайта. ##
##Автор скрипта: Дашевский Эдуард. ##
##Скрипт написан: 10 сентября 2005г. ##
##Скрипт принадлежит автору. Запрещается распространять скрипт без ##
##авторского согласия. Что бы снять авторские ссылки обращайтесь на ##
##мэил: edik_dashevskii@mail.ru или свяжитесь со мной по асе: 34-661155-0. ##
###############################################################################
###############################################################################
// Начало скрипта
include "configuration.php";
@mysql_connect ($dblocation,$dbuser,$dbpasswd);
@mysql_query ("USE $dbname");
$page = $_GET['page'];
$result = mysql_query("SELECT * FROM basa");
$posts = mysql_num_rows($result);
$total = intval(($posts - 1) / $ss) + 1;
$page = intval($page);
if(empty($page) or $page < 0)
{
$page = 1;
}
if($page > $total)
{
$page = $total;
}
$start = $page * $ss - $ss;
$result = mysql_query("SELECT * FROM basa LIMIT 0, $ss");
while ( $postrow[] = mysql_fetch_array($result))
?>
<?php
echo "<center><table>";
for($i = 0; $i < $ss; $i++)
{
echo "<tr>
<td>".$postrow[$i]['id']."</td>
<td>".$postrow[$i]['name']."</td></tr>
<tr><td colspan=\"2\">".$postrow[$i]['objav']."</td></tr>";
}
echo "</table></center>";
?>
<?php
if ($page != 1)
{
$pervpage = "<a href= ./index.html?page=1><<</a>
<a href= ./index.html?page=". ($page - 1) ."><</a> ";
}
if ($page != $total)
{
$nextpage = " <a href= ./index.html?page=". ($page + 1) .">></a>
<a href= ./index.html?page=".$total.">>></a>";
}
if($page - 2 > 0)
{
$page2left = " <a href= ./index.html?page=". ($page - 2) .">". ($page - 2) ."</a> | ";
}
if($page - 1 > 0)
{
$page1left = "<a href= ./index.html?page=". ($page - 1) .">". ($page - 1) ."</a> | ";
}
if($page + 2 <= $total)
{
$page2right = " | <a href= ./index.html?page=". ($page + 2) .">". ($page + 2) ."</a>";
}
if($page + 1 <= $total)
{
$page1right = " | <a href= ./index.html?page=". ($page + 1) .">". ($page + 1) ."</a>";
}
echo "$pervpage $page2left $page1left <b> $page </b> $page1right $page2right $nextpage";
?>
</body>
</html>
|
Плиз, помогите кто нибудь. | |
|
|
|
|
|
|
|
для: Эдуард
(09.09.2005 в 16:52)
| | Следует заменить строки
<?php
$start = $page * $ss - $ss;
$result = mysql_query("SELECT * FROM basa LIMIT 0, $ss");
?>
|
на
<?php
$start = $page * $ss - $ss;
$result = mysql_query("SELECT * FROM basa LIMIT $start, $ss");
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(09.09.2005 в 18:56)
| | Огромное Спасибо. Всё прекрасно работает! | |
|
|
|