Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

делимся диким индусским кодом


freelancer

Recommended Posts

при работе на тем или иным проектом каждый из нас наверняка натыкался на дикий индусский код от которого волосы встают дыбом.

вот этот код прислал мне товарищ, представившийся Julio/ кусок кода и сам файл в атаче

<!--?php
$conexion = mysql_connect("localhost", "xxxx", "xxxx");
mysql_select_db("spazioso_oc1", $conexion);
mysql_query("SET NAMES 'utf8';");
print $header;
$c1 = mysql_query("SELECT `rate` FROM `oc_tax_rate` WHERE `tax_rate_id` = '86';", $conexion);

if (mysql_num_rows($c1) --> 0) {
	$r1 = mysql_fetch_assoc($c1);
	$factor = (100 + $r1["rate"]) / 100;
}

print $column_right;
?><div id="content">
 <!--?php print $content_top; ?-->
 <!--
 <div class="clearfix cat-head">
  <div class="cat-nav">
	  <div class="cat-header clearfix">
		<h1 class="cat_heading"><?php print $heading_title; ?></h1>
	  </div>
  </div>

  <?php /*if ($categories) { ?>
  <h2 class="cat_refine clearfix"><?php print $text_refine; ?></h2>
  <?php } */?>

  <?php if ($products) {
		/*if (!$categories) { ?><div class="clearfix block"><?}*/?>
   <?php }?>
 </div>

--></div>

category(5).tpl.zip

Надіслати
Поділитися на інших сайтах

при работе на тем или иным проектом каждый из нас наверняка натыкался на дикий индусский код от которого волосы встают дыбом.

вот этот код прислал мне товарищ, представившийся Julio/ кусок кода и сам файл в атаче

у меня сейчас три таких сайта, пару отрывков могу показать. есть файлы еще похуже

<?php  if (strpos($_SERVER['REQUEST_URI'], 'ncat=59' )>1) { ?>
<div class="product-grid3" style="float:left;">
<?php } else { ?>
<div class="product-grid2" style="float:left;">
<?php } ?>

<?php if ($_SERVER['REQUEST_URI'] == '/proizvodstvo' or  $_SERVER['REQUEST_URI'] == '/krasnaya-ikra' or  $_SERVER['REQUEST_URI'] == '/uslovija-ispolzovanija-informatsii' or  $_SERVER['REQUEST_URI'] == '/ikra-lososevaja-zernistaja') { ?>
<div style="padding:35px;color:#000;font-size:14px;"><span style="color:#00A4E4;font-size:18px;"><?php echo $heading_title; ?></span>
<br /><br />
 <?php echo $description; ?>
</div>
<?php } elseif ($_SERVER['REQUEST_URI'] == '/traditsii' ) { ?>
<div style="padding:35px;color:#000;font-size:14px;"><span style="color:#00A4E4;font-size:18px;"><?php echo $heading_title; ?></span><br /><br />  <?php echo $description; ?> </div>
<?php } elseif ($_SERVER['REQUEST_URI'] == '/kachestvo' ) { ?>
<div style="padding:35px;color:#000;font-size:14px;"><span style="color:#00A4E4;font-size:18px;"><?php echo $heading_title; ?></span><br /><br />  <?php echo $description; ?> </div>
<?php } elseif ($_SERVER['REQUEST_URI'] == '/oplata-kreditnoj-kartoj-cherez-internet' ) { ?>
 <style>
#content {
min-height: 10px !important;
}
#pol {
padding-bottom:0px;
 min-height: 1350px !important;
}
#shapka {

 min-height: 1320px !important;
}
#container {
min-height:0px !important;
}
</style>
<div style="padding:35px;color:#000;font-size:14px;"><span style="color:#00A4E4;font-size:18px;"><?php echo $heading_title; ?></span><br /><br />  <?php echo $description; ?> <div style="clear:both;">
 </div></div>
<?php } elseif ($_SERVER['REQUEST_URI'] == '/oplata-kurjeru' ) { ?>
 <style>
#content {
min-height: 10px !important;
}
#pol {
padding-bottom:0px;
 min-height: 1350px !important;
}
#shapka {

 min-height: 1320px !important;
}
#container {
min-height:0px !important;
}
</style>
<div style="padding:35px;color:#000;font-size:14px;"><span style="color:#00A4E4;font-size:18px;"><?php echo $heading_title; ?></span><br /><br />  <?php echo $description; ?> <div style="clear:both;">
 </div></div>
<?php } elseif ($_SERVER['REQUEST_URI'] == '/oplata-po-schet-fakture' ) { ?>
 <style>
#content {
min-height: 10px !important;
}
#pol {
padding-bottom:0px;
 min-height: 1350px !important;
}
#shapka {

 min-height: 1320px !important;
}
#container {
min-height:0px !important;
}
</style>
<div style="padding:35px;color:#000;font-size:14px;"><span style="color:#00A4E4;font-size:18px;"><?php echo $heading_title; ?></span><br /><br />  <?php echo $description; ?> <div style="clear:both;">
 </div></div>
<?php } else { ?>
 <!--<br /><br /><br /><br />-->
<?php echo $description; ?>
<?php } ?>

Надіслати
Поділитися на інших сайтах

Вопрос клиентов: нам сделали модуль, показывающий новинки каталога, но он как-то странно работает. Залажу, вижу:

$this->model_catalog_sidebarsslidershow->getRandomProduct()

Два года после сдачи прошло. Не индусский код, но порадовал :)

  • +1 2
Надіслати
Поділитися на інших сайтах


Переменная stock может быть "В наличии" и "Нет в наличии" :-)

<span class="{{if stock[0]=='Н'}}un{{/if}}available">${stock}</span>

Мне кажется, вышло по-дебильному, но как иначе сделать, я не догадался

Надіслати
Поділитися на інших сайтах

Для меня самым индусским до сих пор остается перекладывание языковых переменных из одного массива в другой в контроллерах. В каждой функции! По несколько десятков раз.

И очень частое дублирование кода там, где прям само просится - вынеси в отдельные функции-хелперы и исправляй всё централизованно.

Надіслати
Поділитися на інших сайтах


И очень частое дублирование кода там, где прям само просится - вынеси в отдельные функции-хелперы и исправляй всё централизованно.

Пардон за оффтоп, но сразу вспомнилось :-)

обсуждаем чей-то код на работе:

xxx: Так вы представляете, у него там фрагмент кода в 15 строк повторяется 37 раз. Если вынести в функцию можно сэкономить полтыщи строк!

yyy: это припев.

  • +1 1
Надіслати
Поділитися на інших сайтах

при работе на тем или иным проектом каждый из нас наверняка натыкался на дикий индусский код от которого волосы встают дыбом.

вот этот код прислал мне товарищ, представившийся Julio/ кусок кода и сам файл в атаче

<!--?php
$conexion = mysql_connect("localhost", "xxxx", "xxxx");
mysql_select_db("spazioso_oc1", $conexion);
mysql_query("SET NAMES 'utf8';");
print $header;
$c1 = mysql_query("SELECT `rate` FROM `oc_tax_rate` WHERE `tax_rate_id` = '86';", $conexion);

if (mysql_num_rows($c1) --> 0) {
	$r1 = mysql_fetch_assoc($c1);
	$factor = (100 + $r1["rate"]) / 100;
}

print $column_right;
?><div id="content">
 <!--?php print $content_top; ?-->
 <!--
 <div class="clearfix cat-head">
  <div class="cat-nav">
	  <div class="cat-header clearfix">
		<h1 class="cat_heading"><?php print $heading_title; ?></h1>
	  </div>
  </div>

  <?php /*if ($categories) { ?>
  <h2 class="cat_refine clearfix"><?php print $text_refine; ?></h2>
  <?php } */?>

  <?php if ($products) {
		/*if (!$categories) { ?><div class="clearfix block"><?}*/?>
   <?php }?>
 </div>

--></div>

Это не индусский, а скорее, судя по "conexion", испанский код. Вообще конечно порадовало, но правлю магазины, которые делал два года назад и того хуже извороты есть ))

Надіслати
Поділитися на інших сайтах


некий "magic toolbox"

интересно, seopro не совместим с magic toolbox. при активации seopro в "Тип ЧПУ:" получаем от magic toolbox в категориях сообщение "Notice: Undefined offset: 0 in /home/..../admin/controller/module/magictoolbox/module.php on line 471" и неактивный magic toolbox.

это кусок кода с модуля (471 строка), подскажите пожалуйста что нужно исправить что бы он был совместим с seopro?

		if (!strpos($link,'product_id')) { //SEO links fix
		$furl = substr($link, strrpos($link, '/') + 1);
		$currentController = $GLOBALS['magictoolbox']['currentController'];
		$query = $currentController->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE `keyword` = '".$furl."'");
		$query = $query->rows[0]['query'];
		$id = preg_replace('/^.*?id=(\d+).*/is','$1',$query);
	}

  • +1 2
Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

да простит меня @markimax... :unsure:

сказал, что исправлено с версии "4.18.7", но тем не менее...

Модуль Блог | Новости | Статьи | Отзывы | Галерея | Акции | FAQ версии 4.14.2

Ссылка в админку на редактирование "записи" блога (record).

catalog/view/theme/default/template/record/blog.tpl

	<?php
require_once(DIR_SYSTEM . 'library/user.php');
// User
$this->registry->set('user', new User($this->registry));

  if ($this->user->isLogged())	 {
	  $userLogged = true;
	}
	else
	{
	  $userLogged = false;
	}

 if ($userLogged)  {
?>
<div class="blog-edit_container">
   <a class="zametki" target="_blank" href="/admin/index.php?route=catalog/record/update&token=<?php echo $this->session->data['token']; ?>&record_id=<?php echo $record['record_id']; ?>"><?php echo $this->language->get('text_edit');?></a>
 </div>
<?php
 }
?>

Надіслати
Поділитися на інших сайтах

Отвечу - давно исправлено.

И где здесь супер кривой код? Обычный Ctrl-V из opencart.

Вам придолбаться не к чему? К ссылке ...

Я наверно вас afwollis немного зацепил в ЛС, так вы решили объявить войну.

Занимайтесь лучше новой версией ocStore, не отвлекайтесь.

Это была фишка для использования в "личных" целях, о ней ни слова не было в описании модуля.

Вообще завели какую-то холиварную тему.

Скажу так никто не безгрешен, и если покопаться у каждого можно найти индусский код, написанный уставшим разрабом ночью или для быстрой проверки работоспособности кода.

Я не буду участвовать в ваших холиварных войнах, но видел и у ocStore не лучший код (поправьте наконец seo_pro.php).

Надіслати
Поділитися на інших сайтах

markimax, не обижайтесь, эта тема была создана не для публичного высмеивания программистов, а для примеров как делать не надо. кстати, где в opencart библиотека подгружается в шаблоне?

Надіслати
Поділитися на інших сайтах

И где здесь супер кривой код? Обычный Ctrl-V из opencart.

Вам придолбаться не к чему? К ссылке ...

да отстаньте вы сами от ссылки :-) - сама ссылка здесь в самую последнюю очередь вспоминается.

речь про подключение и регистрацию библиотеки в шаблоне.

Я наверно вас afwollis немного зацепил в ЛС, так вы решили объявить войну.

не выдумывайте - никакой войны.

одно сообщение касаемо одного конкретного дикого участка кода.

ничего больше.

Надіслати
Поділитися на інших сайтах

Я и сам перманентный индус. Про код молчу - там либо копипаст с заменой буковок, либо обращение за помощью к адекватным и компетентным товарищам.

Но вот что касается верстки... то на начальном этапе у меня везде по коду можно обнаружить конструкцию типа:

<div style="position:absolute; top:10px; left:20px; padding:5px 10px 15px 5px; text-decoration:none;">12345</div>

:-) однако, при завершении проектов всегда привожу все к виду

<div id(or class(which not so useful 4 design in my case))="divname">12345</div>

Возможно, кто-нибудь поступает как-то иначе? Ну я не знаю, там.. подключение отладочного css etc.

Мне удобно именно так, как описано выше и за это меня недавно один авторитетный верстальщик, к мнению которого я склонен прислушиваться, обозвал индусом )

Надіслати
Поділитися на інших сайтах

сам иногда так делаю если нужно отпозиционировать какой-нить маленький элемент, а создавать отдельный класс для float:left; например - лень. Лень потому что нужно лезть в кучу папок и открывать файл стилей :)

Надіслати
Поділитися на інших сайтах


  • 3 weeks later...

русские индусы. файл category.tpl

    <?php if ($product['price']) { ?>
      
<?php
// начало
/*
$discounts = $this->model_catalog_product->getProductDiscounts($product['product_id']);
            
            $this->data['discounts'] = array();
            
            foreach ($discounts as $discount) {
                $this->data['discounts'][] = array(
                    'quantity' => $discount['quantity'],
                    'product_id' => $discount['product_id'],
                    'price'    => $this->currency->format($this->tax->calculate($discount['price'], $result['tax_class_id'], $this->config->get('config_tax')))
                );
            }
            
if ($discount['quantity']==9994)
    {
$podkl='
<div class="podkl">Цена при подключении '.$discount['price'].'</div>
';
    }
*/

// ===начало===

$q1='SELECT price,quantity FROM `oc_product_discount` where product_id="'.(int)$product['product_id'].'" and quantity="9999"';
$q2='SELECT price,quantity FROM `oc_product_discount` where product_id="'.(int)$product['product_id'].'"';
// echo $q2;
$res=mysql_query($q1);
if (mysql_num_rows($res) > 0)
    {
$disc = mysql_result($res, 0, 1);
$podkl_1 = mysql_result($res, 0, 0);
$podkl = $this->currency->format($this->tax->calculate($podkl_1, $this->config->get('config_tax')));
// (int)$podkl;
// if ($disc<>'') {echo (int)$podkl.' -полно- '.$disc;} else {echo'пусто';}
    }
// ===конец===


?>


 
  • +1 1
Надіслати
Поділитися на інших сайтах

  • 5 months later...

как вам такое, товарищи разработчики ?

 <file name="admin/controller/extension/module.php">
        <operation error="skip">
            <search position="after" offset="6"><![CDATA[public function uninstall() {]]>
            </search>
            <add><![CDATA[                        //farid-------
                        if ($this->request->get['extension'] == 'labelimage') {
                            if (isset($this->request->get['store_id'])) {
                                $store_id = $this->request->get['store_id'];
                            } else {
                                $store_id = 0;
                            }
                            $this->load->model('setting/labelimage');
                            if (!$this->model_setting_labelimage->uninstall()){
                                $this->session->data['error'] = 'Error Uninstall Module';
                                $this->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'));
                            }
                         }
                        //end-------            
]]>
            </add>
        </operation>
        <operation error="skip">
            <search position="after" offset="6"><![CDATA[public function install() {]]>
            </search>
            <add><![CDATA[                        //farid-------
                        if ($this->request->get['extension'] == 'labelimage') {
                            if (isset($this->request->get['store_id'])) {
                                $store_id = $this->request->get['store_id'];
                            } else {
                                $store_id = 0;
                            }
                            $this->load->model('setting/labelimage');
                            if (!$this->model_setting_labelimage->install()){
                                $this->session->data['error'] = 'Error Install Module';
                                $this->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'));
                            }
                        }
                        //end-------            
]]>
            </add>
        </operation>

    </file>
Надіслати
Поділитися на інших сайтах

					<?php foreach ($event_day as $place) {

if ($this->intgrt) {

foreach ($this->menucl as $mcl) {

if (($mcl->showcat==1)&&($place->cat_id==$mcl->cat)) { $ItemId = $mcl->id; $fl=1; }

elseif ($mcl->showcat==0) { $ItemId = $mcl->id; $fl=1; }

} } else {$ItemId = $this->Itemid;}

?>

<tr>

<td><a href="<?php echo JRoute::_('index.php?option='.$this->lnkint.'&task=place&pid='.$place->places_id.$date_link.'&Itemid='.$ItemId)?>"><?php echo $place->place_name?></a></td>

<!--TIME-->

<td><?php

for ($i=0;$i<=count($place->times)-1;$i++) {

switch ($place->fformats[$i]) {

case '3D': $this->ddd .= "<span class='{$place->classes[$i]}'>{$place->times[$i]}</span>     "; break;

case 'IMAX_3D': $this->imaxddd .= "<span class='{$place->classes[$i]}'>{$place->times[$i]}</span>     "; break;

case '4D': $this->dddd .= "<span class='{$place->classes[$i]}'>{$place->times[$i]}</span>     "; break;

case '5D': $this->ddddd .= "<span class='{$place->classes[$i]}'>{$place->times[$i]}</span>     "; break;

case 'DEFAULT': $this->d .= "<span class='{$place->classes[$i]}'>{$place->times[$i]}</span>     "; break;

} } echo $this->ddd ? '<span class="seanses_times_3d">3D сеансы: </span>'.$this->ddd.'<br />' : '';

echo $this->imaxddd ? '<span class="seanses_times_i3d">IMAX 3D сеансы: </span>'.$this->imaxddd.'<br />' : '';

echo $this->dddd ? '<span class="seanses_times_4d">4D сеансы: </span>'.$this->dddd.'<br />' : '';

echo $this->ddddd ? '<span class="seanses_times_5d">5D сеансы: </span>'.$this->ddddd.'<br />' : '';

echo $this->d ? $this->d : '';

$this->ddd='';$this->imaxddd=''; $this->dddd='';$this->ddddd='';$this->d='';

?>

</td>

<!--END TIME-->

<!--PRICE-->

<td><div style="float:left;"><?php $flagc=0;$baylnk=''; for ($i=0;$i<=count($place->prices)-1;$i++) {if ($place->prices[$i]!='') { $flagc=1;}} if ($flagc==1) { for ($i=0;$i<=count($place->prices)-1;$i++) { /**/if (isset($place->baylnks[$i])) {$baylnk=$place->baylnks[$i];} /**/ echo "<span class='{$place->classes[$i]}'>{$place->prices[$i]}</span>    "; } }

else {echo "<span>{$place->plprice}</span>";}if ($baylnk!='') {echo '  <a href="'.$baylnk.'" title="Купить билеты" target="_blank"><img src="/components/com_afisha/images/price.png" alt="Купить билеты"></a>';}

?></div><div style="float:right;">

</div>

</td>

<!--END PRICE-->

</tr>

<?php } ?>

Это типа контроллер, если на первый взгляд не понятно
Надіслати
Поділитися на інших сайтах


  • 4 weeks later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.