Как-то давным-давно компания Adobe заявила о создании версии photoshop для Linux OS.. И еще как то писали в новостях что google поддерживет разработчиков wine, чтобы они лучше учитывали совместимость wine c photoshop. Но как мы видим прошел ни один год, а первое реализовывать помоему уже и не думают а последнее, ну скажем «не совсем корректно работает».
Лично у меня под wine корректно работают и легко устанавливаются все версии photoshop до cs2 включительно (что не удивляет так как на оффициальном сайте об этом уведомлено).
Многие же после долгих танцев с бубном возле компьютера, самостоятельной пропатченной компиляции wine ставят Adobe Photoshop CS3 и CS4. Стыдно признаться, но как я вчера не танцевал с бубном, как ни колдовал возле компьютера ни одну из последних версий photoshop установить не смог… Полробное описание установке есть на WineHQ.org
Лично я решил не мучаться и поставить себе CS2 что вполне хватает чтоб нарезать макеты сайтов для верстки… Единственное из директории .wine/dosdevices/c:/Program Files/Adobe/Adobe Photoshop CS2
Нужно удалить AdobeUpdater.dll чтоб Photohop не обновлялся (обычно это стандартная процедура…) и сгладить шрифты, ато какие то кракозябры на панелях. Для этого: 1. Дергаем скрипт winetricks->
sudo wget http://kegel.com/wine/winetricks
2. Устанавливаем права ->
chmod 755.
3. Запускаем и устанавливаем corefonts ->
sh winetricks
Включаем и наслаждаемся)
Очень часто при написании javascript для сайтов возникает потребность чтоб в вашем скрипте было нечто подобное функциям php например explode, trim, json_encode, json_decode… вобщем список можно продолжать до бесконечности. И вот сегодня совершенно случайно наткнулся на сайт phpjs.org где лежат готовые решения реализации всех этих функций (когда то искал их специально не одного документированного решения не нашел). Ну я конечно же сразу добавил этот сайт в закладки и выкачал скрипты одним файлом (это они тоже предоставляют, огромное им спасибо)
Ну собственно скачать, просмотреть эти скрипты вы сможете и без моей помощи.
Собстевнно никаких особых танцев с бубном не требуется для получения координат по адресу. Если у вас уже есть на сайте google map и есть api_key то у вас дожны быть прописаны несколько подгружающихся js скриптов.
Что собственно и имеем: <script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&key=<?=GOOGLE_MAPS_API_KEY?>"></script>
Для поиска используется довольно простая функция читать далее »
<script type="text/javascript" src="http://gmaps-utility-library.googlecode.com/svn/trunk/markermanager/release/src/markermanager.js"></script>
<script src="http://www.google.com/uds/api?file=uds.js&v=1.0&key=" type="text/javascript"></script>
Таблицы в БД.
Примеры решений сложных запросов:
1. Вывести название и количество порций каждого блюда, заказанного сегодня на столик с номеромselect produkt
2. Вывести название и количество порций каждого блюда, заказанного сегодня на столик с номером 1. (Обязательно использование JOIN).
from produkty
where pr in(
select sostav.pr
from sostav inner join menu on (sostav.rec = menu.rec)
group by sostav.pr
having count(distinct sostav.rec)
= (
select count(distinct sostav.rec)
from sostav inner join menu on (sostav.rec = menu.rec)
)
)select bluda.bluda, sum(zakazy.k_vo_porc)
читать далее »
from mesta
inner join zakazy on (mesta.ms = zakazy.ms)
inner join menu on (zakazy.m = menu.m)
inner join bluda on (menu.bl = bluda.bl)
where nom_stol = 1
group by bluda.bluda
На самом деле поднять сервак на убунту очень легко сейчас у меня это занимает не более минут 10, но в первый раз с этим были большие трудности. В этой статье я постараюсь раскрыть все моменты шаманства с Apache2 сервером.
Для начала устанавливаем apache cо стандартной связкой php и mysql sudo apt-get install apache2 php5 php5-mysql mysql-server-5.0
Затем по мере надобности можно добавить другие модули php:
libapache2-mod-php5filter > server-side, HTML-embedded scripting language
читать далее »
php5-cgi > server-side, HTML-embedded scripting language (CGI binary)
php5-cli > интерпретатор командной строки для языка сценариев php5
php5-curl > CURL module for php5
php5-gd >модуль работы с графикой для php5
php5-gmp > GMP module for php5
php5-imap > IMAP module for php5
php5-interbase > interbase/firebird module for php5
php5-ldap > LDAP module for php5
Конечно много для чего могут приготиться базы данных стран и городов мира, допустим для сайта туристической компании или для какой нибудь всемирной социальной сети… Но так или иначе иногда возникает потребность в этой информации. Так вот есть база почти на три миллиона городов всего мира на английском:
geolite.maxmind.com
Что лично мне не понравилось в этой базе то что в ней к одним и тем же координатам иногда привязаны два или более города, различные версии названия этого города например:ru,moscou,Moscou,48,55.7522222,37.6155556
ru,moscow,Moscow,48,55.7522222,37.6155556
sql база – база городов и их IP адресов.
GeoNames – тут можно скачать базу или воспользоваться довольно неплохим сервисом. Можно искать данные о месте по координатам, по имени по индексу..Формат возвращаемых данных так же настраивается, xml или JSON.
Все это конечно хорошо но все это либо слишком много либо слишком мало, мне лично нужна база похожая на первую, но чтоб города имели только одну манеру написания на английском, если у кого есть буду вам очень признателен=)
Прошло немало времени и я все-таки сотворил свою бд городов стран и регионов мира. 1,5 миллиона городов осталось всего после удаления одноименных и однокоординатных городов в базе о которой писал тут выше (2,6 миллиона городов). Почти два месяца парсил с GeoNames и в итоге получил отличную базу данных городов, стран и регионов мира
скачать базу стран и городов мира можно тут: countries and cities db
P.S Спасибо Sunny за предоставленные актуальные данные по состоянию на декабрь 2011
Мой нынешний проект всеми возможными и не возможными способами привязан google map. И вроде все хорошо в google map api, но вот незадача. Казалось бы что нет ничего проще чем самому отрегулировать как будут перекрываться маркеры на карте (который выше который ниже)… По дефолту они как бы создают эффект 3d модели, то есть маркеры ближе к экватору земли становятся выше всех.
Так вот вразумительного ответа как поставить свои z-index маркерам на русском языке я не нашел, зато нашел ответ на зарубежном блоге, к сожалению не помню где именно. Оказалось решение этого вопроса не занимает много времени. Скачиваем скрипт labeledmarker.js к себе и находим такую функцию:LabeledMarker.prototype.redrawLabel_ = function() {
// Calculate the DIV coordinates of two opposite corners of our bounds to
// get the size and position of our rectangle
var p = this.map_.fromLatLngToDivPixel(this.latlng_);
var z = GOverlay.getZIndex(this.latlng_.lat());
// Now position our div based on the div coordinates of our bounds
this.div_.style.left = (p.x + this.labelOffset_.width-7) + "px";
this.div_.style.top = (p.y + this.labelOffset_.height-41) + "px";
this.div_.style.zIndex = z; // in front of the marker
};
и меняем строку ->this.div_.style.zIndex = z;
на
this.div_.style.zIndex = "100";
Теперь маркеры будут выводится в порядке их подачи на вывод. Вобщем меня это устроило, но думаю можно было посмотреть и сделать так чтоб в эту функцию можно было передавать отдельный параметр отвечающий за z-index маркера.
Расскажу немного о том как пользоваться базой данных mysql через консоль, то есть без использования стандартного редактора phpmyadmin. Вообще материалов на эту тему в интернете полно, но там либо слишком много не нужного обычному пользователю, либо слишком скудные описания.
Начало работы с mysql
Ну во первых начнем с того как зайти в mysql, для этого надо в консоли набрать:
mysql -uusername -ppassword -hhost
Итак мы в командной строке mysql. Не забываем один важный момент: разделителем комманд mysql является «;» (точка с запятой). читать далее »