- 1
- 2
- 3
- 4
- 5
if (!isset($caseMenu['child'])) {
$catsArr['list'][$caseMenu['parent']]['status'] = "active";
}else{
$catsArr['list'][$caseMenu['parent']]['children']['list'][0]['status'] = "active";
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+163
if (!isset($caseMenu['child'])) {
$catsArr['list'][$caseMenu['parent']]['status'] = "active";
}else{
$catsArr['list'][$caseMenu['parent']]['children']['list'][0]['status'] = "active";
}
помоему это охуенно
+172
//уничтожение буфера
void delbuf(void* &bf, char ntype)
{
if (ntype=='C')
{
if (bf!=(char*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='B')
{
if (bf!=(BYTE*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='I')
{
if (bf!=(int*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='F')
{
if (bf!=(double*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='D')
{
if (bf!=(double*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='W')
{
if (bf!=(WORD*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='L')
{
if (bf!=(long*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='S')
{
if (bf!=(short*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
if (ntype=='R')
{
if (bf!=(DWORD*) NULL)
{
delete[] bf;
bf=NULL;
}
return;
}
return;
}
86 строк вместо простого delete [] bf
+99
procedure TForm1.Timer1Timer(Sender: TObject);
var Ras, MinRas, MinC, Comp: Integer;
begin
Ras:=0;
MinC:=0;
MinRas:=0; // всё по нулям
for Comp:=0 to ComponentCount-1 do // цикл по всем компонентам
begin
IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left>TPanel(Components[Comp]).Left) then
Ras:=Panel1.Left-TPanel(Components[Comp]).Left
else
IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left<TPanel(Components[Comp]).Left) then
Ras:=TPanel(Components[Comp]).Left-Panel1.Left;
If Ras < MinRas
then begin
MinRas:= Ras; //устанавливаем переменные этой панельки за основные
MinC:= Comp;
end;
end;
if Panel1.top<(TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height) then
Panel1.Top:=Panel1.Top+3; //если панель ниже то допрыгиваем
PROBEL:=Panel1.Top=TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height
end;
какое-то панельное безумие
+149
mb_internal_encoding('utf-8');
// Внимание, сейчас я покажу вам фокус, который только что открыл.
$request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
$request = substr($request, strpos($request, '<span class="attention">'));
echo mb_substr($request, 0, mb_strpos($request, '</span>')+7);
// Запишем это чуть короче.
$request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
echo mb_substr(substr($request, strpos($request, '<span class="attention">')), 0, mb_strpos($request, '</span>')+7);
/* Магия интерпретатора PHP!
На абсолютно одинаковый код он нам выдает:
<span class="attention">Здесь могут быть русские символы</span>
<span class="attention">Здесь могут быть русские символы</span>blah blah blah
*/
−125
//Николай
//проверяем артикул и если его нет, то генерируем
Если ПустаяСтрока(Артикул) Тогда
Запрос = Новый Запрос("ВЫБРАТЬ
| МАКСИМУМ(Номенклатура.Артикул) КАК ТекАртикул
|ИЗ
| Справочник.Номенклатура КАК Номенклатура");
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
ТекКод = ?(Выборка.ТекАртикул = NULL, 1, Мин(ОбщегоНазначения.ПривестиСтрокуКЧислу(Выборка.ТекАртикул) + 8000, 9999999));
ТекАртикул = Формат(ТекКод, "ЧЦ=7; ЧВН=; ЧГ=");
//проверяем дальше
Выход=0;
Пока Выход=0 Цикл
Запрос = Новый Запрос("ВЫБРАТЬ
| Номенклатура.Артикул КАК ТекАртикул
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| Номенклатура.Артикул = &Артикул");
Запрос.УстановитьПараметр("Артикул", ТекАртикул);
Выборка = Запрос.Выполнить().Выбрать();
Нашли = Выборка.Следующий();
Если Нашли Тогда
ТекАртикул=Мин(ОбщегоНазначения.ПривестиСтрокуКЧислу(ТекАртикул) + 1, 9999999);
ТекАртикул = Формат(ТекАртикул, "ЧЦ=7; ЧВН=; ЧГ=");
Иначе
Выход=1;
КонецЕсли
КонецЦикла;
Артикул=ТекАртикул;
КонецЕсли;
//Николай
Задача: сформировать артикул (число) из 7и знаков по формуле "максимальный артикул + 1". при этом тип реквизита - строка(7). В базе встречаются значения "945784 ", "98763443".
+145
private static $from=array('Ä','ä','Æ','æ','Ǽ','ǽ','Å','å','Ǻ','ǻ','À','Á','Â','Ã','à','á','â','ã','Ā','ā','Ă','ă','Ą','ą','Ǎ','ǎ','Ạ','Ạ','ạ','Ả','ả','Ấ','ấ','Ầ','ầ','Ẩ','ẩ','Ẫ','ẫ','Ậ','ậ','Ắ','ắ','Ằ','ằ','Ẳ','ẳ','Ẵ','ẵ','Ặ','ặ', 'Ç','ç','Ć','ć','Ĉ','ĉ','Ċ','ċ','Č','č', 'Ð','ð','Ď','ď','Đ','đ', 'È','É','Ê','Ë','è','é','ê','ë','Ē','ē','Ĕ','ĕ','Ė','ė','Ę','ę','Ě','ě','Ẹ','ẹ','Ẻ','ẻ','Ẽ','Ế','ế','Ề','ề','Ể','ể','ễ','Ệ','ệ','Ə','ə', 'ſ','ſ', 'Ĝ','ĝ','Ğ','ğ','Ġ','ġ','Ģ','ģ', 'Ĥ','ĥ','Ħ','ħ', 'Ì','Í','Î','Ï','ì','í','î','ï','Ĩ','ĩ','Ī','ī','Ĭ','ĭ','Į','į','İ','ı','Ǐ','ǐ','Ỉ','ỉ','Ị','ị', 'IJ','ij', 'fi','fl', 'Ĵ','ĵ', 'Ķ','ķ','ĸ', 'Ĺ','ĺ','Ļ','ļ','Ľ','ľ','Ŀ','ŀ','Ł','ł', 'Ñ','ñ','Ń','ń','Ņ','Ň','ň','ʼn','Ŋ','ŋ', 'Ö','ö','Ø','ø','Ǿ','ǿ','Ò','Ó','Ô','Õ','ò','ó','ô','õ','Ō','ō','Ŏ','ŏ','Ő','ő','Ǒ','ǒ','Ọ','ọ','Ỏ','ỏ','Ố','ố','Ồ','ồ','Ổ','ổ','Ỗ','ỗ','Ộ','ộ','Ớ','ớ','Ờ','ờ','Ở','ở','Ỡ','ỡ','Ợ','ợ','Ơ','ơ', 'Œ','œ', 'Ŕ','ŕ','Ŗ','ŗ','Ř','ř', 'Ś','ś','Ŝ','Ş','ş','Š','š', 'Ţ','ţ','Ť','ť','Ŧ','ŧ', 'Ü','ü','Ù','Ú','Û','ù','ú','û','Ụ','ụ','Ủ','ủ','Ứ','ứ','Ừ','ừ','Ữ','ữ','Ự','ự','Ũ','ũ','Ū','ū','Ŭ','ŭ','Ů','ů','Ű','ű','Ų','ų','Ǔ','ǔ','ǖ','ǘ','Ǚ','ǚ','Ǜ','ǜ','Ư','ư', 'Ŵ','ŵ','Ẁ','ẁ','Ẃ','ẃ','Ẅ','ẅ', 'Ý','ý','ÿ','Ŷ','ŷ','Ÿ','Ỳ','ỳ','Ỵ','ỵ','Ỷ','ỷ','Ỹ','ỹ', 'Þ','þ','ß', 'Ź','ź','Ż','ż','Ž','ž','А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я');
private static $to=array('ae','ae','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a', 'c','c','c','c','c','c','c','c','c','c', 'd','d','d','d','d','d', 'e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e', 'f','f', 'g','g','g','g','g','g','g','g', 'h','h','h','h', 'i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i', 'ij','ij', 'fi','fl', 'j','j', 'k','k','k', 'l','l','l','l','l','l','l','l','l','l', 'n','n','n','n','n','n','n','n','n','n', 'oe','oe','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o', 'oe','oe', 'r','r','r','r','r','r', 's','s','s','s','s','s','s', 't','t','t','t','t','t', 'ue','ue','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u', 'w','w','w','w','w','w','w','w', 'y','y','y','y','y','y','y','y','y','y','y','y','y','y', 'th','th','ss', 'z','z','z','z','z','z','a','b','v','g','d','e','e','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','ts','ch','sh','sch','','y','','e','yu','ya','a','b','v','g','d','e','e','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','ts','ch','sh','sch','','y','','e','yu','ya');
public static function translit($s,$tolower=false) {
$s=str_replace(self::$from,self::$to,$s);
if($tolower) $s=strtolower($s);
$s=preg_replace('/[^a-z0-9-_]+/i','-',$s);
$s=trim($s,'-');
return $s;
}
избавляемся от умляутов и проч.
+151
/*
[... выдержки из файла functions.php ...]
*/
function secure_input_string($string,$strip = true) {
/*Функция позволяет обезопасить вводимые пользователем данные путем применения ряда функций в входной строке
* Входная строка должна быть текстом (string) */
if ((bool)$strip) {
//Усечение пробелов
$string = trim($string);
//Удаление PHP и HTML тегов
//$string = strip_tags($string);
//Перевод специальных символов в html эквиваленты
$string = htmlspecialchars($string);
//Отмена спец-символов обратными косыми чертами
}
//Удаление попыток вставки кода php или xml
$badcode = array('<?php','?>');
$code = array('<','>');
$string = str_replace($badcode,$code,$string);
$str='';
$chars= array(
'a', 'b', 'c', 'd', 'e',
'f', 'g', 'h', 'i', 'j',
'k', 'l', 'm', 'n', 'o',
'p', 'q', 'r', 's', 't',
'u', 'v', 'w', 'x', 'y',
'z',
'A', 'B', 'C', 'D', 'E',
'F', 'G', 'H', 'I', 'J',
'K', 'L', 'M', 'N', 'O',
'P', 'Q', 'R', 'S', 'T',
'U', 'V', 'W', 'X', 'Y',
'Z'
function str_size($size) {
//Функция для предаставления размера файла из функции filesize (возвращающуу байты) в удобочитаемый вид
//Приведение к строковому типу
$size = (string)$size;
if (strlen($size) == 0) {
//Не удалось получить размер файла
return false;
}
else if (strlen($size) <= 3) {
//Размер указан в Байтах
return $size.' byte';
}
else if (strlen($size) >= 4 && strlen($size) < 7) {
//Размер указан в Килобайтах
$size = (int)$size;
$size_k = $size/1024;
//Удалить двойную точность
$size_k = (int)$size_k;
return $size_k.' Kb';
}
else if (strlen($size) >= 7 && strlen($size) < 10) {
//Размер указан в Мегабайтах
$size = (int)$size;
$size_m = $size/1024;
$size_m = $size_m/1024;
//Оставить только один знак после точки
$size_m = round($size_m,1);
$size_m = $size_m.' Мб';
return $size_m;
}
else if (strlen($size) >= 10 && strlen($size) < 13) {
//Размер указан в Гигабайтах
$size = (int)$size;
$size_m = $size/1073741824;
//Оставить только один знак после точки
$size_m = round($size_m,1);
$size_m = $size_m.' Гб';
return $size_m;
}
======================================== ======================================== ======================================== ============
|слияне кодов
======================================== ======================================== ======================================== ============
+158
@s_sort = sort { @{$a}[11] <", @{$b}[11] } @s;
@s = sort { @{$a}[11] <", @{$b}[11] } @s_sort;
@s_sort = sort { @{$a}[11] <", @{$b}[11] } @s;
for($i = 0; $i < $f_num; $i++){
$loop_data = ();
for($m = 1; $m <= $std; $m++){
if($spcs[$spcs_indx[$s_sort[$m][2]]][9] == $i && $s_sort[$m][1] <> ''){
$row_data;
$row_data{name} = $_sort[$m][1];
$row_data{ball} = round($s_sort[$m][11],2);
$row_data{krs} = $s_sort[$m][3];
$row_data{grp} = $spcs[$spcs_indx[$s_sort[$m][2]]][2]."-".substr(($f_k_y - $s_sort[$m][3]),2,2)."-".$s_sort[$m][4];
array_push($loop_data,$row_data);
}
}
Продолжение http://govnokod.ru/5072 . Для меня остались загадкой первые три строчки. Они, к тому же, еще и не работают.
+160
#!/usr/bin/php5
<?php
set_time_limit(0);
//include("crypt.php");
exec("rm jtv.zip");
exec("wget http://www.teleguide.info/download/new3/jtv.zip"); //скачать архив телепрограммы в формате itv.zip//
exec("rm list/*.* "); //очистить каталог "list"//
exec("unzip -x jtv.zip -d list "); //извлеч файлы из архива в папку "list"//
sleep(3);
$dir = "/home/tt/wwwplaylist/list/";
exec("ls list | grep '.ndx'", $tmplist);
$ch = array(
1=>1,2=>2,3=>3,250=>195,241=>196,209=>197,177=>168,
//170=>198,186=>199,191=>200,174=>201,172=>202,189=>203,188=>204,
//161=>205,171=>206,187=>207,211=>208,223=>209,212=>210,210=>211,
//245=>212,213=>213,181=>214,254=>215,222=>216,218=>217,219=>218,
//217=>219,253=>220,221=>221,175=>222,180=>223,199=>192,252=>193,
//233=>194,226=>195,228=>196,224=>197,173=>168,229=>198,231=>199,
//234=>200,235=>201,232=>202,239=>203,238=>204,236=>205,196=>206,
//197=>207,201=>208,230=>209,198=>210,244=>211,246=>212,242=>213,
//251=>214,249=>215,214=>216,220=>217,248=>218,163=>219,216=>220,
//251=>214,249=>215,214=>216,220=>217,248=>218,163=>219,216=>221,
215=>222,131=>223,0=>220);
$serveraddress="localhost";
$mysqluser="root";
$mysqlpassword="12345";
$mysqldatabase="pl";
$descriptor = mysql_connect($serveraddress,$mysqluser,$mysqlpassword);
mysql_select_db($mysqldatabase,$descriptor);
mysql_query("SET NAMES CP1251");
mysql_query("truncate table TV_epg");
function int2float($i) {
$x32 = 4294967296;
$i = (float)$i;
if ($i < 0) return $i + $x32 + 1; else return $i; /* signed int32 overflow */
}
function FILETIMEtoUNIXtime($FILETIME) {
$x32 = 4294967296;
$sec_btw_epoch = (float)(116444736 * 100);
$low = (ord($FILETIME[0])) | (ord($FILETIME[1]) << 8) | (ord($FILETIME[2]) << 16) | (ord($FILETIME[3]) << 24);
$high = (ord($FILETIME[4])) | (ord($FILETIME[5]) << 8) | (ord($FILETIME[6]) << 16) | (ord($FILETIME[7]) << 24);
$f64 = (int2float($high) * $x32 + int2float($low)) / 10000000;
return (int)($f64 - $sec_btw_epoch);
}
foreach ($tmplist as $key=>$value) {
$f=substr($value, 0, -4);
$res=$f;
for($i=0; $i<strlen($res); $i++) $res[$i]=(array_key_exists(ord($res[$i]),$ch)) ? chr($ch[ord($res[$i])]) : $res[$i];
$f1=fopen("list/".$f.".ndx", "rb");
$f2=fopen("list/".$f.".pdt", "rb");
$test1 = bin2hex(fread($f1, 1));
$test2 = bin2hex(fread($f1, 1));
$countpr = hexdec($test2.$test1);
for ($i=0; $i<$countpr; $i++ )
{
$tmp=0;
$ft='';
$tmp = fread($f1, 2);
for ($j=0; $j<8; $j++)
$ft.= (fread($f1, 1));//.$ft;
$dates= date("Y-m-d H:i:s", FILETIMEtoUNIXtime($ft));
//////////////index f2////////////
$offset=0;
$str = bin2hex(fread($f1, 1));
$str2 = bin2hex(fread($f1, 1));
$offset = hexdec($str2.$str);
///////////////name////////////////
$len=0;
fseek($f2, $offset);
$str = bin2hex(fread($f2, 1));
$str2 = bin2hex(fread($f2, 1));
$len = hexdec($str2.$str);
$name = fread($f2, $len);
mysql_query("insert into `TV_epg` set `epg_ch`='$res',`epg_date`='$dates',`epg_name`='$name' ");
}
}
#mysql_quuery("update TV_epg set epg_date=epg_date-interval 4 hour;");
mysql_query("update TV_epg set epg_date=epg_date-interval 1 hour;");
?>
+166
<?
$nofoto="avatars/photo_no_160x200.gif";
$query = "SELECT id , foto FROM `users` WHERE `foto` != '{$nofoto}'";
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
echo '<table border="1" cellpadding="5" cellspacing="0">
<tr> '.$row["id"].'
<td><img class="photo" height="200" width="160" src="'.$row["foto"].'" title="" alt="">< /td>
< /tr>
< /table> ';