- 1
PHP - самое большое говно которое я встречал. Стив Джобс
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−2
PHP - самое большое говно которое я встречал. Стив Джобс
+5
if ($count == 1 or $count == 21 or $count == 31 or $count == 41 or $count == 51 or $count == 61 or $count == 71 or $count == 81) ( $str = ' товар');
if ($count == 2 or $count == 3 or $count == 4 or $count == 22 or $count == 23 or $count == 24 or $count == 32 or $count == 33 or $count == 34 or $count == 42 or $count == 43 or $count == 44 or $count == 52 or $count == 53 or $count == 54 or $count == 62 or $count == 63 or $count == 64) ( $str = ' товара');
if ($count == 5 or $count == 6 or $count == 7 or $count == 8 or $count == 9 or $count == 10 or $count == 11 or $count == 12 or $count == 13 or $count == 14 or $count == 15 or $count == 16 or $count == 17 or $count == 18 or $count == 19 or $count == 20 or $count == 25 or $count == 26 or $count == 27 or $count == 28 or $count == 29 or $count == 30 or $count == 35 or $count == 36 or $count == 37 or $count == 38 or $count == 39 or $count == 40 or $count == 45 or $count == 46 or $count == 47 or $count == 48 or $count == 49 or $count == 50 or $count == 55 or $count == 56 or $count == 57 or $count == 58 or $count == 59 or $count == 60 or $count == 65) ( $str = ' товаров');
if ($count > 81){
$str=" тов";
}
Бронебойный pluralize
+1
$probabilities=array();
$get_items=mysql_query("SELECT * FROM `items` WHERE `iid` IN(".mysql_real_escape_string($case['items']).") AND `status`='1' AND `count`>'0' ORDER BY `probability` DESC;");
while($item=mysql_fetch_assoc($get_items)){
$probabilities[$item['probability']]=0;
}
$dices=$probabilities;
for($pi=100;$pi>=0;$pi--){
foreach($probabilities as $probability=>$pstate){
if(rand(1, 2)==2){
if($pi<=$probability){
$dices[$probability]=$dices[$probability]+1;
}
}
}
}
arsort($dices, SORT_NUMERIC);
$probability=reset(array_keys($dices));
$get_prize=mysql_query("SELECT * FROM `items` WHERE `iid` IN(".mysql_real_escape_string($case['items']).") AND `status`='1' AND `count`>'0' AND `probability`='".$probability."' ORDER BY RAND() LIMIT 1;");
Написал с нуля на заказ движок для очередного детского говноказино (розыгрыш пикселей для игр в "Steam").
Заказчик умолял сделать возможность управления вероятностью выпадения того или иного предмета (в процентах), что я и сделал. Вышеприведённый алгоритм как раз отвечает за выбор приза в соответствии с прописанными в настройках вероятностями. Сейчас кажется, что решение не самое "изящное".
Есть, что заметить по поводу алгоритма?
0
if(@isset($_GET['id'])){
$myconns=@mysql_connect(\"127.0.0.1\",\"user_noprivs\",\"unbr34k4bё3!\") or
die(\"sorry can't connect\");
@mysql_select_db(\"cms\") or die(\"sorry can't select DB\");
$sql_query = @mysql_query(
\"select content from content_table where id=\".$_GET['id']) or die(\"Sorry
wrong
SQL Query\");
// oops SQL Injection-^
while($tmp = @mysql_fetch_row($sql_query))
echo $tmp[0]; //echoes the result as HTML code
}else{
echo \"Welcome to My Bank
\".Login.\"\";
}
Оригинал: ru.wikipedia.org/wiki/SiXSS
Оригинал оригинала: securitylab.ru/analytics/216380.php?el_id=216380&VOTE_ID=104&view _result=Y
Смысл не в смысле кода, а в том, как можно было вообще умудрится так скопировать текст, что бы везде было экранирование
0
function string_cleaner($data, array $opts) //1: Массив или строка, 2: Только массив
{
if (empty($opts))
{
$opts['null_byte'] = TRUE;
}
$null_byte = ($opts['null_byte'] == 'off')
? FALSE
: TRUE;
$opts_allowed = ['trim', 'htmlspecialchars', 'strip_tags', 'addslashes', 'htmlentities'];
$opts = array_intersect_key($opts, array_flip($opts_allowed));
if(is_array($data))
{
foreach($data as $key => &$value)
{
if(is_array($value))
{
string_cleaner($value, $opts);
}
if ($null_byte)
{
$value = str_replace(chr(0), '', $value);
}
if(is_array($opts))
{
foreach($opts as $clear_func => $clear_func_params)
{
$value = (!$clear_func_params) ? $clear_func($value) : $clear_func($value, $clear_func_params);
}
}
}
}
else
{
if ($null_byte)
{
$data = str_replace(chr(0), '', $data);
}
if(is_array($opts))
{
foreach($opts as $clear_func => $clear_func_params)
{
$data = $value = (!$clear_func_params) ? $clear_func($data) : $clear_func($data, $clear_func_params);
}
}
}
return $data;
}
{...}
$server['get'] = string_cleaner($_GET, ['trim'=>' ', 'htmlentities'=>'', 'strip_tags'=>'', 'addslashes'=>'']);
Для сука ленивых
−2
<?php
for($a = 1;$a <= 1;$a++){
echo "$a";
for ($b = 2 ;$b <= 2;$b++){
echo "<br /> $b";
for ($c = 3 ;$c <= 3;$c++){
echo "$c";
for ($d = 4;$d <= 4;$d++){
echo "<br/> $d";
for ($e = 5;$e <= 5;$e++){
echo "$e";
for($f = 6;$f <= 6;$f++){
echo "$f";
for ($j = 7;$j <= 7;$j++){
echo "<br />$j";
for ($h = 8;$h <=8;$h++)
echo "$h";
for ($i = 9;$i <= 9;$i++){
echo "$i";
for ($k = 10;$k <= 10;$k++){
echo "$k";
for ($l = 11;$l <= 11;$l++){
echo "<br />$l";
for ($m = 12;$m <= 12;$m++){
echo "$m";
for ($n = 13;$n <= 13;$n++){
echo "$n";
for ($o = 14;$o <= 14;$o++){
echo "$o";
for ($p = 15;$p <= 15;$p++){
echo "$p";
}
}
}
}
}
}
}
}
}
}
}
}
}
}
+8
$data['age_range'] = array(
'18' => '18', '19' => '19', '20' => '20',
'21' => '21', '22' => '22', '23' => '23', '24' => '24', '25' => '25',
'26' => '26', '27' => '27', '28' => '28', '29' => '29', '30' => '30',
'31' => '31', '32' => '32', '33' => '33', '34' => '34', '35' => '35',
'36' => '36', '37' => '37', '38' => '38', '39' => '39', '40' => '40',
'41' => '41', '42' => '42', '43' => '43', '44' => '44', '45' => '45',
'46' => '46', '47' => '47', '48' => '48', '49' => '49', '50' => '50',
'51' => '51', '52' => '52', '53' => '53', '54' => '54', '55' => '55',
'56' => '56', '57' => '57', '58' => '58', '59' => '59', '60' => '60',
'61' => '61', '62' => '62', '63' => '63', '64' => '64', '65' => '65',
'66' => '66', '67' => '67', '68' => '68', '69' => '69', '70' => '70',
'71' => '71', '72' => '72', '73' => '73', '74' => '74', '75' => '75',
'76' => '76', '77' => '77', '78' => '78', '79' => '79', '80' => '80',
'81' => '81', '82' => '82', '83' => '83', '84' => '84', '85' => '85',
'86' => '86', '87' => '87', '88' => '88', '89' => '89', '90' => '90',
'91' => '91', '92' => '92', '93' => '93', '94' => '94', '95' => '95',
'96' => '96', '97' => '97', '98' => '98', '99' => '99', '100' => '100',
'101' => '101', '102' => '102', '103' => '103', '104' => '104', '105' => '105',
'106' => '106', '107' => '107', '108' => '108', '109' => '109', '110' => '110', '111' => '111', '112' => '112'
);
Hahaha classic
0
public function hasSubscriptionLot(int $lotId) : bool
{
foreach ($this->getSubscriptionLotIds() as $subLotId => $quantity) {
if ($lotId == $subLotId) {
return true;
}
}
return false;
}
array_key_exists?.. не, не слышали
+5
function getadminuserid(){
global $wpdb;
//Get all users in the DB
$wp_user_search = $wpdb->get_results("SELECT ID, display_name FROM $wpdb->users ORDER BY ID");
//Blank array
$adminArray = array();
//Loop through all users
foreach ( $wp_user_search as $userid ) {
//Current user ID we are looping through
$curID = $userid->ID;
//Grab the user info of current ID
$curuser = get_userdata($curID);
//Current user level
$user_level = $curuser->user_level;
//Only look for admins
if($user_level >= 8){//levels 8, 9 and 10 are admin
//Push user ID into array
$adminArray[] = $curID;
}
}
return $adminArray;
}
1) Get IDs for all users
2) Iterate over result set to find admin `get_userdata` function = 1 DB call
outcome:
1) full RAM
2) dead DB
===
official woocommerce plugin by company
+2
<?php
class SmsController extends Controller
{
protected static $currentYear;
public static function currentYear()
{
if (is_null(self::$currentYear)) {
self::$currentYear = date('Y');
}
return self::$currentYear;
}
?>
:-D