View file wapp_antifront.com/votes/index.php

File size: 4.9Kb
<?php
if ($PHP_SELF=='') $PHP_SELF = $_SERVER["PHP_SELF"];                  // путь к текущему файлу, например: /phptest.php
$tmp=$QUERY_STRING;if($tmp=='') $tmp=$_SERVER["QUERY_STRING"];        // в зависимости от настроек сервера
$tmp=preg_replace('/[^ -}А-я#]|\$/e',"",$tmp);
parse_str($tmp);                                                         // теперь появятся переменные $url, $p и т.д.

if (!$f) $f="vote.dat";                                                  // файл с данными
$fhome="http://zheka911.com.ru";                                         // домашняя страница

srand ((float) microtime() * 10000000);
$url="$PHP_SELF?f=$f&amp;r=".chr(rand(97,122)).chr(rand(97,122));                                        // эта строчка будет добавляться во все ссылки

//===============================================
// загружаем данные из файла
//===============================================

if (!file_exists($f)) tsecho("<p>Не найден файл ".$f);
        else $arr = file($f);
for($i=0;$i<count($arr);$i++) {$arr[$i]=str_replace("\r","",$arr[$i]);$arr[$i]=str_replace("\n","",$arr[$i]);}
if (count($arr)<2) tsecho("<p>Неверный формат файла ".$f);
if (!$arr[count($arr)-1]) unset($arr[count($arr)-1]);

//===============================================
// основная страница
//===============================================

        $text="<do type=\"options\" name=\"o1\" label=\"&#x0412;&#x044B;&#x0445;&#x043E;&#x0434;\"><go href=\"$fhome\"/></do>";
        $text.="<p>";

                $arrc=array();
                $count=0;
                for ($i=1;$i<count($arr);$i++) {
                        $arr[$i]=explode("[:]",$arr[$i]);
                        if (count($arr[$i])==2 && intval($arr[$i][1])) $arrc[$i]=intval($arr[$i][1]); else $arrc[$i]=0;
                        $count+=$arrc[$i];
                        }

        if ($select) {
                if ($select>=count($arr)) tsecho("<p>Неверный ответ","$url");
                $arr[$select][1]+=1;
                // сохраняем...
                $file = fopen ($f, "w");
                if ($file) {
                        fputs($file,$arr[0]."\n");
                        for ($i=1;$i<count($arr);$i++) {
                                fputs($file,$arr[$i][0]);
                                if (count($arr[$i])==2) fputs($file,"[:]".$arr[$i][1]);
                                fputs($file,"\n");
                                }
                        fclose($file);
                        } else tsecho("<p>Ошибка при сохранении файла","$url");

                tsecho("<p>&#x0421;&#x043F;&#x0430;&#x0441;&#x0438;&#x0431;&#x043E; &#x0437;&#x0430; &#x0433;&#x043E;&#x043B;&#x043E;&#x0441;!","$url");
                }

                $text.="<b>".$arr[0]."</b>\n<br/>&#x0412;&#x0441;&#x0435;&#x0433;&#x043E; &#x0433;&#x043E;&#x043B;&#x043E;&#x0441;&#x043E;&#x0432;: $count<br/><select name=\"select\" value=\"1\">";
                for ($i=1;$i<count($arr);$i++) {
                        if ($count>0) $per=round($arrc[$i]*100/$count); else $per=0;
                        $text.="\n<option value=\"$i\">".$arr[$i][0];
                        if ($arrc[$i]>0) $text.=" [".$arrc[$i]." гол., ".$per."%]";
                        $text.="</option>";
                        }
                $text.="</select>";
                $text.="<anchor>&#x0413;&#x043E;&#x043B;&#x043E;&#x0441;&#x043E;&#x0432;&#x0430;&#x0442;&#x044C;<go href=\"$url\" method=\"post\"><postfield name=\"select\" value=\"$(select)\"/></go></anchor><br/>
<a href=\"$fhome\">&#x0413;&#x043B;&#x0430;&#x0432;&#x043D;&#x0430;&#x044F;</a>";
                tsecho($text);

//===============================================
// вывод
//===============================================

function tsecho($s,$t="") {
        global $ft;

        header ("Expires: Thu, 01 Jan 1970 00:00:01 GMT");
        header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
        header ("Cache-Control: no-cache, no-store, must-revalidate, max-age=0");
        header ("Pragma: no-cache");
        header("Content-type:text/vnd.wap.wml;charset=utf-8");

        setlocale (LC_CTYPE, 'ru_RU.CP1251');
        function win2unicode ( $s ) { if ( (ord($s)>=192) & (ord($s)<=255) ) $hexvalue=dechex(ord($s)+848); if ($s=="Ё") $hexvalue="401"; if ($s=="ё") $hexvalue="451"; return("&#x0".$hexvalue.";");}
        function translate($s) {return(preg_replace("/[А-яЁё]/e","win2unicode('\\0')",$s));}

        ob_start("translate");
        echo "<?xml version=\"1.0\"?>\n<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">";
        echo "
<wml>
<card title=\"&#x0413;&#x043E;&#x043B;&#x043E;&#x0441;&#x043E;&#x0432;&#x0430;&#x043D;&#x0438;&#x0435;\">";
echo "
$s";
if ($t) echo "<br/><a href=\"$t\">&#x041D;&#x0430;&#x0437;&#x0430;&#x0434;</a>";
echo "

</p>
</card>
</wml>";
        ob_end_flush();
        die("");
        }