Голосование на сайте @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 9 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Black-Power
новый человек
0
Сообщения: 266
Зарегистрирован: 20.10.01
Откуда: Odessa mother
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 12 Август 2002, 07:32:00 
Пипл, есть голосовалка, уж больно она меня заперла, я бы не хотел ее менять на другую.
Подскажите как сделать так, чтобы после нажатия на кнопку проголосовать, Вы попадали на ту же страницу на которой и находились, а не перлись на др. с статистикой голосов.
Вот сайт со скриптом: www.drum-n-bass.com.ua
Black_Angel
новый человек
0
Сообщения: 53
Зарегистрирован: 21.03.02
Откуда: Санкт-Петербург
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 12 Август 2002, 19:31:00 
на главной странице в
<BLOCKQUOTE><font size="1" face="Verdana, Tahoma, sans-serif">code:</font><HR><pre>
<form action="http://www.drum-n-bass.com.ua/cgi-bin/vote/survey.pl" method="post" target="_blank">
</pre><HR></BLOCKQUOTE>
убери target="_blank", т.е. будет:
<BLOCKQUOTE><font size="1" face="Verdana, Tahoma, sans-serif">code:</font><HR><pre>
<form action="http://www.drum-n-bass.com.ua/cgi-bin/vote/survey.pl" method="post">
</pre><HR></BLOCKQUOTE>
А на странице http://www.drum-n-bass.com.ua/cgi-bin/vote/survey.pl поставь между <head> и </head>
<BLOCKQUOTE><font size="1" face="Verdana, Tahoma, sans-serif">code:</font><HR><pre>
<meta http-equiv="REFRESH" content="0; url=http://www.drum-n-bass.com.ua/">
</pre><HR></BLOCKQUOTE>
где content=кол-ву секунд переадрецации.
На самом деле оставь как есть, т.к. главная страница не перегружается, а результаты получаются в новом окне, которое можно закрыть.
Black-Power
новый человек
0
Сообщения: 266
Зарегистрирован: 20.10.01
Откуда: Odessa mother
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 02:10:00 
Black_Angel - огромное спасибо, попробую.
Все очень просто, странно , что я сам не допер [img]images/smiles/icon_smile.gif[/img]
Black-Power
новый человек
0
Сообщения: 266
Зарегистрирован: 20.10.01
Откуда: Odessa mother
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 02:17:00 
ага блин, не получается ни фига. выдает ошибку 500, в какое место его вставлять то надо ? Я не нашел там этих тегов, мне их надо самому вставлять. если да, то в какле место???

<CODE>
#!/usr/bin/perl
require "cfg.pl";
if ($ENV{'REQUEST_METHOD'} eq 'GET') {
@pairs = split(/&/, $ENV{'QUERY_STRING'});
}
elsif ($ENV{'REQUEST_METHOD'} eq 'POST') {
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@pairs = split(/&/, $buffer);
}
else {
&error('request_method');
}
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s/\n/\s/g;
if ($name && $value) { $input{$name} = $value; }
}
print "Content-type: text/html\n\n";
#ip
if ($ip_logging == 1) {
if (!$ENV{'REMOTE_HOST'}) {
$visitor=$ENV{'REMOTE_ADDR'};
}
else {
$visitor=$ENV{'REMOTE_HOST'};
}
open (ip, "<ip.txt") or &error("Невозможно открыть файл ip.txt");
if ($flock==1) {
flock ip, 2;
}
@ip=<ip>;
close(ip);
foreach $ip(@ip) {
chomp($ip);
@dip=split(/|/, $ip);
if ($ip eq "$visitor|$input{'id'}") {
&header;
print "<h2>Ваш ответ отвергнут</h2>";
print "Наши регистрационные данные говорят что Вы уже голосовали. Нет никакой необходимости голосовать второй раз.<br>\n";
print "Однако Вы можете посмотреть <a href=\"$result?id=$input{'id'}\">результаты опроса.</a><br>\n";
&footer;
&log_time;
exit;
}
}
open (wip, ">>ip.txt") or &error("Невозможно открыть ip.txt");
if ($flock==1) {
flock wip, 2;
}
print wip "$visitor|$input{'id'}\n";
close(wip);
&log_time;
}

##clean log
sub log_time {
$time=time();
open (iptime, "<iptime.txt") or &error("Невозможно открыть iptime.txt");
if ($flock==1) {
flock iptime, 2;
}
$iptime=<iptime>;
close(iptime);

$logtime=$time-$iptime;

if ($logtime>$log_clean) {
open (wiptime, ">iptime.txt") or &error("Невозможно открыть iptime.txt");
if ($flock==1) {
flock wiptime, 2;
}
print wiptime "$time";
close(wiptime);

open (cip, ">ip.txt") or &error("Невозможно открыть ip.txt");
if ($flock==1) {
flock cip, 2;
}
close(cip);
}
}
#
if ($input{'id'}=~ tr/;<>*|`&$!#()[]{}:'"//) {
print "Предупреждение Защиты! Действие отменено.<br>\n";
print "Пожалуйста не используйте сверхъестественные символы\n";
exit;
}
open (count, "<$data_location/id.txt") or &error("Невозможно открыть id.txt.");
if ($flock eq "y") {
flock count, 2;
}
$count=<count>;
close(count);
if (!$input{'id'} or $input{'id'} >= $count) {
&header;
print "Ошибка: опрос-$input{'id'} не найден.";
&footer;
exit;
}
if (!$input{'response'}) {
&header;
print "Ошибка: Вы не выбрали ответ.";
&footer;
exit;
}
open (data, "<$data_location/$input{'id'}.txt") or &error("Невозможно открыть файл данных опроса.");
if ($flock eq "y") {
flock data, 2;
}
@data=<data>;
close(data);
$update=$input{'response'};
$update++;
if (!@data[$update]) {
&header;
print "Ошибка: ответ не найден.";
&footer;
exit;
}
@datax=split(/-x%x-/, @data[$update]);
$vote=@datax[1];
$total=@data[0];
$vote++;
$total++;
@data[$update]="@datax[0]-x%x-$vote\n";
@total="$total\n";
splice(@data, 0, 1, @total);
splice(@data, $update, 1, @data[$update]);
open (data, ">$data_location/$input{'id'}.txt") or &error("Невозможно открыть файл данных опроса.");
if ($flock eq "y") {
flock data, 2;
}
print data @data;
close(data);
&header;
print "<h2>@data[1]</h2>";
$base=@data[0];
splice(@data, 0,2);
foreach $data (@data) {
@datax= split(/-x%x-/, $data);
$cal=@datax[1]/$base;
$percent=sprintf("%.2f", 100*$cal);
print "<b>@datax[0]</b> <font size=\"-1\">(@datax[1] голосов)</font> <img src=\"$bar\" width=\"$percent\" height=\"5\"> <font size=\"-1\"><b>$percent%</b></font><br>\n";
}
print "(Всего голосов: $base)";
&footer;
######################input
sub header {
open (header, "<header.txt") or &error("Невозможно открыть header.txt");
if ($flock eq "y") {
flock header, 2;
}
@header=<header>;
close(header);
print @header;
}
sub footer {
open (footer, "<footer.txt") or &error("Невозможно открыть footer.txt");
if ($flock eq "y") {
flock footer, 2;
}
@footer=<footer>;
close(footer);
print @footer;
}
exit;
#####error
sub error {
print "Произошла ошибка. <br> $_[0]<br>\n";
print "$!\n";
exit;
}
</CODE>

[ 13 Августа 2002: Исправлено MR.BLACK ]

[ 13 Августа 2002: Исправлено MR.BLACK ]
Black-Power
новый человек
0
Сообщения: 266
Зарегистрирован: 20.10.01
Откуда: Odessa mother
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 02:35:00 
Black_Angel - сделать так как ты написал у меня получилось, но это не подходит по той причине, что у меня именно этот (survey.pl) фаул экзекается на главной страничке, отсюда вывод - ОНА ПОСТОЯННО ОБНОВЛЯЕТСЯ !
[img]weep.gif[/img] [img]weep.gif[/img] [img]weep.gif[/img] [img]weep.gif[/img] [img]weep.gif[/img] [img]weep.gif[/img]
watcher
участник
9
Сообщения: 1827
Зарегистрирован: 21.10.01
Откуда: из тумбочки
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 08:41:00 
MR.BLACK www.hotscripts.com там этих скриптов [img]images/smiles/icon_smile.gif[/img])
Black-Power
новый человек
0
Сообщения: 266
Зарегистрирован: 20.10.01
Откуда: Odessa mother
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 09:06:00 
watcher я знаю [img]images/smiles/icon_smile.gif[/img] так вот хотелось бы этот [img]images/smiles/icon_confused.gif[/img]
Black-Power
новый человек
0
Сообщения: 266
Зарегистрирован: 20.10.01
Откуда: Odessa mother
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 14:16:00 
Protoss - скорее всего и написал бы, если знал бы программирование [img]images/smiles/icon_sad.gif[/img]
Protoss
соучастник
0
Сообщения: 544
Зарегистрирован: 15.05.02
Откуда: Moscow
Заголовок сообщения: Голосование на сайте
Сообщение Добавлено: 13 Август 2002, 23:55:00 
Чем тебе эта голосовалка нравится?Внешним видом?Напиши с нуля "украв" то что тебе понравилось.………
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 9 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100