Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 584

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 584

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 584

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 584

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 603

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 702

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 702

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 702

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 702

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el($output) in /home/mchedlishvili.com/mike/WWW/wp-includes/classes.php on line 727

Strict Standards: Redefining already defined constructor for class wpdb in /home/mchedlishvili.com/mike/WWW/wp-includes/wp-db.php on line 58

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-includes/cache.php on line 99

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/mchedlishvili.com/mike/WWW/wp-includes/cache.php on line 404

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-includes/query.php on line 21

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-includes/theme.php on line 576

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/exec-php.php on line 22

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/manager.php on line 34

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/manager.php on line 35

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/manager.php on line 36

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/admin.php on line 42

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/admin.php on line 48

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/admin.php on line 49

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/admin.php on line 50

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/ajax.php on line 61

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/cache.php on line 33

Deprecated: Assigning the return value of new by reference is deprecated in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/exec-php/includes/cache.php on line 42

Strict Standards: Redefining already defined constructor for class ngg_Tags in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/lib/nggallery.lib.php on line 559
Программирование | Миша.Мчедлишвили


Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

Полезная штука. Проверено.



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

Usage:

echo leading_zeros(’654321′, 10);

Result:

0000654321

Notes: You must use either single or double quotes in the first argument of the function call. Failure to do so will result in an undesirable number format. If your output is displayed in an exponential format, you probably left out your quotes. Additionally, any variable used in the first argument must contain a string and not a number.

For example,

$value = 1234567890987654321;

Doesn’t work but,

$value = ‘1234567890987654321′;

Does work!

  1.  
  2. function leading_zeros($value, $places) {
  3.  
  4. if (is_numeric($value))
  5.  {
  6.  for ($x = 1; $x <= $places; $x++)
  7.   {
  8.   $ceiling = pow(10, $x);
  9.   if ($value < $ceiling)
  10.    {
  11.    $zeros = $places - $x;
  12.    for ($y = 1; $y <= $zeros; $y++) $leading .= "0";
  13.    $x = $places + 1;
  14.    }
  15.   }
  16.  $output = $leading.$value;
  17.  } else $output = $value;
  18. return $output;
  19. }


Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

SELECT SUBSTRING_INDEX(email, '@', -1) AS Domain, count(*) AS Total
FROM `emails_table`
GROUP BY Domain
ORDER BY Total DESC
LIMIT 40



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

А дельфийский Оракул на дельфе писал или на оракле?



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

/*
* Сергей, ты урод!!!!!!!!!!!!!!!!!!!!!!
* Тот факт, что я от души поржал не отменяет того, что тебе гореть в аду
* за то что я по твоей милости на работе пол-одиннадцатого 30 декабря.
* */
//foreach ( var consType in consultationTypes )
//{
// throw new ServerErrorException( null );
//}



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

screen – запускаем сессию скрина
exit – завершение сессии
Ctrl+A ? – справка
Ctrl+a c – для открытия нового окна
Ctrl+a n – для переключения на следующеее окно
Ctrl+a p – для переключения на предыдущее окно
Ctrl+a d – для отсоединения от сессии
screen -ls – для просмотра активных сессий
screen -r <идентификатор сессии> – для подключения к определенной сессии

Отличная подробная статья на тему использования screen



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

Возвращает true, если указанный IP попадает в диапазон, и false если нет.

  1. function net_match($network, $ip) {
  2.  
  3. // determines if a network in the form of 192.168.17.1/16 or
  4. // 127.0.0.1/255.255.255.255 or 10.0.0.1 matches a given ip
  5.  
  6. $network=trim($network);
  7. $ip = trim($ip);
  8. $d = strpos($network,"-");
  9. if ($d===false)
  10.   {
  11.    $ip_arr = explode('/', $network);
  12.    if (!preg_match("@\d*\.\d*\.\d*\.\d*@",$ip_arr[0],$matches))
  13.     {
  14.      $ip_arr[0].=".0";    // Alternate form х.х.х/24
  15.     }
  16.    $network_long = ip2long($ip_arr[0]);
  17.    $x = ip2long($ip_arr[1]);
  18.  
  19.    $mask = long2ip($x) == $ip_arr[1] ? $x : (0xffffffff << (32 - $ip_arr[1]));
  20.    $ip_long = ip2long($ip);
  21.  
  22.    return ($ip_long & $mask) == ($network_long & $mask);
  23.   }
  24. else
  25.   {
  26.    $from = ip2long(trim(substr($network,0,$d)));
  27.    $to = ip2long(trim(substr($network,$d+1)));
  28.  
  29.    $ip = ip2long($ip);
  30.    return ($ip>=$from and $ip<=$to);
  31.   }
  32. }


Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

В повседневной работе приходится сталкиваться с довольно однотипными ошибками при написании запросов.В этой статье хотелось бы привести примеры того, как НЕ надо писать запросы.

Продолжение »



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

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

Проблема

Взяли тут аутсорсера написать небольшой и несложный код на PHP и MySQL. Была одна из задач — выбрать несколько произвольных записей из таблицы в базе MySQL. И что же сделал этот ленивый и глупый аутсорсер? Конечно же написал бред типа такого:

SELECT * FROM tTable ORDER BY RAND() LIMIT 10;

На первый взгляд все логично да и работает правильно. Выбираются 10 произвольных записей. Но если взглянуть на план выполнения этого запроса, то станет понятно почему я сложил дюжину матершинных ругательств в адрес глупого аутсорсера.

В процессе выполнения этого запроса MySQL записывает во временную таблицу все (!!!) строки исходной таблицы, с одним новым полем, в которое записываются результаты функции RAND () — т.е. набор произвольных значений. Затем эта временная таблица сортируется filesort по добавленному полю с произвольными значениями и далее выбираются первые 10 записей. Полный ппц. А теперь представтье что будет если в исходной таблице 10 000 записей. А что если 1 000 000? А что если эту выборку надо делать раз десять в секунду. Да тут любой супер-пупер сервер надолго уйдет в раздумья.

Продолжение »



Strict Standards: Non-static method nggallery::get_option() should not be called statically in /home/mchedlishvili.com/mike/WWW/wp-content/plugins/nextgen-gallery/nggfunctions.php on line 10

Evolmate решил собрать маленькую коллекцию сайтов с разного рода бесплатными шаблонами. Итак, внутри - список сайтов и короткие обзоры. Буду дополнять и обновлять. На этих сайтах представлены как сами скрипты, так и примеры их использования.


Продолжение »