Сделать стартовой Добавить в избранное
 
Панель управления
логин :  
пароль :  
   
   
Регистрация
Напомнить пароль?
Статьи по Windows 9x Me XP 2003 Longhorn Vista Linux FreeBSD Apache MySQL хостинг PHP Perl » Webmaster » PHP » Каталог ссылок на PHP
Навигация по сайту
Главная Софт
Форум FeedBack
 
Расширенный поиск
Календарь
«    Октябрь 2007    »
ПнВтСрЧтПтСбВс
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
Популярные статьи
 

 

Webmaster » PHP : Каталог ссылок на PHP
 
Мы рассмотри каталог ссылок на PHP который не использует MySQL.

Функции

Наш каталог будет не простым. Он будет иметь администрирование, причём администрирование будет защищено логином и паролем.
Сначала разбёрём фнукции каталога:
1. Добавление ссылки
2. Вывод ссылок
3. Подсчёт количества ссылок в каждой категории(разделе).
Функции администрирования
1. Вывод ссылок непровернных
2. Вывод проверенных ссылок
3. Редактирование любых сcылок
4. Удаление ссылок
5. Оценка ссылок
Файлы
Мы будем использовать вот какие файлы:

1. addlink.php
В этом файле стоит форма для добавления ссылок. А именно: Название, Адрес, Категория, Описание. Эта форма ссылаеться на файл tomoder.php - action=tomoder.php.

2. tomoder.php В этом файле обрабатываеться ссылка, ей присваеться значение check=0, имееться ввиду то что она ещё непроверена, а значит не допущена к выводу.

3. файлы вывода ссылок
В этих файлох будет выводиться ссылки

4. admin.php
Файл администрирования защищенный паролем и логином. Использует edit.php

5. edit.php
Содержит в себе форму для редактирования ссылок в admin.php
6. id.txt
содержит id ссылки 6. links.txt
содержит ссылки

Код
addlink.php

Название:

Адрес:








Здесь сложного ничего нет - простая форма.

tomode.php
$idopen = fopen('id.txt','r'); // открываем файл с id прошлой ссылки
$idlink = fgets($idopen, 1000); // переменной idlink присвоем значение id прошлой ссылки
$idlink++; // увеличиваем id на 1
fclose($idopen); // закрываем файлик
$idopen = fopen('id.txt', 'w'); // открываем заново
fputs($idopen, $idlink); // добавляем новый id
fclose($idopen); // закрываем файлик

$file = fopen('links.txt', 'r'); // открываем файл со ссылками
$links = unserialize(fread($file, 100000)); // расшифровыаем данный массив со ссылками
fclose($file); // закрываем файлик

function replace ($string)
{

$string = str_replace("::","::",$string);
$string = str_replace("<","<",$string);
$string = str_replace(">",">",$string);
$string = str_replace('\'',""",$string);
$string = str_replace("\n","
",$string);
$string = str_replace('"',""",$string);
$string = str_replace("%20"," ",$string);
$string = str_replace("$","S;",$string);
return $string;

}
// это функция для заменения некоторых символов в данных ввёденых пользователем

$moder = "0"; // ссылка не проверена
$op = replace($op); // испльзуем функцию для заменения тэгов и т.д.
$name = replace($name); // испльзуем функцию для заменения тэгов и т.д.
$website = replace($website); // испльзуем функцию для заменения тэгов и т.д.
$links[] = array (
'url' => "$website", // адрес
'name' => "$name", // имя
'description' => "$op", // описание
'cat' => "$kat", // категория
'stars' => "$starz", // оценка модератора
'check' => "$moder", // проверена или нет
'id' => "$idlink", // id ссылки
);

// создаём массив ссылки

$file = fopen('links.txt', 'w'); // открываем файлик со ссылками
$text = serialize($links); // зашифровываем новую ссылку
fwrite ($file,"$text"); // записываем в файлик

fclose($file); // закрываем файлик

admin.php
if (($PHP_AUTH_USER!='login')||($PHP_AUTH_PW!='pass')) { // login - ваш логин, pass - ваш пароль
header("WWW-Authenticate: Basic realm=\"Введите логин и пароль\"");
header("HTTP/1.0 401 Unauthorized");
exit();
}
?>

$filename = "links.txt"; // файл со ссылками
function open_links($filename) {
$open = fopen($filename, "r");
$links = unserialize(fread($open,100000));
fclose($open);
return $links;
}
// функция для открывания ссылок

function save_links($filename, $links) {
$open = fopen($filename, "w");
fputs($open, serialize($links));
fclose($open);
return 1;
}
// функция для открывания ссылок
?>

$links = open_links($filename); // открываем ссылки
echo "Непроверенные:
"; // говорим что щас будут непроверенные ссылки
foreach ($links as $link) { // раскрадываем массив массивов
if($link[check]==0) { // если не проеренно
echo "$link[name]
$link[url]
$link[description]
$link[cat]
$link[id]

\n"; // вывод ссылок
$idd = $id;
}
}

echo "Проверенные:
"; // говорим что щас будут проверенные ссылки
foreach ($links as $link) { // раскрадываем массив массивов
if($link[check]==1) { // если проверено
echo "$link[name]
$link[url]
$link[description]
$link[cat]
$link[id]

\n"; // вывод ссылок
$idd = $id;
}
}
?>

foreach($links as $link) {
if ($id==$link[id]) { // если id в урле совпадает с id ссылки то..
. include "edit.php"; // ... то открываем файл edit.php для редактирования данной ссылки
break;
}
}
?>

if(!empty($button)){ // если кнопка сохранения не пуста (в edit.php)
if (isset($editlink)) { // если есть новая подредактированая ссылка
foreach($links as $key=>$link) { // передаём ключ к массиву
if ($link[id]==$editlink[id]) { // если совпадают id
$links[$key] = $editlink; // вносим новые значения в эту ссылку
save_links($filename, $links); // и записываем эту ссылку в файл
break;
}
}
}

}

if(!empty($button1)){ // если кнопка удаления не пуста (в edit.php)
if (isset($editlink)) { если есть новая подредактированая ссылка
foreach($links as $key=>$link) { // передаём ключ к массиву
if ($link[id]==$editlink[id]) { // если совпадают id
$links[$key] = $editlink; // вносим новые значения в эту ссылку
unset($links[$key]); // удаляем ссылку
save_links($filename, $links); // сохраняем массив
break;
}
}
}

}
?>

edit.php

Название:

Адрес:

Оценка:

CHECK:





echo "
";
?>


 
 
 
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
 
 
  • Каталог Ссылок
  • Вложение больших файлов
  • Использование модулей CGI.pm и LWP
  • Создание news-reader'а с веб-интерфейсом
  • Основы работы с HTML с использованием HTML::Parser
  •  
     
     (голосов: 0)
    Комментарии (0)  Распечатать
     
     
    Добавление комментария
       
     

    РАЗДЕЛЫ СТАТЕЙ
    На нашем сайте Вы можете почитать интересные статьи о разных операционных системах и не только о них.
     
    WINDOWS 98 - Все об ОС версии 9x - настройка, скрытые возможности, оптимизация, рекомендации и многое другое...
    FAQ   Безопасность   Восстановление   Другое   Настройка   Оптимизация   Установка


    WINDOWS 2000 - установка, настройка, оптимизация, ускорения работы, администрирование и многое другое.
       FAQ   Администрирование   Безопасность   Восстановление   Настройка   Оптимизация   Разное   Установка


    WINDOWS 2003 - настройка, полные обзоры данной ОС, оптимизация, скриншоты, FAQ...
       FAQ   Администрирование   Безопасность   Настрока   Разное   Установка


    WINDOWS XP - настройка, скрытые возможности, оптимизация, рекомендации и многое другое...
       FAQ   Безопасность   Восстановление   Другое  Настройка   Оптимизация   Установка


    WINDOWS Vista - установка, настройка, оптимизация, рекомендации и многое другое...
       FAQ   Другое   Обзор системы   Установка


    UNIX - установка, настройка, рекомендации и многое другое...
       Linux   FreeBSD   Сетевые технологии   Открытое программное обеспечение   Интернет   Разное   FAQ


    Администратору / пользователю - практические советы по работе с софтом железом и пр...
       Hardware   Internet   lan&more   Software    Exchange Server    Windows Server 2008


    Windows Server - Советы и рекомендации по настройке Windows серверов
       Exchange Server    Windows Server 2008    ISA Server


    Веб-мастеру - Apache, ASP, Flash, MySQL, хостинг и многое другое...
       Apache   ASP   Разное   Flash   Java/CSS/HTML/DHTML   MySQL   Хостинг   Perl   PHP
     
      Если после прочтения статьи у Вас возникли вопросы/предложения/дополнения, Вы можете изложить их на нашем форуме в соответствующем разделе.
    Если Вы являетесь автором статьи которая размещена на нашем портале незаконно, просим Вас сообщить нам об этом.