
Думаю мало кому нравиться искать, скачивать тяжелые готовые js библиотеки для того чтобы нарисовать небольшую диаграмму… Вот и мне этот вариант не особо понравился. Так и родилась тема этого поста.
Итак чтоб нарисовать вот такую диаграмму нам потребуется совсем немного знаний и пол часа свободного времени. Использовать будем элемент html 5 canvas и библиотеку которая поможет нашему скрипту работать в недобраузерах IE – http://explorercanvas.googlecode.com/svn/trunk/excanvas.js
Разместим на странице элемент canvas.
<canvas id="chart" width="200" height="200"></canvas>
Cкрипт который нарисует в данном элементе диаграмму тоже очень простой
читать далее »
Cам не пойму каким образом, но упал раздел MFT на внешнем диске, полагаю постарался checkdisk. Итак что делать в таких случаях. Начинать жизнь с чистого винта или есть способы восстановить данные?
Попробовал восстановить данные из под windows, но после установки двух-трех рекомендуемых в таких случаях и всеми любимых программ (не буду рекламировать), передумал. Ни одна из них просто не могла открыть диск, и никаких данных естественно восстановить не удалось бы.
Решил поискать софт для восстановления данных в Ubuntu. Нашелся testdisk который также не справился со своей задачей.
После еще некоторого времени поиска решил поставить scrounge-ntfs
читать далее »sudo apt-get install scrounge-ntfs
Видимо постраничная загрузка выходит из моды и все хотят загрузку по мере прокрутки страницы. Ну что ж, приступим =)
Допустим уже есть функция php, которая выдает нам данные постранично. читать далее »
function get_objects($page=0)
Но одно но, помимо объектов нам нужно возвращать и номер след. страницы.
Поэтому будем возвращать данные в json.
echo json_encode(array("objs"=>тут_все_объекты, "next_page"=>след_страница))
Нужно ее вызывать аяксом. Воспользуемся функцией ajax в jquery.
function ajax_get_objects(page){
//url по котрому доступен get_objects и передаем ему page
var url = "/?get_objects/"+page;
$.ajax({
type: "POST",
url: url,
dataType: "json",
success: function (data){
//тут выводим сами данные как вам нравится. Допустим все данные в элемент c id = "all_page"
$("#all_page").html(data.objs);
slide_func_next_page = data.next_page;
slide_func_last_page = data.page;
}})}
Для чего это нужно? читать далее »
Ну например для генерации pdf отчетов в интернет магазине, или для выдачи электронных билетов на концерты. Вобщем то с помощью этой утилиты можно создать офлайн версию маленького сайта в формате pdf.
Моя задача была связана с электронными билетами, поэтому поискал уже готовые решения для генерации pdf из html. Первое что я нашел был модуль «HTML2PDF» – отличное название, следовательно и работать должно соответственно)
Скачал (на оффициальном сайте html2pdf)
Для отправки сообщений с сайта на стену в facebook можно использовать кнопку share.
<a onclick="return fbs_click()" rel="nofollow" href="http://www.facebook.com/share.php?u=[URL]" target="_blank">Share on Facebook</a>
<script type="text/javascript">
function fbs_click() {u='[URL]';t='';window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');return false;}
></script>
[URL] – путь на страницу, с которой будут собираться данные для сообщения.
На этой странице в между тегами должны быть данные для fb:
<meta property="og:title" content="заголовок" />
<meta property="og:description" content="описание" />
<meta property="og:image" content="изображение url" />
<meta property="og:audio" content="аудио url (только *.mp3)"
<meta property="og:video" content="видео url (только *.flv)" /> />
Очень давно не писали ничего, вроде накопилось у нас несколько интересных тем. Сегодня расскажу о сервисе позволяющем определять название города по ip пользователя зашедшего к вам. Сервис предоставляют http://ipgeobase.ru и помоему они отлично справляются.
Писать самому функции для работы с сервисом очень не хотелось поэтому откопал где то этот код: ipgeo
подключается он очень просто
if(empty($_COOKIE['city']) || $_COOKIE['city']=="undefined") {
$IP= ($_SERVER['REMOTE_ADDR']);
if(!empty($IP)) {
$ipList = new IPGeo($IP); //подключаем класс IPGeo
$city= $ipList->ip($IP); // определяем город по ip
$_COOKIE['city']=$city;
} else {
$city=$_COOKIE['city'];
}
Если город еще не был определен то определяем и записываем его в куки, иначе просто смотрим какое название города уже лежит в куках. Вобщем определение города по ip пишется не более чем пять минут, остальное уже дело техники.
Можно создать базу нужных городов на сайте и сверяться с ними по названию, и например показывать товары только по городу который выбрал пользователь. Для этого и используется в большинстве случаев определение города по ip
В прошлых постах был описано создание конольного приложения и приложения с гуи, теперь опишу создания пакета jar в jdeveloper. Открываем в jdeveloper какой-нибудь проект. Правой кнопкой по проекту в Application Navigator выбираем New. Далее в открывшемся окне General – Deployment Profiles – JAR File и жмем OK.
Продолжу цикл статей по изучению java и среды разработки jdeveloper. В предыдущей статье описывалось создание консольной программы не имеющей интерфейса. Сегодня расскажу о том как создать desktop приложение использующую библиотеку swing.
Создаем новое приложение File -> New -> General -> Applications -> Generic applicationНазовем его exemple_swing и нажмем кнопку Finish
В инете мало мануалов по Jdeveloper на русском, поэтому решил написать немного сам. Руководствовался манами на сайте oracle. В прошлом посте уже был описан процесс установки. Теперь переходим с следующему шагу. Напишем наше первое приложение на Java. Как обычно это вывод «Hello World!». Запускаем Jdeveloper. В панели меню выбираем Application – New. Выбираем «Generic Application», вписываем название будущей проги и жмем «Finish». читать далее »
Просматривая написанный код всегда можно найти место, где можно его оптимизировать. Нашел у себя код на js, который выполнял поиск по базе.
Код был примерно таким.
<input onkeyup="search()" id="search"> Как видно функция срабатывает при отпускании клавиши. Что не совсем правильно, т.к. например если ввели 5 символов в поле, то в базу пойдет 5 запросов, а достаточен всего лишь 1, который выполнится с задержкой после ввода. Это можно устроить, путем введения таймера.
В ява скрипт есть функции для работы с ними. читать далее »
var timeout_id = window.setTimeout(func|code, delay); — создает единичный таймер, при срабатывании которого происходит вызов определенной функции после указанной задержки (в миллисекундах).
var interval_id = window.setInterval(func|code, delay); — похож на предыдущий setTimeout, но вызывает функцию постоянно (каждый раз с заданной задержкой), пока не будет отменен.
clearInterval(timeout_id);, clearTimeout(interval_id); — принимают в качестве параметр ID таймера.



