-
Список говнокодов пользователя increazon
Всего: 23
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
<?php
$cd = dirname($_SERVER['SCRIPT_NAME'])."/resources";
$type=$_GET["type"];
if($type=="emptyhtml")
{
header("Last-Modified: " . gmdate('D, d M Y H:i:s', time()) . 'GMT');
header("Expires: " . gmdate('D, d M Y H:i:s', time() + 2592000) . 'GMT');
header("Content-Type: text/html");
echo("<html><head><title>EMPTY</title></head><body></body></html>");
exit(200);
}
else if($type=="script")
{
header("Content-Type: application/oct-stream"); // -< здесь ишибка
?>
if(!window.CuteWebUI_AjaxUploader_OnPostback)
window.CuteWebUI_AjaxUploader_OnPostback=function()
{
Не существует Content-Type: application/oct-stream
Существует Content-Type: application/octet-stream
Код работал с ошибкой 10 лет, перестал через директиву безопасности современный браузеров x-content-type-options: nosniff
Это разработка Cute Editor for PHP https://cutesoft.net/downloads/17/default.aspx
Гении тоже допускают ошибку...
increazon,
17 Июля 2019
-
+3
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
$apiUrl = 'https://www.etxt.ru/api/json/';
$apiPass = '12300f89';
$sign = md5('method=folders.listFolderstoken=d0jjghg196942a9aefghhhh'.md5($apiPass.'api-pass'));
$params = array(
'method' => 'folders.listFolders',
'sign' => $sign,
'token' => 'd083b49cghhjjka9ae9fddghuyhhg'
);
$result = file_get_contents($apiUrl, false, stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded',
'content' => http_build_query($params)
)
)));
echo $result;
echo '<br />';
var_dump($params);
echo '<br />';
echo '<br />';
echo 'Trying using CURL';
echo '<br />';
echo '<br />';
$myCurl = curl_init();
curl_setopt_array($myCurl, array(
CURLOPT_URL => $apiUrl,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => http_build_query($params)
));
$response = curl_exec($myCurl);
curl_close($myCurl);
echo "Ответ на Ваш запрос: ".$response;
Не работал, потому что API написаны не понятно, нужно в $apiUrl вписывать sign и token. Поддержка выслала мне более универсальный код с функцией ksort! Потому этот код просто под удаление...
increazon,
23 Сентября 2015
-
+160
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
function casinoGamesParser($body, $infoBoxyLink)
{
// try ruletka
$ruletkaReplaceCode = read_file('system/application/views/site/boxy-rul.php');
$ruletkaReplaceCode = str_replace('<?php echo $boxylink;?>', $infoBoxyLink, $ruletkaReplaceCode);
$ruletkaReplaceCode = str_replace('<?php echo site_url();?>', site_url(), $ruletkaReplaceCode);
$delimiterFirst = "<p>фун_рулетка(";
$delimiterLast = ")енд</p>";
$keyword = between2finer($body, $delimiterFirst, $delimiterLast);
if (!empty($keyword)) $ruletkaReplaceCode = str_replace('<?php echo $keyword ?>', $keyword, $ruletkaReplaceCode);
if (!empty($keyword)) return str_replace($delimiterFirst.$keyword.$delimiterLast, $ruletkaReplaceCode.$keyword, $body);
// try poker
$pokerReplaceCode = read_file('system/application/views/site/boxy-poker.php');
$pokerReplaceCode = str_replace('<?php echo $boxylink;?>', $infoBoxyLink, $pokerReplaceCode);
$pokerReplaceCode = str_replace('<?php echo site_url();?>', site_url(), $pokerReplaceCode);
$delimiterFirst = "фун_покер(";
$delimiterLast = ")енд";
$keyword = between2finer($body, $delimiterFirst, $delimiterLast);
if (!empty($keyword)) $pokerReplaceCode = str_replace('<?php echo $keyword ?>', $keyword, $pokerReplaceCode);
if (!empty($keyword)) return str_replace($delimiterFirst.$keyword.$delimiterLast, $pokerReplaceCode.$keyword, $body);
// if nothing found - return original body
return $body;
}
Берут РНР файл как текстовый в переменную и заменяют в нем вставки РНР кода <?php echo $keyword ?>. Получается РНР парсит свой код str_replace*ом. Ну вобщем неплохо получилось запутать китайских шпионов!
increazon,
14 Октября 2013
-
+96
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
procedure TForm1.FormCreate(Sender: TObject);
var formattedDateTime : string; S: TSearchRec; sf : Int64;
begin
Application.OnException := MyHandler;
if IsRunningEXEName(ExtractFileName(Application.ExeName)) = true then
begin
Application.Terminate;
Exit;
end;
Попытка запретить запуск копии программы. Неудачная.
increazon,
09 Марта 2013
-
+89
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
function uIsCommentAllowed($id_all)
{
$db = 'i_all';
$this->db->select('comment');
$this->db->where('id_all',$id_all);
$query = $this->db->get($db);
if ($query->num_rows() == 0) return false;
else
{
$row = $query->row();
if ($row->comment == 1) return true;
if ($row->comment == 1) return false;
}
return false;
}
Кто не видит где говно, показываю: if ($row->comment == 1) return true; if ($row->comment == 1) return false;
Теперь главный вопрос - почему на при тестировании данная ошибка не проявляется, и все вообще работает верно?
increazon,
25 Апреля 2012
-
+160
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
$rcn = 0;
foreach ($cites as $cite)
{
$rcn++;
}
if ($rcn == 0)
{
// we banned or network error!
}
Проверка не пустоты массива. Пpосто лень читать мануал(& Google too)! Главное что работает!
increazon,
10 Февраля 2012
-
+163
- 1
- 2
- 3
if ($linksCount == 0) $linksCount = -1; // for no error
$percent = round(($linksOkIndex/$linksCount)*100, 0);
if ($linksCount == -1) $linksCount = 0; // for no error
Я так избегаю деления на ноль -)
increazon,
06 Декабря 2011
-
+166
- 1
- 2
- 3
- 4
- 5
<?php
$count = 0;
foreach($mainResult2 as $r) $count++;
if ($count > 0) echo '...';
?>
проверка не пустой ли массив(объект?).
increazon,
25 Сентября 2011
-
+159
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
$("input[name=site]").bind("focus", function(event){
if ($("input[name=site]").attr("value") == "") $("input[name=site]").attr("value", "http://");
$("input[name=site]").addClass("fhover");
});
$("input[name=site]").bind("blur", function(event){
if ($("input[name=site]").attr("value") == "http://")
{
$("input[name=site]").attr("value", "");// now fix error message
$("#sitespan").removeClass().addClass("f-lup f-lod").html("не обязательно");
$("input[name=site]").removeClass("fhover");
}
});
input[name=site] раз 10 использовано. Наверняка можно было где-то использовать this, или вообще получить объект один раз и сохранить в переменную.
increazon,
18 Сентября 2011
-
+153
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
function resetIsetSorting()
{
$db = 'i_set';
$co = -1;
$q = $this->db->get($db);
$r = $q->result();
foreach($r as $row)
{
$co++;
$upd['sort'] = $co;
$this->db->where('id_set', $row->id_set);
$this->db->update($db, $upd);
}
}
function isetSortExchange($sort, $canBeSort)
{
$db = 'i_set';
$bigNumber = 1470000;
$this->db->where('sort', $canBeSort);
$q = $this->db->get($db);
if ($q->num_rows() == 1)
{
$upd['sort'] = $bigNumber;
$this->db->where('sort', $canBeSort);
$this->db->update($db, $upd);
//
$upd['sort'] = $canBeSort;
$this->db->where('sort', $sort);
$this->db->update($db, $upd);
//
$upd['sort'] = $sort;
$this->db->where('sort', $bigNumber);
$this->db->update($db, $upd);
}
}
Первая функция призвана обновить поле sort на уникальные последовательные значение. Сначала хотел провернуть такое дело на SQL в PHPmyADMIN, но мозгов моих оказалось мало, и я сделал это на CodeIgniter. Говнокод ли это?
Вторая функция призвана для обмена значениями полей sort. Это нужно для сортировки чего либо в баз. Чутьё мне подсказывает что это можно проделать каким-то белее правильным путём, без использования $bigNumber = 1470000; (а вдруг количество строк достигнет этого числа??!!). Говнокод ли это?
Всё рабочее, только что проверил. Свежий код, только что написан!
increazon,
08 Сентября 2011