15 Jul

Mysql и Ruby.

Пользуясь свободным выпавшим мне временем, решил углубить свои знания из Ruby. В следующем скрипте нет ничего особенно сложного, обычный скриптик создающий новую базу данных и добавляющих туда информацию. Короче, задача была такова: создать базу данных некоторых персон куда можно вводить имя, возраст, пол  и соответствующая должность на работе. Работаем избирательно через Mysql. Далее предпологается уже установлено в системе собвстенно Mysql сервер и  Ruby гем. Скриптик будет выглядеть следющим образом:

#Загружаем нужные гемы для работы

require 'rubygems'
require 'mysql'

puts "Welcome to Database Manager Programm!"

#Соединяемся с базой данных
 db = Mysql.connect('localhost','db_user_name','db_user_password','db_name')
 puts "Connected to the Mysql DB"

#Создаем таблицу
db.query("create table people(id integer primary key auto_increment,age integer,name varchar(30),job varchar(50),gender varchar(6))")
#Здесь не забываем добавить auto_increment
#Вводим данные в таблицу
puts "Insert the name, what you wont to add in to the DB:"
name = gets.chomp

puts "Insert the age of this person:"
age = gets.chomp

puts "Insert the gender of this person:"
gender = gets.chomp
puts "Insert the job of this person:"
job = gets.chomp

#Вводим данные
db.query("INSERT INTO people(name,age,job,gender) VALUES('#{name}','#{age}','#{job}','#{gender}')")

#Выводи то что получилось
 begin
  query=db.query('SELECT * FROM people')
  query.each_hash do |h|
  puts h.inspect
 end
end
#Закрываем соединение
db.close

Сохраняем в файле, например mysql.rb и выполняем:

1
$ ruby mysql.rb
28 May

Ruby & Python на Windows Mobile.

Когда весь мир уже переходит на Android, Iphone на WindowsMobile7 в конце-концов, я решил запихать на свой Windows Mobile 6.1 (хотя уже давно перепрошился на Windows Mobile 6.5, но 6.1 шустрее на моем кпк) Ruby и Python.
C Python 2.5 при установке не возникает никаких проблем. Достаточно скачать cab файл с sourceforge.net. Для установки Ruby в сети можно найти много мануалов, но почему то не все полностью работают или уже старье. Описал всю последовательность как Ruby заработал у меня.
Для начала скачиваем сам Ruby для Pda. Берем его отсюда – ruby-mswince. Скачиваем Ruby 1.8.6 (2007-03-13) – правда старенькое но главное работает. Сохранил на карте памяти, для экономии места. Далее скачиваем консоль. Берем его отсюда 4pda.ru, самое главное берем версию первую а не вторую, со вторым для настройки нужно копаться в регистре. Я пробовал, но потом кпк переставал включаться, какие то глюки =) . Устанавливаем. Если на данном этапе проверить – то руби у нас запуститься, но на дисплее высветиться результат всего какую то долю секунды(неправильный вывод), поэтому скачиваем правильный cmd.exe тут и заменяем его на тот который в папке /windows. Перезагружаем кпк. Запускаем из списка программ – cmd. Набираем в консоли: Read More

19 Mar

Нам 2 годика.

И вот, буквально 2 года мы на арене.  За это время изменилось многое: на блоге появились много постов о Линукс, раздел программирования улучшился, добавились посты o php, ruby. Блог сменил много тем, много настроек. Плагины wordpress неоднократно сменяли друг друга, улучшая производительность и эрогономичность. Посты увеличиваеются с каждой неделей. Количество пользователей – тоже. Мы не занимаемся SEO или иной раскруткой блога, мы пишем тут заметки, которые в дальнейшем нам и конечно же вам – понадобятся.Мир изменчив – меняемся и мы.

06 Mar

Microsoft.

Одним из первых постов, опубликованных 2 года назад,  был пост о видении Microsoft 2019 года, видео можно посмореть здесь. Случайно наткнулся на новое видео от того же самого Microsoft.
В новом видело щеф бюро исследований и стратегии компании Microsoft Craig Mundie рассказывает о новых областях использовании компьютеров в ближайшем будущем,о новых технологиях,  да и вообще, о пользе информационных технологий для общества.

05 Feb

PHP-də vaxt

Web proyeklərimizdə tez-tez işlətdiyimiz tarixlər, onlar üzərində əməliyyatlar haqqında bir neçə kəlmə demək istəyirəm. Hər zaman işlətsək də düşünürəm ki, xırda element olduğu üçün çox da üstündə durmuruq və ya php-nin bizə təklif etdiyi minimal variantlarla razılaşırıq.

Vaxt anlayışı PHP-də date() funsiyası ilə daxil edilir. Strukturu

1
string date ( string $format [, int $timestamp ] )

şəklində müəyyən olunur. php.net-dən daha ətrafı oxuya bilərsiniz.

Vaxtla əlaqəli ki məsələyə nəzər salmaq istəyirəm. Onlardan biri MySQL-dəki cədvəlimizdə DATE (DATETİME) tipli xanasında olan vaxtı daha oxunaqlı hala salmaqdır.

İkinci məsələ isə vaxtı milliləşdirməkdir.
Başlayaq.

Read More

11 Dec

Calculate Linux и Gentoo.

Можете себе представить самую заразительную вещь на свете? Случалось ли вам с ним сталкиваться? Я думаю да. Самой заразительной я считаю идею. Да, обычную повседневную, любую. Стоит представит ее в нашем воображении – так все,  она не отпускает нас. Она живет в нас. Заставляет ее по всюду видеть,  стремиться к ней. Спросите а почему же не все идеи остаються у нас в голове,почему некоторые отбрасываются моментально? Да я и не говорил что мы болеем всем заразительным подряд.  Мы имеем склонности к определенным материальным, идеологическим ценностям. В зависимости от наших предпочтений и уровня нашего IQ мы заражаемся определенными идеями..Совсем отошел от темы.

Недавно, я собственно говоря, заразился идеей перейти от пакетных дистрибутивов к исходникам. Спросите почему? Да собственно, не знаю. Захотелось потыкать что нить интересное, повозиться с системой, поковыряться в ней. Да к тому же постоянные обновления неизвестно каких пакетов еженедельно порядком надоели.Захотелось оптимизировать систему по себя.Мысли упали на Gentoo – самый быстрый пингвин. Идея установить ее спохватила меня. Знакомство с Хендбуком(так называеться талмут, в котором все по полочкам изложено об установке, настройке и еще много чего об этой системе) показало что оно не сложно, но требует временных затрат,чего к сожалению у меня никогда не остаеться вдоволь. Затрачивать ее я не стал на установку, пока не стал.А присморелся в дистрибутивам на основе Gentoo. Sabayon Linux опять же требовал затрат времени на установку. Внимание привлек Calculate Linux, созданный российскими разработчиками. Read More

24 Nov

WEB-də təhlükəsizlik seriyasından – Çətin parollar

Administratorun qızıl qaydası – «Parolun çətin olsa, basılmaz saytın A.M.=)». Düşünürəm ki, onları hər yerdə işlətmək daha məsləhətdi. Əsasən də ƏS-lərinə və ya məlumat bazasının serverinə giriş icazəsi zamanı parolun kifayət qədər çətin olması məqsədə uyğundur. Hətta xüsusi şifrə hazırlayan (password generator) utilitlərdən istifadə ideal olardı.

Əgər xaker sizin serverə skriptdəki boşluqlardan istifadə edərək daxil ola bilmədisə o çalışacaq ki, sadə üsullarla parolu müəyyən etsin.

Əgər istifadəçi adı və parol URL vasitəsilə ötürülürsə, hətta azacıq təcrübəsi olan xaker sadə program və ya skript yazaraq parolu müəyyən edə bilər. Xakerə belə programı yazmaqçün elə də çox şey lazım olmayacaq:

• Bir dəfə serverə hər hansı istifadəçi adı və ya parolla sorğu göndərmək;

• Serverin şifrə və ya istifadəçi adının səhv olması ilə əlaqəli verdiyi cavaba baxmaq. Əgər səhv yoxdursa bu o deməkdir ki, parol tapıldı, xaker öz istəyinə ele birici dəfədən nail oldu =)

• Sadə programın köməyi ilə hər dəfə ayrı istifadəçi adı və parolla URL sorğu göndərmək. Gələn cavabların hər hansı bir etalon nöqtəsinin işində fərq yaranarsa deməli parol tapılıb. Read More

21 Nov

Служба EMS в Азербайджане.

Привет всем. На этот раз я хотел бы рассказать о службе Express Mail в Азербайджане.1 ноября я сделал заказ, выбрал EMS для отправки. Товар весил около 3 кг и доставка обошлась в 57$, включая страховку, которая действовала на время его путешествия по миру. Изначально, дата доставки продавцом была указана 5-9 ноября, но в действительности, так быстро врятли бы дошло. Как то не верилось. Проходили дни, волноваться начал после 2ой недели покупки, потому что Express должен быть и вправду экспрессом. Благо здесь хотел бы упомянуть узкоспециализированный ресурс www.ebay-forum.ru и наши всеобщие форумы гиганты, где можно узнать на форуме любую информацию об этом аукционе и найти ответы на мучительные вопросы типа «где мой товар?», «почему так долго?» и даже «что делать, когда застряло на таможне?». Но EMS позволяет отслеживать товар от места его отправки до места прибытия. Можно проследить на сайте www.usps.com и также на нашем www.azems.com . Read More

13 Nov

İsitifadəçi adı və parolun düzgünlüyünün yoxlanılması

PHP ilə tanışlığımdan daha əvvəl məni avtorizasiya (bu sözü ana dilimizə tərcümə etməkdə çətinlik çəkdim=) məsələsi çox maraqlandırmışdı. Amma helə indi də istifadə etdiyim variantın ideal olub olmadığından şübhəm var. Yenə də Webdə istifadə olunan bir çox variantdan daha güvənilirdi.

İstifadəçinin rahatlığı və təhlükəsiszliyi nəzərə alaraq işimizi sessiya ilə görəcəyik.

İlk növbədə bizə 2 php faylı lazmdır: biri index.php, digəri isə autor.php (adlar şərtidir). İlk faylımızın içinə sadə HTML formu yazırıq. Hardasa aşağıdakı kimi:

<form action=”autor.php” method= “POST”>
İstifadəçi adı : <input type=”text” name=”name”><br />
Şifrə : <input type=”password” name=”password”><br />
<input type=”submit” value=”Daxil ol”>
</form>

Read More

25 Oct

MySQL cədvəlindən çağırılan məlumatların ardıcıllığının dəyişdirilməsi

Bu yaxınlarda MySQL bazası ilə işləyən zaman hər zaman işlətdiyim ORDER BY nəsə mənə kömək etməməyə başladı. Yenə o uzun SQL sorğularında nəyisə düzgün yazmadığımı bilirdim. Düşündüm ki, bunun daha rahat bir yolu mütləq olmalıdır… İnternetdə axtarışlarım da mənə praktik bir çıxış yolu tapmağıma kömək etmədi. Sabahsı gün işə gedərkən metroda birdən ağlıma phpMyAdminin köməkliyi ilə istədiyimiz ardıcıllığı alıb daha sonra isə həmin ardıcıllığa uyğun SQL çağrışlarından istifadə etmək gədi. Artıq “İçərişəhər” stansiyasının tez gəlməsini arzulayaraq, beynimdə nə etmək istədiyimi konkretləşdirməyə başladım… Beləliklə nəzərə alaq ki, bir neçə sətrdən və sütundan ibarət bir cədvəlimiz var. Bilirik ki, adi qayda ilə bazadan sətrlərimizin hamisini çağırmalı olsaq, bizə köhnədən yeniyə doğru bir siyahı təqdim olunacaqdır (sadəcə “SELECT * FROM `table_name`” sətrini istifadə etsək). Bu hər zaman işimizə yaramaya bilər, ardıcıllığı istədiyimiz sütun əsasında, həm köhnədən yeniyə, həm də əlifbaya uyğun və əksinə şəkildə seçə bilərik. Read More