Controls::

Итак, сейчас я расскажу как можно добавлять свои новости, новости вашего сайта прям с него, при помощи пароля. В данном скрипте содержатся 3 файла, 2 файла html и 1 файл cgi .
Свой рассказ я начну с описания содержимого cgi файла. Да, забыл сказать, скрипт использовался в деле на сайте бесплатного хостинга HOLM.RU .

Значит так, первое что необходимо сделать, так это создать cgi файл, в него вставляете следующее(там, где вы должны вписать свою информацию, я выделил другим цветом, а так же сразу подписал что для чего нужно!!!):

#! /usr/bin/perl

read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s///g;
$value =~ s/<([^>]|\n)*>//g;
$FORM{$name} = $value;
}

&get_date;
$logfile = "/home/s/your-site.h14.ru/WWW/newstape.html"; # исправьте "your-site" на то имя, которое используете

if($FORM{'parol'} eq 'vash parol') # вместо "vash parol" напишите свой пароль
{
open (FILE, ">>$logfile");

#ниже используете при желании свой html код, используя date, FORM{'text'} и FORM{'name'} с символом $ перед ними
#но можете оставить тот, что уже написан

print FILE "</noscript><TABLE align=center><TR><TD class=sh>  $date</TD></TR>";
print FILE "<TR><TD width=500>$FORM{'text'}</td></TR>";
print FILE "<TR><td>Добавил: $FORM{'name'}";
print FILE "</TD></TR></TABLE><P><noscript><body>";
close(FILE);
print "Content-type: text/html\n\n";
print "<H1>Отправлено! <A href='javascript:history.back(1)'> НАЗАД</A></H1>";
}

else
{
print "Content-type: text/html\n\n";
print "<H1>А пароль-то неправильный! Ха-ха-ха! <A href='javascript:history.back(1)'> НАЗАД</A></H1>";
}

exit;

sub get_date
{
@days = ('Воскресенье','Понедельник','Вторник','Среда',
'Четверг','Пятница','Суббота');
@months = ('Января','Февраля','Марта','Апреля','Мая','Июня','Июля',
'Августа','Сентября','Октября','Ноября','Декабря');

($sec,$min,$hour,$mday,$mon,$year,$wday) = (localtime(time))[0,1,2,3,4,5,6];
$time = sprintf("%02d:%02d:%02d",$hour,$min,$sec);
$year += 1900;
$date = "$days[$wday], $mday $months[$mon], $year at $time";
}

Данный файл нужно положить в папку /cgi-bin/ и установить CHMOD 711 . Имя файлу нужно дать newsadder.cgi, таким образом у нас есть файл newsadder.cgi (что б мы не запутались, имена всем файлам просьба давать те, которые написаны у меня в статье!)...

Теперь об оставшихся html файлах...
как уже было сказано, их двое. Начнем с первого файла, дадим ему имя addnews.html (хотя можете дать любое, это не важно, в отличие от других файлов). В нем будет следующий код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<META NAME="Generator" CONTENT="Macro HTML 1.40 beta">
</HEAD>
<BODY topmargin=0 leftmargin=0 marginheight=0 marginwidth=0>
<BR><BR><BR><BR>
<Center>

<FORM action="http://your-site.h12.ru/cgi-bin/newsadder.cgi" method="post">
<TABLE border="1">
<TR>
<TD>Имя: <INPUT maxLength=80 name="name" size=10></td>
<td>Пароль: <INPUT maxLength=80 name="parol" size=10></td>
</tr>
<tr>
lttd colspan=2>
<TEXTAREA NAME="text" ROWS="10" COLS="40"></TEXTAREA><BR>
<INPUT onclick="javascript: document.all['text'].value=''" type=button value="Очистить">
<INPUT type=submit value="Отправить >>">
</TD></TR></TBODY></TABLE>
</FORM>

</Center>
</HTML>

Собственно этот файл содержит форму отправки ваших новостей, здесь де и нужно вводить ваш пароль...
Ну и последний файл, дадим ему имя newstape.html. В конец файла newstape.html будут писаться ваши новости. В случае использования хостинга holm.ru вы должны положить этот файл в вашу папку /WWW/ на сервере. Вот из чего он состоит:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
</HEAD>
<>BODY topmargin=0 leftmargin=0 marginheight=0 marginwidth=0>

По мере накопления новостей, файл будет разрастаться. Когда станет слишком большим, вы по-новой закачиваете этот файл с базовым HTML кодом. Ну вот и все... :)
Hosted by uCoz