- 1
@flush();@ob_flush();@flush();
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+171
@flush();@ob_flush();@flush();
Я сказал flush(), сука! Эта фигня встречается в одном .php файле раз 20
+157
session_start();
$value = array(
"severity" => $severity,
"message" => $message,
"filepath" => $filepath,
"line" => $line
);
if(empty($_SESSION['data']))
{
$_SESSION['data'] = serialize($value);
}
else
{
unset($_SESSION['data']);
$_SESSION['data'] = serialize($value);
}
header("Location: ".BASE_URL."/error/php_error/");
Вот обработчик ошибок из уже упомянутого мною проекта. Тот же самый кодер обрабатывает ошибки. При более чем одной ошибке валиться весь проект, из-за того что сессия уже стартовала. Увидев это у меня возник facepalm.
+158
if(($res = GetMysqlRes("SELECT id,name,price,anons2,colors,sizes,anons,content2,content,maker,title FROM {$oCfg->prefX}core WHERE top=".$pid." and act=1 ORDER BY date DESC LIMIT ".($pnum-1)*$eop.",".$eop."",array($pid),false)) != false)
{
while (($row = $db->fetch_row($res)) !== false)
{
...<script type='text/javascript'>
function chs".$row[0]."() {
document.getElementById(\"s_size".$row[0]."\").innerHTML = document.getElementById(\"sel_size".$row[0]."\").value;
}
function chc".$row[0]."() {
document.getElementById(\"s_color".$row[0]."\").innerHTML = document.getElementById(\"sel_color".$row[0]."\").value;
}
</script>...
}
}
это находилось в цикле. К этому же потом обращались для добавления в корзину товара.
Три точки значат что там есть еще код.
P.S. Опять же привет мазе.
+159
$res = GetMysqlRes("SELECT anons2 FROM {$oCfg->prefX}core WHERE id=93");
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
$to = $row[0];
}
В CMS есть поле E-Mail, куда отправлять новые заказы.
Так же есть поле anons, куда обычно пишется анонс статьи или страницы.
В данном случае для хранения мыла, была создана отдельная строка anons2, туда же записывался адрес.
P.S. Мазе привет.
+164
if( $check_referer ) {
if( $_SERVER['HTTP_REFERER'] == ''and $_REQUEST['subaction'] != 'dologin') $allow_login = true;
elseif( clean_url( $_SERVER['HTTP_REFERER'] ) == clean_url( $_SERVER['HTTP_HOST'] ) ) $allow_login = true;
}else {
$allow_login = true;
}
dle software
+160
<?php
if ($res) {
$i=0;
while ( $arr = $res->fetchRow() )
{
$id = $arr['id'];
$userid = $arr['userid'];
$alias = $arr['alias'];
$startcity = $arr['startcity'];
$endcity = $arr['endcity'];
$godate = $arr['godate'];
$gohour = $arr['gohour'];
$gorecset = mapSetToWeekdays($arr['gorecset']);
$recdays = implode(" ", $gorecset);
$godate = ereg_replace("Mon", $l['mo'], $godate);
$godate = ereg_replace("Tue", $l['tu'], $godate);
$godate = ereg_replace("Wed", $l['we'], $godate);
$godate = ereg_replace("Thu", $l['th'], $godate);
$godate = ereg_replace("Fri", $l['fr'], $godate);
$godate = ereg_replace("Sat", $l['sa'], $godate);
$godate = ereg_replace("Sun", $l['su'], $godate);
$rides[$i] = array('id' => $id,
'userid' => $userid,
'alias' => $alias,
'startcity' => $startcity,
'endcity' => $endcity,
'gohour' => $gohour,
'godate' => $godate,
'recdays' => $recdays,
);
$i++;
}
$SMARTY->assign("rides", $rides);
}
Этот чудесный пример говнокода написал один финн, с которым мне приходится работать вместе.
Как видно, он, имея 4 года опыта разработки на PHP, так и не знает про extract(), compact(), а также про возможность использовать массивы в качестве аргументов str_replace. Хотя, в данном случае можно было просто написать $rides[] = $arr;
+169
switch($type) {
case 0:
$r_type = 0;
break;
case 2:
$r_type = 2;
break;
case 1:
$r_type = 1;
break;
}
нашел в своем старом коде.
+153
function ini_size_to_bytes($value)
{
$value = trim($value);
$retval = intval($value);
switch(strtolower($value[strlen($value) - 1]))
{
case 'g':
$retval *= 1024;
/* break missing intentionally */
case 'm':
$retval *= 1024;
/* break missing intentionally */
case 'k':
$retval *= 1024;
break;
}
return $retval;
}
vBulletin 4.0.3 (лицензионка, есть согласие на публикацию)
+160
<?php
include '/system/config_bd.php'; // соединение с базой
class pagination_start {
public $page;
public $CountListPage=10;
public $sql="SELECT * FROM `news`";
public $start;
public $limit;
public $ires;
public function page_settings() {
$this->page_get();
$this->start=($this->page-1)*$this->CountListPage;
$this->limit=" LIMIT $this->start,$this->CountListPage";
$this->ires=mysql_query($this->sql.$this->limit);
}
public function page_get() {
if(empty($_GET['page'])){$this->page=1;}
else {$this->page=$_GET['page'];}
}
}
class pagination_end extends pagination_start{
public $link_interval;
public $i;
public $sp;
public function pagination($class_all,$class_once) {
$link_page = '';
$this->page_get();
$count=mysql_num_rows(mysql_query($this->sql));
if($count>$this->CountListPage){
$CountList=ceil($count/$this->CountListPage);
if($this->page > 3 && $CountList > 5){echo '<span class="'.$class_all.'"><a href="?page=1'.$this->link_interval.'">1</a></span><span class="'.$class_all.'">...</span>';}
if($this->page > 3 && $CountList > 5){$this->sp=$this->page-2;}else{$this->sp=1;}
if($this->page > $CountList-3 && $CountList > 5){$this->sp=$CountList-4; }
if($CountList>5)$cpc=5;else $cpc=$CountList;
for($this->i=$this->sp;$this->i<$this->sp+$cpc;$this->i++){
if($this->i == $this->page){ printf ('<span class="'.$class_once.'">%s</span>',$this->i); }
else{ $suit=$this->link_interval.$this->i;
$links_cent = '<span class="'.$class_all.'"><a href="?page='.$suit.'">'.$this->i.'</a></span>';
echo $links_cent; } }
$suit=$this->link_interval."?page=".$CountList."";
if($this->page<=$CountList-3 and $CountList>5){echo '<span class="'.$class_all.'">...</span> <span class="'.$class_all.'"><a href="'.$suit.'">'.$CountList.'</a></span> ';} }
}
}
$CountListPage = 5; // Сколько объектов отображать на странице # по умолчанию 10
$sql="SELECT * FROM `news` "; // SQL запрос # по умолчанию "SELECT * FROM `news`"
$class_all='page_all'; // Css класс всех страниц кроме текущей
$class_once='class_once'; // Css класс всех страниц кроме текущей
/* Формирование страниц и sql запрос */
$pagination = new pagination_start();
$pagination->CountListPage = $CountListPage;
$pagination->sql = $sql;
$pagination->page_settings();
while($ires_result=mysql_fetch_array($pagination->ires))
{
echo $ires_result['id']."<br/>";
}
/* Пагенирование */
$pagination_end = new pagination_end();
$pagination_end->CountListPage = $CountListPage;
$pagination_end->sql = $sql;
$pagination_end->pagination($class_all,$class_once); // От css клас от 2 страници до предпоследней
+37
error_log('json_upload(): called');
error_log('json_upload(): dump $_POST');
foreach(explode("\n", var_export($_POST, TRUE) ) as $val) error_log('advupload_json_upload() dump: ' . $val);
error_log('json_upload(): dump $_GET');
foreach(explode("\n", var_export($_GET, TRUE) ) as $val) error_log('advupload_json_upload() dump: ' . $val);
отладка аццкого json вызова который вызываецо с клиента для загрузке файла покускам.
думать было лень. наговнякал :)
потом tail -f /var/log/apache2/errors.log в консоли и фпирет