category
Хакинг
Создание вирусов на bat
virus1
/category
Кодировка url-а и windows-1251.PHP
Код:
<?php
$subTitle="Каталог статей";
$filter=$_GET['filter'];
$f=fopen('csList.lst','r');
$action=$_GET['action'];
switch($action){
default : {
while(!feof($f)){
$l=trim(fgets($f));
if($l=='category'){
$content.="<div class=\"category\">";
$categoryName=fgets($f);
if (($filter==$categoryName) || ($filter=='')){
$content.="<div class=\"category_title\"><a href=\"cs.php?filter=$categoryName\">$categoryName</div>";
while(($l=trim(fgets($f)))!='/category'){
$title=fgets($f);
$url=fgets($f);
$content.="<a href=\"page.php?url=$url\">$title</a>";
}
$content.="</div>";
}
}
}
}
}
fclose($f);
if($filter){
$content="<a href=\"cs.php\">Смотреть все категории</a>";
}
include "design.php";
?>
$subTitle="Каталог статей";
$filter=$_GET['filter'];
$f=fopen('csList.lst','r');
$action=$_GET['action'];
switch($action){
default : {
while(!feof($f)){
$l=trim(fgets($f));
if($l=='category'){
$content.="<div class=\"category\">";
$categoryName=fgets($f);
if (($filter==$categoryName) || ($filter=='')){
$content.="<div class=\"category_title\"><a href=\"cs.php?filter=$categoryName\">$categoryName</div>";
while(($l=trim(fgets($f)))!='/category'){
$title=fgets($f);
$url=fgets($f);
$content.="<a href=\"page.php?url=$url\">$title</a>";
}
$content.="</div>";
}
}
}
}
}
fclose($f);
if($filter){
$content="<a href=\"cs.php\">Смотреть все категории</a>";
}
include "design.php";
?>
Файл design.php
Код:
<html>
<head><meta http-equiv="Content-type" content="text/html; charset=windows-1251" />
<title>Никому не известный сайт. <?php echo @$subTitle; ?></title>
<script type="text/javascript" src="./js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="./js/main.js"></script>
<link rel="stylesheet" href="./main.css" />
</head>
<body>
<div id="title">Никому не известный сайт. <?php echo @$subTitle; ?></div>
<div id="menu">
<img src="./img/menu/stalker.ico" height="32" width="32" onclick="fm();" />
<p id="fastMenu">
<a href="gb.php">Гостевая книга</a>
<a href="cs.php">Каталог статей</a>
<a href="/forum/">Форум</a>
</p>
<h3>Переход</h3>
<div>
Переход
</div>
<h3>Каталог статей</h3>
<div>
Катал статей
</div>
<h3>Форум</h3>
<div>
Форум
</div>
</div>
<div id="content">
<?php echo @$content; ?>
</div>
<div id="banners">
</div>
</body>
</html>
<head><meta http-equiv="Content-type" content="text/html; charset=windows-1251" />
<title>Никому не известный сайт. <?php echo @$subTitle; ?></title>
<script type="text/javascript" src="./js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="./js/main.js"></script>
<link rel="stylesheet" href="./main.css" />
</head>
<body>
<div id="title">Никому не известный сайт. <?php echo @$subTitle; ?></div>
<div id="menu">
<img src="./img/menu/stalker.ico" height="32" width="32" onclick="fm();" />
<p id="fastMenu">
<a href="gb.php">Гостевая книга</a>
<a href="cs.php">Каталог статей</a>
<a href="/forum/">Форум</a>
</p>
<h3>Переход</h3>
<div>
Переход
</div>
<h3>Каталог статей</h3>
<div>
Катал статей
</div>
<h3>Форум</h3>
<div>
Форум
</div>
</div>
<div id="content">
<?php echo @$content; ?>
</div>
<div id="banners">
</div>
</body>
</html>
Файл csList.lst
Код:
Собственно все в кодировке Windows-1251
При запросе просто cs.php должен вывести все статьи а инече - только из опр. категорий.
В cs.php это так:
Код:
...
$filter=$_GET['filter'];
...
$categoryName=fgets($f);
if (($filter==$categoryName) || ($filter=='')){
//Вывод статей
...
}
...
$filter=$_GET['filter'];
...
$categoryName=fgets($f);
if (($filter==$categoryName) || ($filter=='')){
//Вывод статей
...
}
...
Т.е. если без фильтрации то просто даётся cs.php
А с фильтрацией - cs.php?filter=фильтр
Соответственно условие в первом случае это : filter==''
А во втором (с фильтром) - это : cs.php?filter=$categoryName
Но оно не выполняется, т.е. полученная из windows 1251-го файла строка отличается от внешне идентичной в урле. Что делать? (Всмысле как перекинуть из windows-1251- в урловую кодировку или наоборот)?
Код:
$content.="<div class=\"category_title\"><a href=\"cs.php?filter=".urlencode($categoryName)."\">".htmlspecialchars($categoryName)."</div>";