Архив метки: notes

Как я хотел менять ноутбук

Есть у меня старенький ноут ThinkPad T40, слегка разваливается, но служит верой и правдой уже лет пять или шесть. Недавно совсем было перестал работать – при загрузке Linux вываливался с непонятной ошибкой. Проверил жесткий диск, проблем не обнаружил и стал готовиться к неизбежной (как казалось) замене ноута.

Пока искал замену – рассматривал разные варианты, включая не особо любимый мной (после продажи бренда IBM) ThinkPad от Lenovo, для сравнения поискал цены на ноутбуки Dell, Acer, Asus – как-то ничего не глянулось, решил замену отложить.

И вдруг, спустя некоторое время, стукнула мысль – а не проверить ли память? Прогнал memtest86+ и точно – нашел битую планку, которую благополучно поменял на новую (хотя DDRII PC2100-2700 не очень просто оказалось найти). Буду иметь в виду на будущее, что протестировать полезно всё железо полностью, а уж потом сокрушаться о необходимости менять старого помощника!

PHP – Personal Home Page Tools

Общие сведения о PHP

PHP скрипты, сео, курсы, примеры, плагин, wordpress
Язык PHP (Personal Home Page Tools, или, как он теперь называется, PHP: Hypertext Preprocessor) является представителем семейства скриптовых языков программирования. Название у языка говорящее, основная область его применения – разработка различных интернет-приложений (интернет-скриптов) и именно в этой области PHP наиболее распространён.

PHP – краткая история создания

Корнями PHP уходит к Perl, затем интерпретатор языка претерпел изменения в сторону большей веб-ориентированности и был переписан на С. Соответственно, PHP включает в себя черты обоих “родителей” – синтаксис похож на синтаксис С, ассоциативные массивы (хэши) и цикл foreach заимствованы у Perl.

PHP – основные особенности и функции

Основная особенность PHP – штатная возможность встраивать исполняемый код в html-код веб-страниц, что делает его очень удобным для создания динамически изменяющихся страниц, при этом шаблоны страниц одновременно являются и статическими, и динамическими элементами.

Функции PHP для веб-разработки

Помимо того, PHP обладает богатым набором встроенных инструментов для веб-программирования, среди которых стоит отметить основные:

  • Встроенные массивы данных, в которые автоматически загружаются переменные окружения сервера, а также параметры, извлекаемые из GET и POST-запросов;
  • В язык встроена поддержка основных СУБД (семейство SQL и другие распространённые СУБД);
  • Возможность отправлять HTTP-заголовки в автоматическом режиме;
  • Поддержка работы с сессиями, cookies, HTTP-авторизацией
  • Работа с файлами (в виде сокетов, удалённых и локальных файлов);
  • Обработка форм, включая XForms, обработка загружаемых на сервер файлов;

PHP и графические приложения

Кроме своего прямого предназначения – создания веб-страниц, PHP также может использоваться для разработки кросс-платформенных графических приложений, среды для разработки которых так же, как и сам язык, распространяются на условиях open-source.

Пример кода на PHP – создание и обработка веб-формы

Ниже приведён пример кода на PHP, выполняющий обработку html-формы. В примере пользователь вводит имя и выбирает пол, после чего нажимает кнопку “Ответить”. PHP-скрипт получает данные из формы, производит над ними заданные действия и распечатывает результат в браузер.

Проверка имени пользователя не осуществляется, поскольку данные из формы никуда дальше не иду, но если вы планируете передавать их в рабочий скрипт или в системную утилиту – не лишним будет сделать проверку регулярным выражением (навроде такого: /^ [^/\.$?&*] $/ix) для отсечения ввода символов, которые в имени встречаться не должны. А при передаче системным утилитам пользовательского ввода – дополнительно использовать escapeshellarg.

Пример веб-формы

Как тебя зовут: ?
Ты или ?


Код для обработки формы на PHP


<form name="PHP_example_web_form" action="" method="post">
<table rows="2" cellspacing="8" cellpadding="4">
<tr><td>Как тебя зовут: </td><td><input type="text" name="u_name" value="" size="10" maxlength="20" />?</td></tr>
<tr><td>Ты <label><input type="radio" name="sex" value="m" checked="checked">мальчик</label></td>
<td> или <label><input type="radio" name="sex" value="w">девочка</label>?</td></tr>
</table>
<input type="submit" value="Ответить" />
</form>

<?php
// если в скрипт было что-то передано - начать обработку
if(count($_POST)>0){
// если переданное имя пользователя не пустое - продолжаем
if(count_chars($_POST['u_name'])>0){
unset($prefixes_m); // на всякий случай очистить массив
unset($prefixes_w); // то же

// если пол указан как мужской - выбрать прилагательное в мужском роде
if($_POST['sex'] === 'm'){
// массив с прилагательными
$prefixes_m = array('мужественный', 'великий', 'сообразительный', 'учёный', 'хитрый');
// выборка случайного элемента из массива
$prefix = $prefixes_m[rand(0,count($prefixes_m) - 1)];
}
// иначе если пол - женский - выбрать прилагательное женского рода
elseif($_POST['sex'] === 'w'){
$prefixes_w = array('прекрасная', 'нежная', 'восхитительная', 'обаятельная', 'неповторимая');
$prefix = $prefixes_w[rand(0,count($prefixes_w) - 1)];
}

// распечатать результат
print '<br /><hr><p>';
print '<div title="Приветствие" class="php-test" contenteditable="true">';
print 'Привет, '.$prefix .' '. $_POST['u_name'].'!';
print '</div></p>';
} // конец обработки имены
} // конец обработки формы
?>

Начать зарабатывать в интернет легко!

Чтобы начать зарабатывать в интернет, нужен, в первую очередь, свой сайт. Получть сайт можно создав блог на любой из бесплатных блог-площадок, приобретя хостинг для блога и установив любой из блог-движков (например – бесплатный и широко известный движок WordPress), или же, если перечисленные выше способы по какой-то причине вам не подходят, вы можете заказать сайт.

Плюсы и минусы каждого решения достаточно очевидны:

  1. Блог на бесплатной платформе не требует технических знаний, достаточно легко обзаводится читателями (смотри мою заметку Массовое добавление друзей в ЖЖ — быстро и просто), имеет подробную справку и множество готовых шаблонов оформления. В то же время, для бесплатного блога доступно не так много способов интернет-заработка, что сужает возможности веб-мастера.
  2. Блог на собтвенном хостинге позволяет использовать любые способы заработка, настраивается в полном соответствии с вашими вкусами (вы даже можете создать для такого блога собственный плагин) и возможностями, но взамен требуте затрат на хостинг (сравнительно небольших, в случае хостинга в США) и хотя бы минимальных технических навыков от владельца, а также готовности самостоятельно искать решения возможных проблем.
  3. Изготовленный на заказ сайт по уровню свободы полностью сопоставим с собственным блогом, а по удобству и простоте использования вплотную приближается к блогу на бесплатной платформе. Но, естественно, требует дополнительных материальных затрат на разработку.

Я постарался кратко перечислить основные плюсы и минусы различных способов получения сайта для дальнейшего заработка в интернет, но окончательное решение остаётся конечно же за вами!

Cygwin – бесплатная реализация unix-подобного окружения для Windows

Cygwin - бесплатное Unix-окружение для Windows

Как ясно из заголовка, Cygwin представляет собой unix-подобную среду, реализованную для ОС Windows.

Cygwin включает в себя следующие основные компоненты:

  • Динамическая библиотека cygwin1.dll, которая обеспечивает совместимость на уровне API и предоставляет реализацию значительной части стандарта POSIX.
  • Коллекция прикладных утилит, обеспечивающих UNIX-образное окружение (включают в себя как утилиты с интерфейсом командной строки – например – утилита для безопасного удаления файлов shred, так и графическое окружение типа Gnome/KDE).

Cygwin распространяется бесплатно под лицензией GNU GPL v.2, разработкой занимаются как сотрудники Red Hat, так и сообщество добровольцев. В качестве стандартной оболочки командной строки используется Bash. Cygwin имеет встроенный эмулятор терминала, однако также для окружения существует сборка популярного легковесного unicode-терминала urxvt

Посредством Cygwin обеспечивается существенная интеграция ресурсов, данных и прикладных программ Windows с ресурсами, прикладными программами и данными Unix, что позволяет как вызывать Windows-приложения из Cygwin, так и использовать Unix-утилиты из состава Cygwin в консоли Windows.

Последние версии Cygvin (старше версии 1.7) имеют встроенную поддержку Unicode (UTF-8), при использовании Windows-утилит из Cygwin, последняя автоматически перекодирует вывод в UTF-16, применяемую в Windows по умолчанию. Таким образом, в современных версиях Cygwin отсутствуют проблемы при работе с кириллицей (ввод-вывод осуществляются корректно).

Небольшое практическое дополнение.
Для того, чтобы в Cygwin использовался файл .bashrc, расположенный в домашней директории пользователя, можно воспользоваться следующим способом –
в файл путь_куда_установлен_cygwin\etc\defaults\etc\skel\.bash_profile дописать такие строки:

# source the users bashrc if it exists
if [ -e "${HOME}/.bashrc" ] ; then
source "${HOME}/.bashrc"
fi

Быстрая индексация сайта в поисковиках

Не секрет, что поисковые роботы, в случае с молодыми сайтами, могут проявлять феноменальную медлительность, упорно не желая такой сайт проиндексировать. Также ускорение индексации может потребоваться, если вы например сделали прогон сайта по каталогам и желаете, чтобы обратные ссылки на него стали поскорее известны поисковикам. Существуют средства, позволяющие сильно ускорить индексацию нужных материалов посиковыми системами. Именно о таких ускорителях индексации я и намерен поговорить.

Ускорение индексации сайта Яндексом

Ускорение индексации сайта Google

Прочие поисковые системы

Косвенные методы ускорения индексации сайта

К косвенным методам ускорения индексации сайта я отнесу кросс-постинг в различные популярные блог-платформы (livejournal; blogger.com – особенно полезно для индексации Google; liveinternet.ru; блоги ya.ru – быстрая индексация яндексом; блоги на mail.ru и др.).

Отдельно в свете быстрой индексации упомяну анонсирование записей блога в twitter, как прекрасный способ ускорить их индексацию.