-
+159
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
public function getProductAttributes($product_id) {
$product_attribute_data = array();
$product_attribute_query = $this->db->query("SELECT attribute_id FROM " . DB_PREFIX . "product_attribute WHERE product_id = '" . (int)$product_id . "' GROUP BY attribute_id");
foreach ($product_attribute_query->rows as $product_attribute) {
$product_attribute_description_data = array();
$product_attribute_description_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_attribute WHERE product_id = '" . (int)$product_id . "' AND attribute_id = '" . (int)$product_attribute['attribute_id'] . "'");
foreach ($product_attribute_description_query->rows as $product_attribute_description) {
$product_attribute_description_data[$product_attribute_description['language_id']] = array('text' => $product_attribute_description['text']);
}
$product_attribute_data[] = array(
'attribute_id' => $product_attribute['attribute_id'],
'product_attribute_description' => $product_attribute_description_data
);
}
return $product_attribute_data;
}
Opencart -> ModelCatalogProduct -> getProductAttributes
Первым запросом в БД они берут IDы атрибутов, перебирают их циклом, в котором другим запросом берут всё, в том числе и те же IDы, из той же таблицы и снова перебирают строки циклом.
technobulka,
25 Марта 2015
-
+160
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
abstract class class_getset {
protected $vars;
public function get($name = "%all%") {
if($name == "%all%") {
return $this->vars;
}
else {
return $this->vars[$name];
}
}
/* тут второй метод, угадай его название */
}
Старый код из 2012, интересное решение ...
volter9,
25 Марта 2015
-
+155
- 1
- 2
- 3
- 4
- 5
- 6
- 7
/**
* @param string $singular
* @param string $context
*/
function translate($singular, $context=null) {
return $singular;
}
Любимый вордпресс, wp-includes/pomo/translations.php. Кажется, это такой интерфейс.
Fike,
24 Марта 2015
-
+162
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
if(isset($_POST['submit']) AND $_POST['submit'] == 'add_program')
{
if($this->form_validation->run('add_program') == TRUE)
{
// Добавляем программу обучения
$this->Settings_model->add_program($_POST['title']);
$id = $this->db->insert_id();
for ($x = 0; $x < 61; $x++)
{
if ($x <= 12)
{
$title = $x;
$year = 1;
}
elseif ($x > 12 AND $x <= 24)
{
if($x == 13) {$title = 1;}
if($x == 14) {$title = 2;}
if($x == 15) {$title = 3;}
if($x == 16) {$title = 4;}
if($x == 17) {$title = 5;}
if($x == 18) {$title = 6;}
if($x == 19) {$title = 7;}
if($x == 20) {$title = 8;}
if($x == 21) {$title = 9;}
if($x == 22) {$title = 10;}
if($x == 23) {$title = 11;}
if($x == 24) {$title = 12;}
$year = 2;
}
elseif ($x > 24 AND $x <= 36)
{
if($x == 25) {$title = 1;}
if($x == 26) {$title = 2;}
if($x == 27) {$title = 3;}
if($x == 28) {$title = 4;}
if($x == 29) {$title = 5;}
if($x == 30) {$title = 6;}
if($x == 31) {$title = 7;}
if($x == 32) {$title = 8;}
if($x == 33) {$title = 9;}
if($x == 34) {$title = 10;}
if($x == 35) {$title = 11;}
if($x == 36) {$title = 12;}
$year = 3;
}
elseif ($x > 36 AND $x <= 48)
{
if($x == 37) {$title = 1;}
if($x == 38) {$title = 2;}
if($x == 39) {$title = 3;}
if($x == 40) {$title = 4;}
if($x == 41) {$title = 5;}
if($x == 42) {$title = 6;}
if($x == 43) {$title = 7;}
if($x == 44) {$title = 8;}
if($x == 45) {$title = 9;}
if($x == 46) {$title = 10;}
if($x == 47) {$title = 11;}
if($x == 48) {$title = 12;}
$year = 4;
}
else
{
if($x == 49) {$title = 1;}
if($x == 50) {$title = 2;}
if($x == 51) {$title = 3;}
if($x == 52) {$title = 4;}
if($x == 53) {$title = 5;}
if($x == 54) {$title = 6;}
if($x == 55) {$title = 7;}
if($x == 56) {$title = 8;}
if($x == 57) {$title = 9;}
if($x == 58) {$title = 10;}
if($x == 59) {$title = 11;}
if($x == 60) {$title = 12;}
$year = 5;
}
if($x != 0)
{
// Добавляем месяцы обучения
$this->Settings_model->add_tutorial_months($id,$year,$title);
}
}
Тяжело супортить чейто проект
Zilot,
23 Марта 2015
-
+168
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
$salt = 'fghjghjfhjfjhnbvmnbmvhjgfgjh785678tyutyu76678xcvbxcvb67hdfghdfgh67e657ytryerty5674567ryerty6574567tryertye75467657trhgfbvnhmhkijiluiotyiueuwyertsdrgfhndhgjdtyuerghddjghjhgjfktryudghgfhrthrtdhgfhdtyerghfghrtyer74576ytreuyytu6756yertytryet756745yhhgfnmdfgsreyyrteu676584678677795785687ytujhgfnvgsgomsjgsfguhjhgsdfujsdfgpousgjpsihsgubsfug89e6w5hisfdgbsidfgh5467woaiybvsdfghewtuhrty90w465uiregthshuaert90wuitre97gfuhfsujghhntigfjhtkh90eruheiuhfdiuhtruhghrthr9ugfgijdfngifdgijfgnsdfghwe9065hutriosgdfojdfigodfhgeiurtwhe9057yer9tud9fsoiudfshgert9y435trhgfdiuhgsdiufghidfghfffff';
$hash = md5(sha1(md5(md5($salt . $oplata . $rnd . $summ . $time . $id . $kl . $magas . $xxtea . $salt) . $salt . $time . $id . $magas . $rnd) . $salt . $time . $id . $magas . $rnd) . $salt . $kl . $kl);
$hash = hash('sha512', $hash);
$hash = hash('whirlpool', $hash);
$hash = hash('ripemd320', $hash);
$hash = hash('haval256,5', $hash);
$hash = hash('ripemd320', $hash);
$hash = hash('snefru', $hash);
$hash = hash('crc32', $hash);
Безопаснейший и неподбираемейший хэш =)
Оригинал тут: https://toster.ru/q/204698
SagePtr,
23 Марта 2015
-
+160
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
$Result = MySQL_Query("SELECT name FROM users WHERE name='$Login'") or ("Can't execute query.");
if (MySQL_Num_Rows($Result))
{
echo "Account <b>".$Login."</b> is exists";
}
...
elseif ((StrLen($Pass) < 4) or (StrLen($Pass) > 10))
{
echo "Password must have more 4 and not more 10 symbols.";
}
elseif ((StrLen($Repass) < 4) or (StrLen($Repass) > 10))
{
echo "Repeat password must have more 4 and not more 10 symbols.";
}
elseif ((StrLen($Email) < 4) or (StrLen($Email) > 25))
{
echo "Email must have more 4 and not more 25 symbols.";
}
elseif ($Pass != $Repass)
{
echo "Password mismatch.";
}
Фрагмент регистрации из кода сайта MMO игры. Видимо die забыли и в итоге вся проверка фтопку. Так же там педантично кроме проверки несовпадения введенных паролей оба проверяют на длину и содержание символов (это еще можно описать заботой о юзвере).
Мартин,
22 Марта 2015
-
+159
- 1
$home = $jsClass = $benchmark = $showAtom = $mainJS = $author = $update = $nameError = $mailError = $msgError = $slugError = $spamError = $codeError = $codeTitleError = $titleError = $error = $author = $authorEmail = $authorURL = $ga = $embed = $noIndex = false;
Зачем?
Отсюда:
https://github.com/mathiasbynens/jsperf.com/blob/master/index.php#L25
volter9,
21 Марта 2015
-
+159
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
string http_build_url ([ mixed $url [, mixed $parts [, int $flags = HTTP_URL_REPLACE [, array &$new_url ]]]] )
Parameters
url
(part(s) of) an URL in form of a string or associative array like parse_url() returns
parts
same as the first argument
волшебно
Fike,
21 Марта 2015
-
+159
- 1
$this->vars['cookie_domain'] = $this->vars['cookie_domain'] == "" ? "" : $this->vars['cookie_domain'];
Из IPB от 2007 года, по следам индусского неизвестного классика.
Если cookie_domain = "", то пусть будет "", а если нет, то и хуй с ним, пусть остается как есть.
adoconnection,
21 Марта 2015
-
+159
- 1
- 2
- 3
- 4
- 5
- 6
- 7
if (1) {
define("IMGBASE","");
define("IMGNUM","");
} else {
define("IMGBASE","imgs");
define("IMGFN","_rm");
}
Может я плохой программист, а это не говнокод??? Но таких условий в проекте миллионы блядь!
proweber1,
20 Марта 2015