- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
if ($row['num']) $rating = round(($row['rating'] / $row['num']), 0); else $rating = 0;
$rating = $rating;
$rated = <<<HTML
{$rating}
HTML;
return $rated;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+163
if ($row['num']) $rating = round(($row['rating'] / $row['num']), 0); else $rating = 0;
$rating = $rating;
$rated = <<<HTML
{$rating}
HTML;
return $rated;
Увидел это чудо программистской мысли, когда приступал к выполнению заказа.
+152
<form action="/orders/saveorder/?act=update&order=<?php echo $this->order['id'];?>&plan_id=<?php echo $this->treatment_plan['id'];?>&plan=<?php echo $this->treatment_plan['treatment_plan_number'];?>" method="post" name="formas" class="order_form">
Говнокод "среднего программиста" - как он сам себя назвал
+162
$er = array();
$file1=$config['tpl_dir'].$config['general']['site_template'].'/style/catalog.css';
$file2=$config['tpl_dir'].$config['general']['site_template'].'/module/catalog.html';
$file3=$config['tpl_dir'].$config['general']['site_template'].'/module/catalog_read.html';
$file4='modules/catalog/setup_catalog/table_catalog.MYD';
$file5='modules/catalog/setup_catalog/table_catalog_cats.MYD';
$file6='modules/catalog/setup_catalog/table_catalog_comments.MYD';
$file7='modules/catalog/setup_catalog/table_catalog_rating.MYD';
if(file_exists($file1)==True) {}else{$er[]="нет файла стилей <b>\"catalog.css\"</b> <br> он должен находиться в<b> $file1</b>"; }
if(file_exists($file2)==True) {}else{$er[]="нет файла дизайна <b>\"catalog.html\"</b> <br> он должен находиться в<b> $file2</b>"; }
if(file_exists($file3)==True) {}else{$er[]="нет файла дизайна <b>\"catalog_read.html\"</b> <br> он должен находиться в<b> $file3</b>"; }
if(file_exists($file4)==True) {}else{$er[]="нет файла таблицы <b>\"table_catalog.MYD\"</b> <br> он должен находиться в<b> $file4</b>"; }
if(file_exists($file5)==True) {}else{$er[]="нет файла таблицы <b>\"table_catalog_cats.MYD\"</b> <br> он должен находиться в<b> $file5</b>"; }
if(file_exists($file6)==True) {}else{$er[]="нет файла таблицы <b>\"table_catalog_comments.MYD\"</b> <br> он должен находиться в<b> $file6</b>"; }
if(file_exists($file7)==True) {}else{$er[]="нет файла таблицы <b>\"table_catalog_rating.MYD\"</b> <br> он должен находиться в<b> $file7</b>"; }
Установщик модуля. Условия проверки доставляют: бул сравнимаем с булом (и получаем бул), вместо отрицания держим еще одну ветку условия.
+164
...
// description
if( $group_row['description'] == "" )
$this->options["description"]=(int)false; // Можно было просто писать 0
else {
$this->description = $group_row['description'];
$this->options["description"]=(int)true; // Можно было просто писать 1))
}
...
$this->privancy['photos'] = (int)(bool)$group_row['photos'];
$this->privancy['topics'] = (int)(bool)$group_row['topics'];
...
Вчера ночью вот что написал :) Надо мне работать только днём!)
+159
if($_GET['archive'] and $_GET['archive'] != ''){ $archive = $_GET['archive']; } // stupid fix ?
cutenews
+162
function section($sct,$grp = 'all') {
global $g,$a,$d,$lists,$master_list,$currency;
$access = ac_section($sct,$this->adminmode);
if ($access['r'] == 'no' ) {header("Location: /errors/all/403");}
$master = q1("SELECT * FROM `_s` WHERE `_id`='".$sct."' AND `_l`='".GetLanguage()."'");
if (isset($_POST['pcounts'])) {
$_SESSION['_pcount']=(int)$_POST['pcounts'];
} elseif (isset($_GET['pcounts'])) {
$_SESSION['_pcount']=(int)$_GET['pcounts'];
}
if (isset($_SESSION['_pcount'])) $master['_pcount']=$_SESSION['_pcount'];
$master_struct = $this->Struct_fields(qa("SHOW COLUMNS FROM `_s`"));
$grps = qa("SELECT * FROM `_g` WHERE `_s`='".$sct."' AND `_g`='".$grp."' AND `_l`='".GetLanguage()."'".((!empty($a[0]['con']))?(" AND `header` LIKE '%".$a[0]['con']."%'"):('')).((!empty($a[0]['gby']))?(" ORDER BY `".$a[0]['gby']."`".((!empty($a[0]['gdir']))?(' DESC'):(' ASC'))):(" ORDER BY ".$master['_sorting'])).((!empty($a[0]['gfrom']))?(' LIMIT '.$a[0]['gfrom'].','.((!empty($a[0]['gper']))?($a[0]['gper']):((!empty($master['_gcount']))?($master['_gcount']):('10')))):(' LIMIT 0,'.((!empty($a[0]['gper']))?($a[0]['gper']):((!empty($master['_gcount']))?($master['_gcount']):('10'))))));
$this->cq++;
$grps_nav_count = qa("SELECT count(*) `c` FROM `_g` WHERE `_s`='".$sct."' AND `_g`='".$grp."' AND `_l`='".GetLanguage()."'".((!empty($a[0]['con']))?(" AND `header` LIKE '%".$a[0]['con']."%'"):('')));
$grps_len = sizeof($grps);
$grps_struct = $this->Struct_fields(qa("SHOW COLUMNS FROM `_g`"));
$pgs = qa("SELECT * FROM `_p` WHERE `_s`='".$sct."' AND `_g`='".$grp."' AND `_l`='".GetLanguage()."'".((!empty($a[0]['con']))?(" AND `header` LIKE '%".$a[0]['con']."%'"):('')).((!empty($a[0]['by']))?(" ORDER BY `".$a[0]['by']."`".((!empty($a[0]['dir']))?(' DESC'):(' ASC'))):(" ORDER BY ".$master['_sorting'])).((!empty($a[0]['from']))?(' LIMIT '.$a[0]['from'].','.((!empty($a[0]['per']))?($a[0]['per']):((!empty($master['_pcount']))?($master['_pcount']):('10')))):(' LIMIT 0,'.((!empty($a[0]['per']))?($a[0]['per']):((!empty($master['_pcount']))?($master['_pcount']):('10'))))));
$this->cq++;
$pgs_nav_count = qa("SELECT count(*) `c` FROM `_p` WHERE `_s`='".$sct."' AND `_g`='".$grp."' AND `_l`='".GetLanguage()."'".((!empty($a[0]['con']))?(" AND `header` LIKE '%".$a[0]['con']."%'"):('')));
$this->cq++;
$pgs_len = sizeof($pgs);
$pgs_struct = $this->Struct_fields(qa("SHOW COLUMNS FROM `_p`"));
$list_g = '';
$list_p = '';
// Дальше еще строк 200 подобного кода
Нашел бэкап сайта, который надо было дорабатывать
И это только одна функция одного из классов. Всего около 15 классов, в каждом по 30-40 функций.
При этом есть еще куча файлов вызываемых напрямую(отправка сообщений, добавление/редактирование/удаление данных в админке), хотя и используется mod_rewrite
долго думал, потом переписал нужные куски заново
+160
<?php
$lquery = mysql_query("SELECT * FROM language_settings ORDER BY language_id");
$llquery = mysql_query("SELECT * FROM language_settings ORDER BY language_id");
?>
<?php while($ldata = mysql_fetch_array($lquery)){ ?>
<a><?=$ldata['language_name'];?></a>
<?php } ?>
<?php while($lldata = mysql_fetch_array($llquery)){ // Language Loop
$lang_prefix = $lldata['language_prefix'];
language($lang_prefix);
$lang = strtolower($lldata['language_prefix']);
?>
....
<?php
$_lid = $lldata['language_id'];
$_nid = $_REQUEST['nid'];
if($_nid!=""){
// newsid=$_nid AND
$qry = "SELECT *
FROM tbl_products as pc JOIN tbl_products_content as pcc ON pc.product_id=pcc.product_id
WHERE pcc.lang_prefix='".strtolower($lldata['language_prefix'])."' AND pc.product_id='{$_nid}' ORDER BY product_order,product_cat_id";
$cquery = mysql_query($qry);
$cdata = @mysql_fetch_array($cquery);
}
...
}?>
Вот... попалось недавно такое произведение...
+161
if ($_POST["SAVE"]!="OK")
$this->IncludeComponentTemplate();
else
$_POST=Array()
оп оп
+158
public function addOffer($type='vendor.model', $values) {
switch ($type) {
case 'vendor.model': $offer = new yml_type_vendor_model(); break;
}
// Заполняем значениями
$offer->setValues($values);
......
+151
// $reg_date = "12.12.2007 15:41";
$this->reg_date = strptime($reg_date, "%d.%m.%Y %H:%M");
// и теперь обратно. Казалось бы, все просто, ан нет!
$rd = $this->reg_date;
$reg_date = mktime($rd['tm_hour'], $rd['tm_min'], 0, $rd['tm_mon']+1, $rd['tm_mday'], 1900+$rd['tm_year']); //как это???
$reg_date = strftime("%d.%m.%Y %H:%M", $reg_date);
// нормально, у strptime и strftime порядок аргументов разный
// $r_date == "12.12.2007 15:41"
Попытался написать на PHP простенькую штуку, глаза на лоб полезли от того как там делаются элементарнейшие вещи. Скажите, что все можно сделать проще и я просто плохо читал документацию!