- 1
- 2
- 3
- 4
if($category_id!='')
$this->db->where('group_category =', $category_id);
if($group_by == TRUE)
$this->db->group_by('blog_cat_name');
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
if($category_id!='')
$this->db->where('group_category =', $category_id);
if($group_by == TRUE)
$this->db->group_by('blog_cat_name');
У меня создалось впечатление, что здесь специально замаскировали все ифы. Чтобы читающий думал, что это линейный код. На скобках - экономят, на пробелах - экономят.
−1
internal static object CopyImmutableSortedDictionary<K, V>(object original, ICopyContext context)
{
return original;
}
Microsoft Orleans https://github.com/dotnet/orleans
Копирование объекта в 2к17
0
primary_list = tuple([line.strip() for line in open('file1.txt', 'r')])
secondary_list = tuple([line.strip() for line in open('file2.txt', 'r')])
f = open('test.txt', 'w')
users_unique = []
def isUnique(value):
if value not in users_unique:
users_unique.append(value)
return True
else:
return False
def common():
for item in primary_list:
if item is None:
continue
elif item in secondary_list and isUnique(item):
f.write(str(item)+'\r\n')
print 'Complete'
+4
function check_for_injection($_arr_check) {
$inj = 0;
foreach ($_arr_check as $n=>$v) {
$_text = "SELECT ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = " SELECT";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "DELETE ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "UPDATE ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "INSERT ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "LOAD ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "DROP ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "INTO ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "OUTFILE ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
$_text = "CALL ";
if (strpos(strtoupper($v), $_text)!==false) $inj = 1;
}
return $inj;
}
$dd = check_for_injection($_REQUEST);
if ($dd==1) die();
Надежный способ проверки на взлом
0
#!/usr/bin/python
#encoding: utf-8
import sys
import time
import socket
import asyncore
import exceptions
from socket import AF_INET, SOCK_STREAM
from asyncore import dispatcher
from threading import Thread, RLock
class PiCalcThread(Thread):
def __init__(self, buffer, lock):
Thread.__init__(self)
self.buffer = buffer
self.lock = lock
def run(self):
""" See http://web.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/spigot.pdf """
q,r,t,k,n,l = 1,0,1,1,3,3
while True:
if 4*q+r-t < n*t:
self.lock.acquire()
self.buffer.newDigits(str(n))
self.lock.release()
q,r,t,k,n,l = (10*q,10*(r-n*t),t,k,(10*(3*q+r))/t-10*n,l)
else:
q,r,t,k,n,l = (q*k,(2*q+r)*l,t*l,k+1,(q*(7*k+2)+r*l)/(t*l),l+2)
time.sleep(0.001)
class PiGenerator(list):
def __init__(self):
list.__init__(self)
self.calculator = None
self.lock = RLock()
self.digits = ''
def subscribe(self, obj):
self.lock.acquire()
try:
self.append(obj)
self._notify(obj=obj)
finally:
self.lock.release()
if not self.calculator:
self.calculator = PiCalcThread(self, self.lock)
self.calculator.start()
else:
if len(self) > 0:
self._resumeCalculator()
def unsubscribe(self, obj):
self.lock.acquire()
self.remove(obj)
self.lock.release()
if len(self) <= 0:
self._pauseCalulator()
def _pauseCalulator(self):
self.lock.acquire()
def _resumeCalculator(self):
try: self.lock.release()
except exceptions.AssertionError: pass
def _notify(self, digits = None, obj = None):
objs = [obj] if obj else self
digits = digits or self.digits
for obj in objs:
obj.update(digits)
def newDigits(self, digits):
self.digits += digits
self._notify(digits)
−98
Если НоменклатураКонтрагентов.Наличие=Перечисления.ДаНет.Да тогда
....
Создан новый элемент перечисления "ДаНет" на который ссылается измерение регистра сведений. Джордж Буль продолжает медленно крутиться...
−51
...
ОбластьВесСтр = ТабличныйДокумент.Область(2, й - 4);
ОбластьВесСтр.Текст = "Вес:";
НовСтр.СтрокаВес = 3;
НовСтр.СтолбецВес = й - 4;
ТабличныйДокумент.Область(3, й-4, 4, й-4).Объединить();
...
к = й - 5;
Пока к > 4 Цикл
ТабличныйДокумент.Область(2, к, 4, к).Объединить();
к = к - 1;
КонецЦикла;
...
ОбластьСтолбецВесШт = ТабличныйДокумент.Область(ВысотаТаблицы + 1, 13 + Добавка);
ОбластьСтолбецВесШт.Текст = Формат(окр(ВесЕд, 3), "ЧЦ=10; ЧДЦ=3; ЧГ=0");
...
ОбластьИзменение = ТабличныйДокумент.Область(ВысотаТаблицы + 1, 15 + Добавка - й);
ОбластьИзменение.Текст = Формат(Изменение, "ЧЦ=10; ЧДЦ=2; ЧН=0; ЧГ=0") + "%";
...
Ну вы поняли... Зачем использовать по нормальному макет, когда можно использовать 300 вложенных циклов с счетчиками й, к, м и т.д.?
При чем макет то размечен более менее, но там области перезаписываются и вобще дичь какая то происходит. Добавить колонку в результат просто нереально.
Квинтесенция говнокода.
−35
Функция ПредопределенныйЭлемент(Знач ПолноеИмяПредопределенного) Экспорт
ИмяПредопределенного = ВРег(ПолноеИмяПредопределенного);
Точка = СтрНайти(ИмяПредопределенного, ".");
ИмяКоллекции = Лев(ИмяПредопределенного, Точка - 1);
ИмяПредопределенного = Сред(ИмяПредопределенного, Точка + 1);
Точка = СтрНайти(ИмяПредопределенного, ".");
ИмяТаблицы = Лев(ИмяПредопределенного, Точка - 1);
ИмяПредопределенного = Сред(ИмяПредопределенного, Точка + 1);
ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 Ссылка ИЗ &ПолноеИмяТаблицы ГДЕ ИмяПредопределенныхДанных = &ИмяПредопределенного";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПолноеИмяТаблицы", ИмяКоллекции + "." + ИмяТаблицы);
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("ИмяПредопределенного", ИмяПредопределенного);
Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Возврат Результат.Выгрузить()[0].Ссылка;
КонецЕсли;
Возврат Неопределено;
КонецФункции
Видимо, таким образом разработчики стандартных подсистем решили бороться с ошибкой платформы, когда при попытке получения некорректного значения падает рабочий процесс.
Клин-клином, говнокод-говнокодом.
−100
ЗапросПоДате = Новый Запрос;
ЗапросПоДате.Текст = "ВЫБРАТЬ
| МАКСИМУМ(НачислениеБонусов.Дата) КАК Дата
|ИЗ
| Документ.НачислениеБонусов КАК НачислениеБонусов
|ГДЕ
| НачислениеБонусов.Контрагент = &Контрагент
| И НачислениеБонусов.Дата < &Дата";
ЗапросПоДате.Параметры.Вставить("Контрагент",ЭтотОбъект.Контрагент);
ЗапросПоДате.Параметры.Вставить("Дата",ЭтотОбъект.Дата);
Результат = ЗапросПодате.Выполнить().Выбрать();
Если Результат.Следующий() Тогда
ДатаПоследнегоНачисления = Результат.Дата;
Иначе
ДатаПоследнегоНачисления = Дата(2000,01,01);
КонецЕсли;
Если ДатаПоследнегоНачисления = Null Тогда
ДатаПоследнегоНачисления = Дата(2000,01,01);
КонецЕсли;
Функции языка запросов???
−234
Public Class Form1
Dim x01, x02, f01, f02, f01i, f02i, x11, x12, f12, f11, f11i, f12i, x21, x22, z1, z2, f21, f22, f21i, f22i, x31, x32 As Double
Dim f31, f32, f31i, f32i, x41, x42, f41, f42, f41i, f42i, x51, x52, f51, f52, f51i, f52i, x61, x62, f61, f62, f61i, f62i, x71, x72 As Double
Dim f71, f72, f71i, f72i, x81, x82, f81, f82, f81i, f82i, x91, x92, f91, f92, f91i, f92i, x101, x102, f101, f102, f101i, f102i, x111, x112, f111, f112, f111i, f112i, x121, x122 As Double
Dim f121, f122, f121i, f122i, x131, x132, f131, f132, f131i, f132i, x141, x142, f141, f142, f141i, f142i, x151, x152, f151, f152, f151i, f152i, x161, x162, f161, f162, f161i, f162i, x171, x172 As Double
Dim f171, f172, f171i, f172i, x181, x182, f181, f182, f181i, f182i, x191, x192, f191, f192, f191i, f192i, x201, x202, f201, f202, f201i, f202i, x211, x222, f211, f212, f211i, f212i, x221, x212, f221, f222, f221i, f222i, x231, x232 As Double
Dim f231, f232, f231i, f232i, x241, x242, f241, f242, f241i, f242i, x251, x252, f251, f252, f251i, f252i, x261, x262, f261, f262, f261i, f262i, x271, x272, f271, f272, f271i, f272i, x281, x282, f281, f282, f281i, f282i, x291, x292 As Double
Dim f291, f292, f291i, f292i, x301, x302, f301, f302, f301i, f302i, x311, x312, f311, f312, f311i, f312i, x321, x322 As Double
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
x01 = TextBox1.Text
x02 = TextBox2.Text
f01 = x01 - 0.5 * Math.Sin(0.3 * Math.Cos(x01) / 3) - 1
f02 = -x02 + 0.3 * Math.Cos((0.5 * Math.Sin(x02 / 3) + 1))
f01i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x01)) / 3) * Math.Sin(x01)
f02i = 1 + (0.3 * Math.Sin(0.5 * Math.Sin(x02)) / 3) * (Math.Cos(x02) / 3) * 0.5 / 3
x11 = x01 + f01 / f01i
x12 = x02 + f02 / f02i
Label7.Text = "x11= " & x11
Label8.Text = "x12= " & x12
f11 = x11 - 0.5 * Math.Sin(0.3 * Math.Cos(x11) / 3) - 1
f12 = -x12 + 0.3 * Math.Cos((0.5 * Math.Sin(x12 / 3) + 1))
f11i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x11)) / 3) * Math.Sin(x11)
f12i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x12)) / 3) * (Math.Cos(x12) / 3) * 0.5 / 3
x21 = x11 + f11 / f11i
x22 = x12 + f12 / f12i
Label9.Text = "x21= " & x21
Label10.Text = "x22= " & x22
f21 = x21 - 0.5 * Math.Sin(0.3 * Math.Cos(x21) / 3) - 1
f22 = -x22 + 0.3 * Math.Cos((0.5 * Math.Sin(x22 / 3) + 1))
f21i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x21)) / 3) * Math.Sin(x21)
f22i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x22)) / 3) * (Math.Cos(x22) / 3) * 0.5 / 3
x31 = x21 + f21 / f21i
x32 = x22 + f22 / f22i
Label15.Text = "x31= " & x31
Label16.Text = "x32= " & x32
f31 = x31 - 0.5 * Math.Sin(0.3 * Math.Cos(x31) / 3) - 1
f32 = -x32 + 0.3 * Math.Cos((0.5 * Math.Sin(x32 / 3) + 1))
f31i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x31)) / 3) * Math.Sin(x31)
f32i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x32)) / 3) * (Math.Cos(x32) / 3) * 0.5 / 3
x41 = x31 + f31 / f31i
x42 = x32 + f32 / f32i
Label17.Text = "x41= " & x41
Label18.Text = "x42= " & x42
f41 = x41 - 0.5 * Math.Sin(0.3 * Math.Cos(x41) / 3) - 1
f42 = -x42 + 0.3 * Math.Cos((0.5 * Math.Sin(x42 / 3) + 1))
f41i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x41)) / 3) * Math.Sin(x41)
f42i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x42)) / 3) * (Math.Cos(x42) / 3) * 0.5 / 3
x51 = x41 + f41 / f41i
x52 = x42 + f42 / f42i
Label19.Text = "x51= " & x51
Label20.Text = "x52= " & x52
f51 = x51 - 0.5 * Math.Sin(0.3 * Math.Cos(x51) / 3) - 1
f52 = -x52 + 0.3 * Math.Cos((0.5 * Math.Sin(x52 / 3) + 1))
f51i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x51)) / 3) * Math.Sin(x51)
f52i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x52)) / 3) * (Math.Cos(x52) / 3) * 0.5 / 3
x61 = x51 + f51 / f51i
x62 = x52 + f52 / f52i
Label21.Text = "x61= " & x61
Label22.Text = "x62= " & x62
f61 = x61 - 0.5 * Math.Sin(0.3 * Math.Cos(x61) / 3) - 1
f62 = -x62 + 0.3 * Math.Cos((0.5 * Math.Sin(x62 / 3) + 1))
f61i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x61)) / 3) * Math.Sin(x61)
f62i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x62)) / 3) * (Math.Cos(x62) / 3) * 0.5 / 3
x71 = x61 - f61 / f61i
x72 = x62 + f62 / f62i
Label23.Text = "x61= " & x71
Label24.Text = "x62= " & x72
f71 = x71 - 0.5 * Math.Sin(0.3 * Math.Cos(x71) / 3) - 1
f72 = -x62 + 0.3 * Math.Cos((0.5 * Math.Sin(x72 / 3) + 1))
f71i = 1 + 0.5 * (Math.Cos(0.3 * Math.Cos(x71)) / 3) * Math.Sin(x71)
f72i = 1 - (0.3 * Math.Sin(0.5 * Math.Sin(x72)) / 3) * (Math.Cos(x72) / 3) * 0.5 / 3
x81 = x71 + f71 / f71i
x82 = x72 - f72 / f72i
Label25.Text = "x81= " & x81
Label26.Text = "x82= " & x82
f81 = x81 - 0.5 * Math.Sin(0.3 * Math.Cos(x81) / 3) - 1
f82 = -x82 + 0.3 * Math.Cos((0.5 * Math.Sin(x82 / 3) + 1))
cyberforum.ru/pascalabc/thread844601.html