Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

PHP, SQL, SSI-Дневник ламера, превращающегося в ГУРУ :-) Немного о SSI, SQL каскадных стилях и новости.


Информационный Канал Subscribe.Ru

Выпуск номер 7
Рассылка: Дневник ламера.
  Здравствуйте товарищи :-)

Сегодня:

1) Работа с SSI Краткий список инструкций.
2) Основы MySQL и команды для работы с базой данных
3) Как правильно прописывать стили CSS
4) Пара интересных новостей с последних лент.

 
 

Ламер думает, что в килобайте 1000 байтов,
Конченный программер думает, что в километре 1024 метра :-)

1) SSI - это язык, похожий на PHP. Точнее формат записи команд в общем тот - же, только в РНР инструкции в коде HTML вставляются в виде:
<? include "./files/header.shtml?mod=12"; ?> // ./ указывает на то, что файл header.htm находится в каталоге, на один уровень выше текущего.

А на SSI подобная функция записывается в виде:
<!--#include virtual="./files/header.shtml?mod=12" --> // в данном случае это аналог приведённой выше команды РНР
и расширение файлов не *.РНР, а *.SHTML

Можно вставлять файлы по другому:
<!--#include file="file.txt" -- >
Но в этом случае мы можем вставлять файл только из текущей директории, поэтому лучше делать include через функцию virtual как в первом варианте.

Языком это конечно не назвать, так как он прост до тупости. За один день можно выучить все команды и сделать сайтик простенький, как у меня и было собственно. Это то же, что и РНР, только жутко обрезанный по функциональности, но работу с переменными, условия - он поддерживает. Работа с переменными ведётся примерно так-же, как и в РНР
Определяем переменную TITLE:
<!--#set var="TITLE" value="Смерть натовским оккупантам !!! " -->

<!--#echo var="TITLE" --> // Печатаем переменную TITLE

Также можно использовать операторы условий. Формат записи такой:
<!--#if expr=" условие " -->
<!--#elif expr=" условие " -->
<!--#else -->
<!--#endif -->


Допустим определяем переменную:
<!--# set var="temp" value="2" -->

И пишем условия для её проверки:

<!--#if expr="$temp=1" -->
Один

<!--#elif expr="$temp=2" -->
Два

<!--#elif expr="$temp=3" -->
Три

<!--#else -->Что-то левое вообще

<!--#endif -->

Запустив это, мы увидим надпись Два
Вот так всё просто, но есть одна проблемка, по документации, которую я читал, переменная в скрипт должна передаваться обычной командной строкой вида: index.shtml?temp=3 Или через стандартные формы.

А вот это уже не работает. Также данные из форм скрипт почему-то не принимает. Может кто-то знает, в чём косяк ?
ЗЫ.
<!--#printenv --> Эта команда выводит ВСЕ переменные окружения. Функция исключительно отладочная.

Расширю и углублю тему в следующем выпуске.

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

Так вот... Я думаю, что с установкой и конфигурированием вы справились. Это конечно сложная процедура, если делать в ручную, но лично мне этим неинтересно заниматься, поэтому у меня всё настраивается автоматически. Моя задача - завязать SQL сервер с языком программирования PHP и работать с ним, чтобы делать хорошие сайты :-) А установка, настройка и администрирование - это головная боль админов :-) Лично мне нравится заниматься творчеством, а не копаться в конфигах.
Чтобы запустить программу-клиент, я запускаю в каталоге /mysql/bin файлик mysql.exe Это достаточно убогий командный процессор, но для разбора полётов его вполне хватит.
Запустив мы видим строку приглашения: mysql>
НАДО ОТМЕТИТЬ: в таком виде строка работает нормально, но если она выглядит так: --> То это рога и это неправильно. Команды вводиться не будут. Ставим точку с запятой и всё нормально становится.
Теперь мы вводим команду: show databases; и нам вываливается список с базами данных, которые есть на сервере.
Потом вводим: SELECT NOW() , USER(); и нам показывают текущую дату, время и имя пользователя, под которым вошли в систему. НЕ ЗАБЫВАЙТЕ ставить в конце каждой команды точку с запятой, иначе не будет работать.
Можно вводить эти команды по отдельности:
SELECT NOW();
SELECT USER();

Но это нам не очень актуально сейчас. Более интересно, просто посмотреть саму базу, таблицы и значения полей.
Чтобы выбрать базу, набираем команду: USE FORUM; forum - это у меня так называется база данных, а у вас она конечно-же называется по другому.
Набираем команду SELECT DATABASE(); и нам выводится имя Активной(выбранной нами) базы данных.
Теперь набираем: SHOW TABLES; и видим... Ой... Нихрена себе, сколько тут всего вывалилось... :-) В общем мы видим список всех таблиц базы.
А далее мы уже можем добавлять новые таблицы командой: create table < имя таблицы> ( <описание таблицы>);
Выбирать данные из таблиц: select <что-то> from <таблица>;
Добавлять строки в таблицы: insert into <имя таблицы> values(<перечисление полей>);
Об этом я уже говорил в предыдуших выпусках и буду говорить в следующих, а теперь
3) Немного о стилях CSS и как ЛУЧШЕ их прописывать.
Обычно стили прописываются так:

DIV.STYLE11{
BORDER-RIGHT:#000000 1PX SOLID;BORDER-TOP:#000000 1PX SOLID;
; Padding-top: 1px; Padding-right: 1px;
; Padding-bottom: 1px; Padding-left: 1px;
; Visibility: visible;
; Height: 1px;
}

Njtcnm мы пишем тег, в данном случае DIV и перечисляем параметры в фигурных скобках {} для него. И эти стили могут применяться ТОЛЬКО для этого тега, тоесть DIVа. Но это не есть гуд и лучше прописывать так:

.STYLE11{
BORDER-RIGHT:#000000 1PX SOLID;BORDER-TOP:#000000 1PX SOLID;
; Padding-top: 1px; Padding-right: 1px;
; Padding-bottom: 1px; Padding-left: 1px;
; Visibility: visible;
; Height: 1px;
}
Фактически ничем не отличается от первого варианта за исключением ТОЧКИ в начале, перед именем стиля, но теперь уже, мы можем применять описание не только к тегу DIV, но и к любым другим тегам. Тоесть пишем:
<div style=""STYLE11">" и объект описывается параметрами, которые содержатся в стиле (в случае, если он вообще поддерживает эти параметры). В первом же случае, когда мы просто прописываем стиль для тега DIV, то и применяется он ТОЛЬКО для него. Это кебольшое ограничение, но оно иногда может помешать, поэтому зачем делать хуже, если можно сделать лучше ? :-)

4) Теперь последний пункт, две интересных новости:
Сообщение с http://lenta.ru

В Рунете предлагают ввести цензуру и обязательное лицензирование

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

Если глава комиссии СФ по информполитике Дмитрий Мезенцев твердо пообещал, что "цензуры нет и не будет", то представитель президента в СФ Александр Котенков заявил, что новый закон должен предусматривать "нормативную цензуру". "Нормативная цензура должна четко оговаривать, чего нельзя публиковать в СМИ, и тогда цензуру будет осуществлять не какое-то ведомство, а граждане и суд",– пояснил он. Цензура, как считает Котенков, должна коснуться и интернета. При этом все сайты, по его словам, должны иметь свой постоянный IP-адрес, по которому можно будет определить принадлежность ресурса. Впрочем, участники заседания вчера так и не смогли решить, следует ли относить интернет-сайты к СМИ.

Заместитель министра культуры и массовых коммуникаций Леонид Надиров высказался также за обязательное лицензирование интернет-ресурсов. Минкульт, по его словам, готов взять на себя выдачу лицензий на открытие сайтов в Интернете и тем самым не допустить открытия сайтов террористов и порнодилеров.

Против этих предложений выступил заместитель министра информационных технологий и связи Дмитрий Милованцев: "Если мы начнем лицензировать Интернет, то провайдеры перейдут из зоны Ru, базирующейся в основном на территории России, в зону Com, в США, - пояснил он свою позицию. - Ни в одной стране мира интернет не лицензируется".

В конченом итоге, резюмирует "Коммерсант", участники заседании так и не пришли ни к каким конкретным решениям. Хотя закон, разработка которого инициирована администрацией президента, уже в декабре может быть вынесен на обсуждение Госдумы.

Адрес этой мессаги: http://lenta.ru/internet/2004/10/07/censorship/

И второе:

США изымают сервера у независимых новостных сайтов

Распоряжение американского суда стало основанием для изъятия веб-серверов в 17 странах. Закрытие тех из них, что находились в Великобритании, привело к полному или частичному прекращению работы 20 независимых информационных сайтов.

По данным сайте ежедневной газеты Guardian, представители ФБР заявили, что операция была проведена по запросу итальянских и швейцарских властей, но само Федеральное бюро к ее проведению не причастно.

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

Сотрудники Rackspace сообщили, что ордер был выдан на основании Соглашения о взаимной юридической помощи, по которому разные страны помогут друг другу в расследовании дел, связанных с терроризмом, похищением людей и отмыванием денег.

При этом объяснений того, как это соглашение можно применить к данному случаю Rackspace дано не было. "Власти могут просто использовать это как повод. Мы не знаем", - сказал один из журналистов Indymedia.

Британская полиция уже заявила, что не была осведомлена об изъятии серверов. Было ли поставлено в известность Министерство внутренних дел - неизвестно.
Адрес данного сообщения: http://lenta.ru/internet/2004/10/11/webservers/

Вот так штаты успешно и борются с Хм... Терроризмом. Правда непонятно, как в их список попал сайт, специализирующийся по защите прав человека...
Ну помешал кому-то, ладно. Всякое бывает, наверное слишком много знали про ирак и распространяли "Неправильнаю" идеологию :-)
Ничего, скоро и нас прижмут. Будем хоститься где-нить за бугром и покупать доменные имена .US .CA и прочее ;о)

На этом прощаюсь с вами. До новых встреч :-)

 
     
Евгений Евсеев - IrkutskProject(Собака)yandex.ru

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.php1sql1ssi
Отписаться

В избранное