- 1
//проверяем, не извлечены ли данные пользователя из базы. Если нет, то он не вошел, либо пароль в сессии неверный. Выводим окно для входа. Но мы не будем его выводить для вошедших, им оно уже не нужно.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+163
//проверяем, не извлечены ли данные пользователя из базы. Если нет, то он не вошел, либо пароль в сессии неверный. Выводим окно для входа. Но мы не будем его выводить для вошедших, им оно уже не нужно.
Не замысловатый комментарий из истории одного проекта
+158
$dbhost = DB_HOSTNAME;
$dbuser = DB_USERNAME;
$dbpass = DB_PASSWORD;
$dbdatabase = DB_DATABASE;
$dbprefix = DB_PREFIX;
Из платного модуля для опенкарта.
+155
if($s["type"] == 9){
if(in_array($ch_newprice, array("1220","1185","1244"))){
if(in_array($ch_oldprice,array("1237","1239","1238"))){
$status = delete_DW_Customer($s["login"]);
if($status == 0) {
echo "ERROR!!! Can't delete user in server DrWEB\n";
//break;
}
if(in_array($ch_oldprice,array("1239"))){
delete_DW_Customer($s["login"]."_android");
}
}
}
}
IF Driven Development + Magic Numbers
+154
for ($i = 0; $i < count($total_data); $i++) {
if ($total_data[$i]['title'] == "Сумма") {
$sum = (float) $total_data[$i]['value'];
$tdata = array();
$tdata[count($total_data)]['title'] = "Сумма со скидкой";
$tdata[count($total_data)]['code'] = "discount_total";
$tdata[count($total_data)]['value'] = $sum;
$tdata[count($total_data)]['text'] = $this->currency->format($sum);
$tdata[count($total_data)]['sort_order'] = "2";
$total_data = array_merge($total_data, $tdata);
$id_sum = $i;
$sub_total = $sum;
}
if ($total_data[$i]['title'] == "Итого") {
$id_discount = count($total_data) - 1;
$total_data[$i]['value'] = (float) $total_data[$i]['value'] - (float) $total_data[$id_sum]['value'] + (float) $total_data[$id_discount]['value'];
$total_data[$i]['text'] = $this->currency->format($total_data[$i]['value']);
}
}
+160
while ($rown2 = mysql_fetch_array($nresult2)) {
// Несколько строк кода
$znap = $rown2['znap'];
// И ещё немного
// А теперь надо узнать название шоссе, на котором расположен коттедж:
if ($znap == "1") {
$napr = "Алтуфьевское";
} elseif ($znap == "2") {
$napr = "Дмитровское";
} elseif ($znap == "3") {
$napr = "Куркинское";
} elseif ($znap == "4") {
$napr = "Ленинградское";
} elseif ($znap == "5") {
$napr = "Новосходненское";
} elseif ($znap == "6") {
$napr = "Рогачевское";
} elseif ($znap == "7") {
$napr = "Савеловское";
} elseif ($znap == "8") {
$napr = "Боровское";
} elseif ($znap == "9") {
$napr = "Калужское";
} elseif ($znap == "10") {
$napr = "Киевское";
} elseif ($znap == "11") {
$napr = "Старокалужское";
} elseif ($znap == "12") {
$napr = "Варшавское";
} elseif ($znap == "13") {
$napr = "Новокаширское";
} elseif ($znap == "14") {
$napr = "Симферопольское";
} elseif ($znap == "15") {
$napr = "Волоколамское";
} elseif ($znap == "16") {
$napr = "Пятницкое";
} elseif ($znap == "17") {
$napr = "Горьковское";
} elseif ($znap == "18") {
$napr = "Домодедовское";
} elseif ($znap == "19") {
$napr = "Егорьевское";
} elseif ($znap == "20") {
$napr = "Носовихинское";
} elseif ($znap == "21") {
$napr = "Рязанское";
} elseif ($znap == "22") {
$napr = "Ильинское";
} elseif ($znap == "23") {
$napr = "Можайское / Минское";
} elseif ($znap == "25") {
$napr = "Новорижское";
} elseif ($znap == "26") {
$napr = "Рижское";
} elseif ($znap == "27") {
$napr = "Рублево-Успенское";
} elseif ($znap == "28") {
$napr = "Сколковское";
} elseif ($znap == "29") {
$napr = "Успенское";
} elseif ($znap == "30") {
$napr = "Каширское";
} elseif ($znap == "31") {
$napr = "Новорязанское";
} elseif ($znap == "32") {
$napr = "Осташковское";
} elseif ($znap == "33") {
$napr = "Щелковское";
} elseif ($znap == "35") {
$napr = "Подушкинское";
} elseif ($znap == "34") {
$napr = "Ярославское";
} else {
$napr = "";
}
// Дальше ещё куча кода
Во, заказали доработку проекта....
+155
if(isset($_POST['tg'])){$tg=mysql_real_escape_string(htmlspecialchars($_POST['tg']));}else{$tg=null;}
if(isset($_POST['sess'])){$sessid=mysql_real_escape_string(htmlspecialchars($_POST['sess']));}else{$sessid=null;}
if($sessid==null){$sessid=session_id();}
$str=null;
if($v>0){
// Проверяем сумму заказа для доставки
$dRzdId=$dbRes->show1Var("s_rzd","page='".PAGE_DOSTAVKA."'","id");
$dCntId=$dbRes->show1Var("s_cnt","rzdId='".$dRzdId."'","id");
$dostavkaId=$dbRes->show1Var("s_imag","cntRowId='".$dCntId."'","id");
$cprice=0;
$zakazPreStr=$res->showTabAsPage("i_zakaz","sess='".$sessid."' AND imagId<>'".$dostavkaId."'","imagId,imagCol,zakazStr","id",0);
foreach($zakazPreStr as $zakazStr){
foreach($zakazStr as $ke=>$va){
$$ke=stripcslashes($va);
}
$price=$res->show1Var("s_imag","id='".$imagId."'","tovPrice");
$tovCol=1;
if($zakazStr>0){
$tovCol=$res->show1Var("i_zakaz","imagId='".$zakazStr."' AND sess='".$sessid."'","imagCol");
}
$cprice+=$price*$imagCol*$tovCol;
}
if($v==$dostavkaId&&$c>0){
if($cprice>=MAX_DOSTAVKA){
$c=0;
}
}else{
if($cprice>=MAX_DOSTAVKA){
$query="UPDATE i_zakaz SET imagCol='0', color='".$color."' WHERE sess='".$sessid."' AND imagId='".$dostavkaId."'";
@$insres=mysql_query($query);
}
}
//if($_SERVER['REMOTE_ADDR']=="87.224.169.4"){echo $str.=$v."--";}
switch($to){
case "ins":
// Сначала проверим, существует ли товар, а потом либо добавим к существующему нужное количество, либо добавим
$res=mysql_query("SELECT imagCol FROM i_zakaz WHERE sess='".$sessid."' AND imagId='".$v."' AND zakazStr='".$p."'");
$col=mysql_num_rows($res);
if($col==0){
@$insres=mysql_query("INSERT INTO i_zakaz SET sess='".$sessid."',imagId='".$v."',imagCol='".$c."',color='".$color."',zakazStr='".$p."',adttm='".date("YmdHis")."'");
}else{
while($row=mysql_fetch_assoc($res)){
/*
* Убрал суммирование количества заказа
$imagCol=$row['imagCol'];
$imagCol=$imagCol+$c;
*/
@$insres=mysql_query("UPDATE i_zakaz SET imagCol='".$c."',color='".$color."' WHERE sess='".$sessid."' AND imagId='".$v."' AND zakazStr='".$p."'");
}
}
mysql_free_result($res);
$str.=$imagRes->pageKorzina($sessid);
break;
case "del":
if($p==null){
// В этом случае удаляем все внутреннее содержание
@$res=mysql_query("DELETE FROM i_zakaz WHERE sess='".$sessid."' AND imagId='".$v."' AND zakazStr='".$p."'");
@$res=mysql_query("DELETE FROM i_zakaz WHERE sess='".$sessid."' zakazStr='".$v."'");
}else{
@$res=mysql_query("DELETE FROM i_zakaz WHERE sess='".$sessid."' AND imagId='".$v."' AND zakazStr='".$p."'");
}
switch($tg){
case 0:
$str.=$imagRes->pageKorzina($sessid);
break;
case 1:
$str.=$imagRes->kz($sessid,"imag");
break;
}
break;
case "update":
$res=mysql_query("SELECT imagCol FROM i_zakaz WHERE sess='".$sessid."' AND imagId='".$v."' AND zakazStr='".$p."'");
$col=mysql_num_rows($res);
if($col==0){
@$insres=mysql_query("INSERT INTO i_zakaz SET sess='".$sessid."',imagId='".$v."',imagCol='".$c."',zakazStr='".$p."',color='".$color."'");
}else{
@$res=mysql_query("UPDATE i_zakaz SET imagCol='".$c."',color='".$color."' WHERE sess='".$sessid."' AND imagId='".$v."' AND zakazStr='".$p."'");
}
switch($tg){
case 0:
$imagRes->pageKorzina($sessid);
//$str.=$imagRes->kz($sessid,"imag");
break;
case 1:
// Ищем id заказа
$res=new db_func();
$zakazid=$res->show1Var("i_bill","sessid='".$sessid."'","id","id",1);
if($zakazid>0){
$sessid=$res->show1Var("i_bill","id='".$zakazid."'","sessid","id",1);
}
$str.=$imagRes->kz($sessid,"imag");
break;
}
break;
}
}
$str=str_replace("{ROOTPATH}",$rootpath,$str);
Сегодня в нашей программе: November.CMS и ее "Корзина" =))
+157
function commandLineArgsToGet() {
global $argv;
foreach ($argv as $arg) {
$param = explode('=', $arg);
if (count($param) == 2) {
$_GET[$param[0]] = $param[1];
}
else {
$_GET[$param[0]] = null;
}
}
}
Встретил функцию для перевода аргументов командной строки в $_GET-массив.
+156
while(true)
{
$i++; if ($i == 10) { $res = array(); break;}
$site = dq("
SELECT a.username, a.id, a.url, a.title
FROM ylike a
LEFT JOIN amp_a_users b ON b.username = a.username
LEFT JOIN view_log c ON c.username = '".$user_n."' AND c.video_id = a.id
WHERE a.active = '1' AND b.video_credits >0 AND (c.video_id IS NULL AND a.username !='".$user_n."')
ORDER BY RAND()
LIMIT 1");
$res = mysqli_fetch_array($site);
if ($chkd[$res[url]] == 1)
{continue;}
else{
$chkd[$res[url]] = 1;
}
if (get_likes($res[url])>=0){break;}
$res = array();
}
Суть функционала в том что пользователи добавляют видео с youtube и покупают так называемые кредиты. И когда кто-то смотрит твое видео он получает 1 кредит, при этом у тебя снимается. Блок кода направлен на то чтобы найти видео, которое ты еще не смотрел, активное и не личное.
$user_n = логин текущего пользователя. Кода наглядно показывает как правильно, оптимизировано это все реализовать.
Мало того того что запросы в цикле, так еще и и join происходит по varchar. Кстати чувак вобще вместо id юзеров использует логины пользователей для зависимостей пользователя и его различных данных.
get_likes() по логике не понятно для чего, потому что функция запрашивает с youtube количество лайков, и по сути оно может быть либо 0 либо больше.
+154
/*
* BANERS
*/
$IMG="<div class=\"tovMain\" id=\"bnList1_imgBlock\"></div>
<script type=\"text/javascript\">
var bnList1_images=[";
$banerId=$res->show1Var("s_rzd","page='".PAGE_BANER."'","id");
$imgPreRes=$res->showTabAsPage("s_cnt","rzdId='".$banerId."' AND image>'' AND `show`='Y'","image","id",0);
foreach($imgPreRes as $imgRes){
$IMG.="'{ROOTPATH}images/".$imgRes["image"]."',";
}
$IMG=substr($IMG,0,-1);
$IMG.="];
var bnList1_old_image='';
var bnList1_x=10;
var bnList1_y=3;
var bnList1_mercaniy=2;
var bnList1_speed=500;
var bnList1_speed1=800;
var bnList1_w=Math.round(document.getElementById(\"bnList1_imgBlock\").offsetWidth/bnList1_x);
var bnList1_h=Math.round(document.getElementById(\"bnList1_imgBlock\").offsetHeight/bnList1_y);
var tek=0;
bnList1Listing(bnList1_images[tek]);
setInterval(\"tek=(bnList1_images.length>(tek+1)?tek+1:0);bnList1Listing(bnList1_images[tek]);\",5000);
for(var i=1;i<=bnList1_x;i++){
for(var j=1;j<=bnList1_y;j++){
bnList1CreateBlocks(\"bnList1_block_\"+i+\"_\"+j+\"_1\",bnList1_w,bnList1_h,bnList1_w*(i-1),bnList1_h*(j-1));
bnList1CreateBlocks(\"bnList1_block_\"+i+\"_\"+j+\"_2\",bnList1_w,bnList1_h,bnList1_w*(i-1),bnList1_h*(j-1));
}
}
</script>";
/*$rndBanerId=array_rand($imgPreRes);
$img=$imgPreRes[$rndBanerId]["image"];
$IMG="<div class=\"tovMain\" id=\"slideshow\">
<img src=\"{ROOTPATH}images/empty.gif\" alt=\"\" />
<img src=\"{ROOTPATH}img.php?image=".$img."&w=656&h=189\" alt=\"\" />
</div>"; // Простая сквозная картинка
//$HD_IMG="<div class=\"tovMain\">".($cntRes->hdImg())."</div>"; // Сменяющиеся картинки
* s
*/
$BANER=$cntRes->site_simpleStr(PAGE_BANER,"text");
$content=str_replace("{BANER}",$BANER,$content);
$content=str_replace("{IMG}",$IMG,$content);
/*
* IMAG
*/
$TOVMAIN=$imagRes->showAsTovList("main");
$content=str_replace("{TOVMAIN}",$TOVMAIN,$content);
unset($TOVMAIN);
/*
* CONTENT
*/
$NAV_ROW=$cntRes->site_nav();
$STR=$cntRes->site_pageHd();
$STR.=$cntRes->site_imagFilter();
$STR.=$cntRes->site_cont();
$SUB_STR=$cntRes->commonStr();
$content=str_replace("{NAV_ROW}",$NAV_ROW,$content);
$content=str_replace("{STR}",$STR,$content);
$content=str_replace("{SUB_STR}",$SUB_STR,$content);
unset($STR,$SUB_STR);
$content=str_replace("{BACK}",BACK,$content);
$content=str_replace("{UP}",UP,$content);
$content=str_replace("{SEND}",SEND,$content);
$content=str_replace("{FORM_SEND_ZAG}",FORM_SEND_ZAG,$content);
$content=str_replace("{FORM_NAME}",FORM_NAME,$content);
$content=str_replace("{FORM_POSTADDR}",FORM_POSTADDR,$content);
$content=str_replace("{FORM_PHONE}",FORM_PHONE,$content);
$content=str_replace("{FORM_EML}",FORM_EML,$content);
$content=str_replace("{FORM_MSG}",FORM_MSG,$content);
$content=str_replace("{FORM_SEND_SUCCESS}",FORM_SEND_SUCCESS,$content);
$content=str_replace("{FORM_SEND_ERROR}",FORM_SEND_ERROR,$content);
$content=str_replace("{REQUIRED_FIELDS}",REQUIRED_FIELDS,$content);
$content=str_replace("{MAIN}",MAIN,$content);
if(__lang=="en"){
$content=str_replace("logo.png","logo_en.png",$content);
}
templates/default/template.php
Знакомьтесь, "DEFAULT SITE TEMPLATE" (Кусок 2-й) ;)
+155
<?php
/*
* DEFAULT SITE TEMPLATE
*/
/*
* HTML
*/
$showNews=false;
switch(__page){
case "main":
$filename=PATH.TEMPLATE_PATH.TEMPLATE_HTML;
$showNews=true;
break;
default:
if(!array_key_exists(PAGE_ZAVOD,$GLOBALS["rzdAr"])){
$filename=PATH.TEMPLATE_PATH."inner.tpl";
}else{
$filename=PATH.TEMPLATE_PATH."zavod.tpl";
$showNews=true;
}
break;
}
if(file_exists($filename)){
$curfile=fopen($filename,"rb");
$content=fread($curfile,filesize($filename));
fclose($curfile);
unset($surfile);
}else{$content=null;}
/*
* CONSTANTS
*/
$type=$res->show1Var("s_rzd","page='".__page."'","razdelTypeId");
$rootId=$res->show1Var("s_rzd","page='".PAGE_ROOT."'","id");
$rzdId=$res->show1Var("s_rzd","page='".__page."'","id");
define("RZD_TYPE",$type);
define("ROOT_ID",$rootId);
define("RZD_ID",$rzdId);
unset($type,$rootId,$rzdId);
/*
* REGULAR MENU
*/
$MENU=$menuRes->menu_show("menuTypeId='1' AND level='0'",false,0);
if(__page=="main"){
$CATNAME=$res->show1Var("s_rzd","page='".PAGE_ROOT."'","name");
$CATMENU=$cntRes->site_catpanel(PAGE_ROOT);
}else{
$showCat=true;
if(!array_key_exists("catalog",$_GLOBALS["rzdAr"])){
if(count($GLOBALS["rzdAr"])>0){
$rzdIAr=$GLOBALS["rzdAr"];
//if(count($rzdIAr)>2){
// $rzdIAr=array_slice($rzdIAr,-2);
//}else{
$rzdIAr=array_slice($rzdIAr,-1);//}
$rzdIAr=array_keys($rzdIAr);
$uRzdId=$res->show1Var("s_rzd","page='".$rzdIAr[0]."'","id");
if(($res->show1Var("s_rzd","uprazdel='".$uRzdId."'","id"))>0){
$CATNAME=$res->show1Var("s_rzd","id='".$uRzdId."'","name");
$CATMENU=$menuRes->menu_show("uprazdel='".$uRzdId."'",true);
$showCat=false;
}
}
}
if($showCat==true){
$CATNAME=$res->show1Var("s_rzd","page='".PAGE_ROOT."'","name");
$CATMENU=$menuRes->menu_show("uprazdel='".ROOT_ID."'",true);
}
}
$content=str_replace("{MENU}",$MENU,$content);
$content=str_replace("{CATNAME}",$CATNAME,$content);
$content=str_replace("{CATMENU}",$CATMENU,$content);
unset($MENU,$CATMENU);
/*
* HELO
*/
$csPreRes=$res->showTabAsPage("s_contacts","id>0","*","id",1);
foreach($csPreRes as $csRes){
foreach($csRes as $k=>$v){
$$k=stripcslashes($v);
switch($k){
case "hd_helo":
$content=str_replace("{HD_HELO}",$$k,$content);break;
case "hd_str":
$content=str_replace("{HD_STR}",$$k,$content);break;
case "ft_helo":
$content=str_replace("{FT_HELO}",$$k,$content);break;
case "ft_str":
$content=str_replace("{FT_STR}",$$k,$content);break;
}
unset($$k);
}
}
templates/default/template.php
Знакомьтесь, "DEFAULT SITE TEMPLATE" из "November.CMS" (Кусок 1-й) ;)