Показаны сообщения с ярлыком php. Показать все сообщения
Показаны сообщения с ярлыком php. Показать все сообщения

среда, 22 июня 2011 г.

PHP и Unicode

Соображения по программированию
Как уже упоминалось, PHP-работу с Unicode можно выполнить несколькими способами, включая расширения PHP, различные кодировки, и т.д. Но пока вы не стали экспертом в данной области, я не рекомендую пробовать принимать решение выбирать из этих многочисленных возможностей. Вы почти определенно достигнете наилучших результатов, если сконцентрируетесь на следующем:
  • Явно используйте кодировку UTF-8, маркированную:
    • "mb_language('uni'); mb_internal_encoding('UTF-8');" в верхней части ваших сценариев.
    • Content-type: text/html; charset=utf-8 в HTTP-заголовке для .htaccess, header() или конфигурации Web-сервера.
    • <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> и <orm accept-charset = "utf-8"> в HTML-коде.
    • CREATE DATABASE ... DEFAULT CHARACTER SET utf8 COLLATE utf8 ... ENGINE ... CHARSET=utf8 COLLATE=utf8_unicode_ci - обычная последовательность для экземпляра MySQL, а для других баз данных имеются похожие выражения.
    • SET NAMES 'utf8' COLLATE 'utf8_unicode_ci' - это полезная директива для PHP, которая передается в MySQL сразу после подключения.
    • В php.ini назначьте default_charset = UTF-8.
  • Заменяйте строковые функции, такие как strlen и strtlower, на mb_strlen и mb_convert_case.
  • Заменяйте mail и colleagues на mb_send_mail и др.; хотя понимающие Unicode сообщения электронной почты являются продвинутой темой, выходящей за рамки данной статьи, использование mb_send_mail является хорошей отправной точкой.
  • Используйте функции многобайтных регулярных выражений (multibyte regular expressions) (см. раздел "Ресурсы").

пятница, 10 июня 2011 г.

Инвентаризация ПО предприятия с помощью антивируса Касперского

Инвентаризация ПО предприятия с помощью антивируса Касперского

 

Смотри здесь.

Запросы к базе сервера администрирования касперского. (В моем случае mySQL, в качестве оболочки удобно использовать heidisql.exe)
"Имя программы, число установок"

select b.wstrdisplayname as name, count(*) as num
from hst_inventory_hstprds a, hst_inventory_products b
where a.nproduct=b.nid
group by wstrdisplayname
order by num desc;
---------------------------------------------------------------------------------

"Имя ПК с программой"

select c.strwinhostname as host, b.wstrdisplayname as name
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%Windows XP Service Pack 3%'
and c.nid=a.nhostid;


select c.strwinhostname as host, b.wstrdisplayname as name, a.tmInstallDate as idate
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%Microsoft Office%'
and b.wstrdisplayname not like '%iewer%'
and c.nid=a.nhostid;

---------------------------------------------------------------------------------

"Имя ПК с программой с датой установки"

select c.strwinhostname as host, b.wstrdisplayname as name, a.tmInstallDate as idate
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%Windows XP Service Pack 3%'
and c.nid=a.nhostid;
---------------------------------------------------------------------------------

"Имя ПК с программой с датой установки"  поиск по имени ПК

select c.strwinhostname as host, b.wstrdisplayname as name, a.tmInstallDate as idate
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and c.strwinhostname like '%n3088%'
and c.nid=a.nhostid;

"обновления"
select c.strwinhostname as host, b.wstrdisplayname as name, a.tmInstallDate as idate
from hst_inventory_hstprds a, hst_inventory_patches b, Hosts c
where a.nproduct=b.nid
and c.strwinhostname like '%n3088%'
and c.nid=a.nhostid;

---------------------------------------------------------------------------------

"Имя патча, число установок"

select b.wstrdisplayname as name, count(*) as num
from hst_inventory_hstprds a, hst_inventory_patches b
where a.nproduct=b.nid
group by wstrdisplayname
order by num desc;
---------------------------------------------------------------------------------

"Имя ПК имя патча"

select c.strwinhostname as host, b.wstrdisplayname as name
from hst_inventory_hstprds a, hst_inventory_patches b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%KB2570791%'
and c.nid=a.nhostid;

KB2570791
Обновление безопасности для Windows XP (KB2124261)
---------------------------------------------------------------------------------

"Имя ПК имя патча и дата"  - дата установки патча не хранится

select c.strwinhostname as host, b.wstrdisplayname as name, a.tmInstallDate as date
from hst_inventory_hstprds a, hst_inventory_patches b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%KB963707%'
and c.nid=a.nhostid;

KB2570791
Обновление безопасности для Windows XP (KB2124261)
---------------------------------------------------------------------------------
найти nProduct
select * from hst_inventory_patches a where a.wstrDisplayName like '%2570791%';


-------------------------

select c.strwinhostname as host
from Hosts c
where c.strwinhostname like 'N3088'
and c.nid=a.nhostid;





-------------------------

Microsoft Office Visio 


Microsoft Office



---------------------------------
Hosts
 nId
 strWinHostName
 strDisplayName
 strDnsName
 nIpAddress


host_ext_attr
 nId
 wstrComment

----------------------------------
Запрос компьютер имя коммент адрес-агента

select a.strDisplayName as DisplayName, a.strWinHostName as WinHostName, b.wstrComment as Comment, 
a.strDnsName as DnsName, a.strAddress as AgentIP
from Hosts a, host_ext_attr b
where a.nId=b.nId;

Смотрим где стоит MSO

select c.strwinhostname as host, b.wstrdisplayname as name, a.tmInstallDate as idate
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%Microsoft Office%'
and b.wstrdisplayname not like '%iewer%'
and c.nid=a.nhostid;
----------------------------------------------------------------------------------------------------
select c.strwinhostname as host, b.wstrdisplayname as name
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%${n}%'
and c.nid=a.nhostid;

select c.strwinhostname as host, b.wstrdisplayname as name
from hst_inventory_hstprds a, hst_inventory_products b, Hosts c
where a.nproduct=b.nid
and b.wstrdisplayname like '%Adobe Photoshop%'
and c.nid=a.nhostid;