Как правильно сжимать изображение

Возможно кому то это будет интересно, к примеру тем кто только начал осваивать фреймворк Codeigniter и пытается сделать загрузку изображений на своем сайте.

На самом деле Codeigniter предоставляет полный спектр возможностей по работе над изображениями, это и сжатие и crop, а так же наложение водяных знаком в виде текста или же картинки.

Но суть поста не об этом, а о том как же правильно обрезать/сжать изображение, чтобы получить нужный размер ширины и высоты.


Читать дальше →

Редирект с google images

Заметки программиста: Редирект с google images
Недавно задумался над тем как же все таки бороться с гуглом, который после нового дизайна гугл картинок перестал отдавать трафик сайтам с которых он берет картинки.
В этом посте я приведу пример кода для .htaccess, после моих экспериментов все заработало, но есть недостатки.

Рассмотрим пример нажатия на кнопку Открыть в полном размере.
Читать дальше →

Горизонтальное меню для сайта

CSS/CSS3: Горизонтальное меню для сайта
Пишем горизонтальное меню для вашего сайта на CSS3, на картинке видно как оно выглядит, темное меню с выдвигающимися разделами, при наведении на раздел он выделяется синим цветом.
Что примечательного в этом меню.
Первым делом хочу заметить что оно полностью написано на CSS и не использует JS.
Второе, конечно же его внешний вид, красивое и аккуратное меню для вашего сайта.
Третье, это его бесконечная вложенность, то есть в разделах, можно создать еще разделы и так далее, что делает его очень функциональным и самое главное легким.


Читать дальше →

Авторизация пользователей в CodeIgniter

После всего проделанного, конечно же хочется продолжения и собственно сделать авторизацию и регистрацию пользователей на сайте.

Все как всегда довольно просто и понятно. Давайте рассмотрим уже готовую библиотеку авторизации пользователей Tank Auth.

Для подключения tank_auth все нужно скачать саму библиотеку, перейдя по ссылке
Читать дальше →

Подведем итоги по фреймворку

После того как мы собрали первую CMS на фреймворке CodeIgniter, научились выводить посты из базы данных, немного познакомились с маршрутизацией и организацией файлов, но это конечно же еще далеко не все, это лишь малая (основная) часть того что может фреймворк.

На самом деле разработчики постарались на славу и программировать свои сайты на CodeIgniter сплошное удовольствие, конечно же когда в нем начинаешь разбираться, но для этого нужно немного самостоятельно покопаться в коде и написать что то для себя.

Читать дальше →

Вывод подробной новости

В предыдущей статье мы увидели как выводить все новости на страницы сайта с помощью фреймворка CodeIgniter, в данной статье предлагаю научиться выводить подробное содержание определенной новости по ее уникальному id номеру.

Создавая ранее модель, класс которой отвечает за вывод постов, мы так же писали условие в функции, что если передается какое то значение в функцию, а именно id записи, то мы делаем запрос в базу именно по этому id.

Нам осталось создать в контроллере новую функцию, а так же вид и сформировать ссылку в маршрутизаторе.

Читать дальше →

Вывод данных на страницы сайта

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

Читать дальше →

Создание контроллера и подключение модели

Как и писал ранее о создании модели, все создано очень просто и понятно, с контроллерами практически все тоже самое. Контроллер обращается к модели, которая в свою очередь создает выборку из базы данных и передает обратно в контроллер, контроллер создает вид и передает все данные в представление (view).

Работая с контроллерами мы так же будет создавать новые контроллеры как и модели, каждый контроллер будет отвечать за определенный вывод информации, новости/пользователи и прочее.

Начнем писать контроллер
Читать дальше →

Создание модели подключения к базе данных

Как уже и писал раннее для вывода базы данных у нас есть три папки
/application/controllers/
/application/models/
/application/views/

В папка models мы создаем класс, который будет формировать запрос вывода из базы данных, грубо говоря обычный sql запрос, вам не нужно проводить какую либо фильтрацию данных по защите от инъекций и xss атак, CodeIgniter все сделает за вас, так как в создаваемом классе мы будет использовать оригинальные библиотеки CodeIgniter по защите от всякого лишнего кода.

В папке controller мы так же создаем класс, который формирует вывод контента основанного/взятого из класса в models. Своего рода controllers формирует некий html код с контентом (думаю так будет более понятно).

В папке views хранятся шаблоны, которые мы будет указывать в нашем controllers для последующего вывода контента на саму страницу.

Приступим…
Читать дальше →

Подключение к базе данных

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

После установки CodeIgniter в папке с конфигурационными файлами /config/ есть файлы отвечающие не только за настройку фреймворка, но и за подключение к базе данных, в частности нам нужен файл database.php
Читать дальше →