Архив рубрики » Информационные технологии «

Заявка №2. Простейший анонимайзер

Вторая просьба была такова — описать работу простейшего анонимайзера. Ну-с приступим. Сначала теория. Сайт для браузера — это последовательность всяких символов, именуемых html-кодом. В самом простом случае мы должны эту последовательность символов считать и куда-то записать. Что-то типа такого:


<?php
$url = fopen ("http://makson.ru", "r");
$file = fopen ("site.html", "w");
$k = "";
while (!feof($url)) {
$i = fgets ($url);
$k = $k.$i;
}
fputs ($file,$k);
?>

Разберём по-строчно.
1. $url = fopen («http://makson.ru», «r»); — функция fopen открывает файл или url. Режим ‘r’ открывает файл только для чтения и помещает указатель в начало файла.

2. $file = fopen («site.html», «w»); — аналогично, но режим ‘w‘ открывает файл только для записи; помещает указатель в начало файла и обрезает файл до нулевой длины. Если файл не существует — пробует его создать.

3. Переменной $k пока задаём пустое значение.

4. while (!feof($url)) { — указывает PHP выполнять вложенные выражения повторно до тех пор, пока выражение в самом while является TRUE. Функция feof() проверяет, достигнут ли конец файла. Знак ‘!‘ в php является знаком отрицания, то есть цикл будет работать пока не будет достигнут конец файла.

5. $i = fgets ($url); — функция fgets читает строку из файлового указателя. В нашем случае указатель на файл — переменная $url. Указатель на файл должен быть корректным и указывать на файл, успешно открытый функциями fopen() или fsockopen() (и все еще не закрытым функцией fclose()).

6. $k = $k.$i; — переменная $k равняется самой себе плюс значение переменной $i (строка). То есть цикл накладывает содержимое строк файла друг на друга.

8. fputs ($file,$k); — функция известна также, как fwrite. Записывает содержимое в файловый поток. То есть в site.html будет записано значение переменной $k.

Простейший анонимайзер готов, конечно, для динамических сайтов оно не годится.
А вот для отображения в браузере нужно этот самый браузер сэмулировать путём передачи заголовков (HTTP/1.1 — RFC 2068). Как-нибудь напишу об этом.

Заявка №1. Кириллица в латиницу.

Потихоньку начинаем работать в рамках практики , как видите появилась новая рубрика «по заявкам.» Первая просьба оказалась довольно простой — нужно сделать перекодировщик русских букв в латинские. При этом никаких особых условий обговорено не было,а стало быть рассмотрим наиболее простой вариант, состоящий из маленькой web-формы и функции. Начнём с web-формы.

<!DOCTYPE html>
<html>
<head>
<title>Конвертер CYR-LAT</title>
</head>
<body>
 <form action="" method="post">
 <p>
 <textarea name="src" cols="50" rows="10"></textarea>
 </p>
 <p><input type="submit" value="Перекодировать">
 </form>
</body>
</html>

Здесь всё предельно просто, право не знаю стоит ли подробно описывать формочку. Хотя повторение — мать учения — так что кратко описываем по строкам.

1. <!DOCTYPE html> — доктайп (doctype) не является html-тегом в чистом виде. Это инструкция браузеру, указывающая версию языка разметки. В данном случае мы используем HTML 5.

2. <html> — ну тут всё понятно, тег-контейнер, содержащий в себе всё содержимое.

3. <head> — тег предназначен для хранения метатегов, использующихся для хранения информации, предназначенной поисковым системам и браузерам (например, заголовок страницы, ключевые слова, описание страницы и т.д.).

4.<title>Конвертер CYR-LAT</title> — здесь храним заголовок страницы.

5. </head> — соответственно закрываем тег «головы»

6. <body> — предназначен для хранения содержимого веб-страницы. «Тело» страницы.

7. <form action= » » method= «post» > — начало формы, action (действие) содержит в себе пустое строку, поскольку у нас скрипт в одном и том же файле, если бы мы передавали данные в какой-то другой файл,строка выглядела бы примерно так: form action= «myfile.php» . Ну а method = «post» указывает на то, как именно мы передаём данные, методом post или методом get. Само собой в данном случае предпочтительней post, поскольку не меняется адресная строка.

ПОДРОБНЕЕ »

Нужна практика!

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

Отечественный процессор Эльбрус наконец выпускается на территории РФ

ЗАО «МЦСТ», разработчик универсальных высокопроизводительных российских микропроцессоров и вычислительных комплексов, объявляет о запуске в опытное производство компактных материнских плат «Монокуб-М» на базе первых отечественных двухъядерных микропроцессоров «Эльбрус-2СМ», произведенных по технологии 90 нм ОАО «НИИМЭ и Микрон»,  крупнейшим в России и СНГ производителем и экспортером микроэлектроники, входящим в отраслевой холдинг РТИ. Плата выполнена в форм-факторе mini-ITX, а перечень доступных интерфейсов выглядит следующим образом: PCI-Express 1.0, GigabitEthernet, USB 2.0, VGA, DVI, SATA 2.0, IDE (CompactFlash), RS-232, GPIO.

Ранее отечественные чипы производились на Тайване. Процессор наделен 2 МБ кэш-памяти и двухканальным контроллером памяти DDR2-533. Сообщается, что чип является глубоко переработанным вариантом микропроцессора «Эльбрус-2С+», адаптированным для производства на «Микроне».

Это, конечно, ну очень хорошо, что наконец-то в такой большой стране начали делать компьютеры, на которых дистрибутив Linux запускается, и даже какой-нибудь Quake II вполне себе будет играть. Понятно, что их назначение — исключительно государственные структуры, однако хочется пофантазировать, за сколько можно было бы купить такую продукцию, попади она на полки магазинов?

ПОДРОБНЕЕ »

Первый с третьего раза

Есть у нас одна маленькая традиция — каждый год в конкурсе сайтов профобразования участвовать. Инициатор конкурса — Мельников Александр Алексеевич — преподаватель высшей категории Серафимовичского техникума механизации. Именно ему принадлежат такие сайты, как profobrazovanie.org, профконкурс.рф и другие, цель которых — поддержка профессионального образования в информационной сфере.

Первый диплом мы получили 15 декабря 2011 года в номинации сайт образовательного учреждения СПО в первом международном конкурсе сайтов профессионального образования НПО и СПО, заняв второе место. Само собой в конкурсе участвовал сайт Гусевского агропромышленного колледжа, то есть gapk.ru.

Второй диплом — 30 декабря 2012 года, уже во втором международном конкурсе сайтов профессионального образования НПО и СПО, заняв, опять же, второе место. В связи с этим событием даже была опубликована заметка на сайте министерства образования Калининградской области. Но, поскольку, сайт министерства по адресу http://edu.baltinform.ru/ нынче не функционирует, статья утеряна.

Ну а в четвёртом международном конкурсе сайтов профессионального образования СПО я уже размещал не сайт организации, а этот бложик, соответственно в номинации «личный сайт педагога.» И вот результат — первое место. Собственно, я и не сомневался в результате. Огромное спасибо участникам СНК «Эврика» за помощь и поддержку в совершенствовании блога. Следующий шаг — регистрация блога как средство массовой информации.

ПОДРОБНЕЕ »

Социализацию да в мирных целях — ролевая игра по программированию

Робокоп и ТерминаторПри слове «социализация» у меня сразу всплывает картина средней школы, дома напротив и детишек с сигаретой и банками пива. Ведь именно из-за того, что человеку вдалбливается мысль «ты должен быть в коллективе, быть как все, не быть белой вороной» — он берёт первую сигарету, первую банку пиво, первый стакан водки. Именно из-за того, что ты «должен влиться в коллектив,» школьник бежит к матери с криком «я хочу новыый айфоннн!!» Конечно, ведь у его друзей есть такие, тема разговоров одна — у кого какие «мобилы». Учился, помню.  Дух соперничества, да не в том русле.

Вот я и подумал, а если эту самую социализацию, это самое соперничество направить на службу образованию, но как? В игровой форме. Знакомо понятие «форумная ролевая игра?»  Идея в том, что на форуме создают некое совместное фантастическое произведение. Описывают своих персонажей, путешествуют друг к другу, придумывают сюжет.

Вот и нам нужно так сделать, только в центре «нашего мира» будет некий заказчик, выдающий технические задания (квесты если хотите) на разработку определённых программ, а также время на реализацию. Каждый участник игры выбирает «свой стиль борьбы» — то есть язык программирования, на котором будет разрабатывать программу.

Одно дело — изучать языки программирования «для себя «, и совсем другое, когда знаешь, что твою программку ждут, да и опять же дух соперничества — всё это даст дальнейший стимул для самообразования. Чтобы стать специалистом — нужно три вещи: практика, практика и практика.

В качестве «полигона» для сражений наших программ мы выбрали форум Ретро-чата. Правила описаны здесь: http://maksonru.dlinkddns.com/viewtopic.php?id=27

ПОДРОБНЕЕ »

Нарушители уже не те… Или версия для слабовидящих.

Ботан-нарушительМы живём в самой прекрасной стране, где с преступностью в привычном плане давно покончено. Любой гражданин может спокойно ночью гулять по улице, а трудовое законодательство соблюдается от и до, ведь так? Ну чем в такой ситуации заниматься единой федеральной централизованной системе органов, осуществляющих от имени Российской Федерации надзор за соблюдением Конституции Российской Федерации и исполнением законов, действующих на её территории? Новый мир — новые нарушители! Теперь прокуратура занимается… проверкой сайтов государственных учреждений на соответствие стандартов.

Нет, это не стандарты консорциума W3 (Боже, таких слов 80% жителей России и слыхом и не слыхивали) —  это определённые ГОСТ’ы, принятые внезапно с целью заботы о наших дорогих граждан. Вот один из них — ГОСТ Р 52872-2007 

Пункт 5.10 Альтернативная версия сайта для инвалидов по зрению
Для веб-сайта, предусматривающего значительное число элементов, к которым
значительно затруднен доступ инвалидов но зрению, необходимо обязательно предусмотреть
версию сайта имеющего минимальное число графических элементов. Для перехода на эту
версию сайта на главной странице веб-сайта необходимо разместить текстовую гиперссылку. 

ПОДРОБНЕЕ »

Гусевский агропромышленный колледж активно ведет работу по переходу на «электронный журнал»

Электронный журналВ Гусевском агропромышленном колледже с 18 ноября проводятся практические семинары по работе в информационно-аналитической системе АВЕРС: Управление учреждением среднего профессионального образования (АВЕРС: ПОУ) с модулем «Электронный журнал».

В рамках обучающих семинаров преподаватели, мастера производственного обучения осваивают практические навыки работы по ведению «Электронного журнала».

Тематика практических обучающих семинаров включает:

— формирование Тематического планирования по учебным дисциплинам, профессиональным модулям (создание разделов, тем, тематики поурочного планирования с указанием самостоятельной учебной работы студентов);

— заполнение электронного журнала в программе АВЕРС: ПОУ (проведенных учебных занятий);

— учет успеваемости и посещаемости учебных занятий;

— формирование учебных документов, ведомостей учета и отчетов;

— учет проводимых мероприятий разных уровней;

— формирование портфолио студентов колледжа.

ПОДРОБНЕЕ »

100 гигабайт знаний

Помните заметку «Поможем распространяться знаниям?» Ну так вот срок работы нашего мини-сервера, размером с кредитную карту, на сегодняшний день составляет более 40 дней. За это время устройство не разу ни выключалось и постоянно «раздавало» свободно-распространяемые видеоуроки.

В настоящее время количество «отданных» уроков по программированию под Android превысило психологическую отметку в 100 гигабайт. Прикладываю скриншот. Как же приятно думать о том, что неким образом поспособствовал появлению новых приложений и игр на Андроид.

Раздача

А вот и скриншот, подтверждающий бесперебойную работа мини-компьютера Raspbrerry Pi B+. Как-нибудь постараюсь найти время и написать развёрнутую статью по настройке этого изделия.

Uptime