- 1
http://f.cl.ly/items/1B362r0E3T0z3E3v3A1f/Screen%20Shot%202013-01-10%20at%2011.01.45.png
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+136
http://f.cl.ly/items/1B362r0E3T0z3E3v3A1f/Screen%20Shot%202013-01-10%20at%2011.01.45.png
Это надо видеть.
+55
$now = date("Y-m-d H:i:s");
if($time==1) { $now = date("Y-m-d H:i:s");}
elseif($time==2) {
//$now = strtotime(date("Y-m-d H:i:s"));
if($type=="hour"){
$now = strtotime(date("Y-m-d H:i:s"))-3600;
}
else if($type=="day"){
$now = strtotime(date("Y-m-d H:i:s"))-86400;
}
else if($type=="month"){
$now = strtotime(date("Y-m-d H:i:s"))-(86400*30);
}
$now = date("Y-m-d H:i:s",$now);
}
$sql = ".....WHERE DATE_SUB('".$now."', INTERVAL .....";
Между первой и второй перерывчик небольшой, ибо далее он использует NOW()...
+69
//А теперь я научу вас как правильно определять тип картинки
$type = '';
# JPEG:
$src = @imagecreatefromjpeg("./js/ajax_drag_drop_upload/php/files/".$f);
if ($src !== false)
{
$type = 'jpg';
}
else {
# GIF:
$src = @imagecreatefromgif("./js/ajax_drag_drop_upload/php/files/".$f);
if ($src !== false)
{
$type = 'gif';
}
else {
# PNG:
$src = @imagecreatefrompng("./js/ajax_drag_drop_upload/php/files/".$f);
if ($src !== false)
{
$type = 'png';
}
}
// А что делать с BMP? Та ну нафиг, BMP - это миф...
}
// Вот и все. Теперь вы знаете с каким типом картинки работаете
// Ну а здесь уже можете писать ваш говнокод
Очень эпичный code snippet. Посмотрите как автор ловко владеет возможностями языка PHP. В закладки!
+52
//--Корзина заказа
$misc_basket=array();
$misc_basket['num']=0;
//--проверка наличия в корзине товаров
$b_sum=0;
$b_num=0;
//var_dump($_SESSION['goods']);
if(isset($_SESSION['goods']))
{
// echo "11";
foreach(explode("^^^",$_SESSION['goods']) as $item)
{
$arr1=explode(":::",$item);
$type="";
if($arr1[2]=='disc')$dbs="disc";
elseif($arr1[2]=='tire') $dbs="shina";
else $dbs="truck_shina";
$iddb=abs($arr1[0]);
// echo "select `price` from `".PREFIX."$dbs` where `id`=$iddb";
$res=$db->query("select `price` from `".PREFIX."$dbs` where `id`=$iddb");
if($res->num_rows)
{
$arr=$res->fetch_array();
$b_sum+=intval($arr1[1])*correct_double($arr['price']);
$b_num+=$arr1[1];
}
}
}
$misc_basket['num']=$b_num;
$misc_basket['sum']=$b_sum;
+157
$( function() { $('#brief').wysibb( window.uCoz.uwbb ); } );
$( function() { $('#message').wysibb( window.uCoz.uwbb ); } );
$( function() { $('#format_message, label[for="format_message"]').hide(); } );
$( function() { $('#format_brief, label[for="format_brief"]').hide(); } );
В одну конструкцию-то стрёмно вставлять...
+23
struct S* gpS;
struct S
{
// this class has no user-defined default ctor
void *operator new (size_t size, void*p, int i)
{
((S*)p)->i = i; // ordinarily, should not initialize
// memory contents inside placement new
return p;
}
int i;
};
Код с сайта майкрософт.
+10
for (int i = 0; i < 15; i++) {
// Прикольное место, надо прокомментировать
// Если наша функция Fork() вернула true, то мы
// в дочернем процессе и форкаться больше не надо
// Форканье - это задача родителя
// Дети этим заниматься не должны
if (Fork()) break;
}
Создание дочерних процессов. Вот такой костыль. Есть идеи, как улучшить?
+127
Название: Регистрация заказчика.
Основное действующее лицо: Менеджеру по работе с заказчиками
Область действия: Система
Уровень: Пользователя
Минимальные гарантии: Система останется в рабочем состоянии
Гарантии успеха: Клиент загеристрирован
Триггер: Клиент обратился к менеджеру по работе с заказчиками с просьбой зарегистрироваться
Основной сценарий:
1. Клиент обращается к менеджеру по работе с заказчиками, менеджер открывает регистрацию, система запоминает.
2. Менеджер по работе с заказчиками запрашивает у клиента, имя, клиент сообщает имя, менеджер вводит имя в соответвующую форму, система запоминает.
3. Менеджер по работе с заказчиками запрашивает у клиента, отчество, клиент сообщает отчество, менеджер вводит отчество в соответвующую форму, система запоминает.
4. Менеджер по работе с заказчиками запрашивает у клиента, фамилию, клиент сообщает фамилию, менеджер вводит фамилию в соответвующую форму, система запоминает.
5. Менеджер по работе с заказчиками запрашивает у клиента, номер паспорта, клиент сообщает номер паспорта, менеджер вводит номер паспорта пв соответвующую форму, система подтверждает правильность номера паспорта.
6. Менеджер по работе с заказчиками запрашивает у клиента, дату выдачи паспорта, клиент сообщает дату выдачи паспорта, менеджер вводит дату выдачи паспорта в соответвующую форму, система подтверждает.
7. Менеджер по работе с заказчиками запрашивает у клиента, контактный номер, клиент сообщает контактный номер, менеджер вводит контактный номер в соответвующую форму, система подтверждает.
8. Менеджер по работе с заказчиками закрывает регистрацию, система сохраняет информацию о клиенте и подтверждает успешность регистрации.
Альтернативы:
5.а. Введен неверный номер паспорта.
1. Система сообщает об ошибке
2. Переход к пункту 5 основного сценария.
6.а. Клиент уже зарегистрирован.
1. Система сообщает об ошибке.
Моя боль...
−110
Sub WriteCategories(number, choice)
strSql = ""
strSql2 = ""
If number = 1 Then
strSql = "SELECT name, category_type_id" '... the rest is skipped
Elseif number = 2 Or number = 3 Then
strSql = "SELECT goco.category_order, goco.category_type_id," '... the rest is skipped
End If
If number = 1 And choice = 1 Then
strSql2 = "SELECT gosct.category_type_id, goct.operator_id," '... the rest is skipped
Set RS2 = db.Execute(strSql2)
' --- No sub categories are displayed if choice = 3
Elseif choice <> 3 Then
strSql2 = "SELECT goco.category_type_id, goco.sub_category_order, ..." 'the rest is skipped
Set RS2 = db.Execute(strSql2)
End If
Set RS = db.Execute(strSql)
' --- CategoryListCurrent should not display selected category in categoryListMoveTo and vice versa.
If number = 2 And choice = 1 Then
'... the real code is skipped
Do Until RS.EOF
'... the real code is skipped
Loop
End If
If number = 2 And choice = 2 Then
'... the real code is skipped
Do Until RS.EOF
'... the real code is skipped
Loop
End If
' --- Loop through the recordset and print categories and sub categories.
Do Until RS.EOF
'... the real code is skipped
If number = 2 And choice = 1 Then
'... the real code is skipped
End If
If number = 2 And choice = 2 Then
'... the real code is skipped
End If
If number = 3 And choice = 3 And subConfigCatId <> -1 Then
'... the real code is skipped
End If
' --- Print main categories
Response.Write ("<option style=""color:"& color &""" value=""" & RS("category_type_id") & "_0"" " & tempSel & " " & disabled & ">" & RS("name") & "</option>" &vbCrLf)
If choice <> 3 Then
' --- Print sub categories
RS2.MoveFirst
If Not RS2.EOF Then
Do Until RS2.EOF
'... the real code is skipped
If catId1 <> -1 And number = 2 And choice = 1 And subCatId1 > 0 Then
'... the real code is skipped
End If
If catId2 <> -1 And number = 2 And choice = 2 And subCatId2 > 0 Then
'... the real code is skipped
End If
' --- Only print sub categories under a matching category
If CLng(RS2("category_type_id")) = CLng(RS("category_type_id")) Then
Response.Write ("<option value=""" & RS2("category_type_id") & "_" & RS2("sub_category_type_id") & """ " & tempSelSub & "> - " & RS2("name") & "</option>" &vbCrLf)
End If
RS2.MoveNext
Loop
End If
End If
'... the real code is skipped
Loop
End Sub
Один параметр числовой. Назовём его number (C) Captain Obvious.
Второй параметр тоже числовой. Но так как имя number занято, назовём его choice.
Именованные константы?.. Анти-паттерн «Spaghetti Code»? Не, не слышал…
+61
/**
* Convert unix timestamp into: (no leading zeros)
* array( 'day' => x, 'month' => x, 'year' => x, 'hour' => x, 'minute' => x );
* Written into separate static public function to allow for timezone to be used easily
*
* @param integer [$unix] Timestamp
* @return array Date parts
*/
static public function unixstamp_to_human( $unix=0 )
{
$tmp = gmdate( 'j,n,Y,G,i', $unix );
list( $day, $month, $year, $hour, $min ) = explode( ',', $tmp );
return array( 'day' => $day,
'month' => $month,
'year' => $year,
'hour' => $hour,
'minute' => $min );
}
IPB 3.x
Интересно сделали? А как бы сделали PRO :) ?