Ограничение доступа при помощи .htaccess
Иногда удобным методом ограничить доступ к разделам сайта (например, к панели администратора или каким-то конфиденциальным данным) есть ограничение доступа при помощи .htaccess (или, по другому, basic authentication). Конечно, с помощью скриптов это можно сделать изящнее, удобнее, а иногда даже безопаснее. Дело в том, что вся информация для получения доступа отправляется с каждым запросом в виде заголовков. Но если это не критично, то можно использовать; это наверное, самый быстрый вариант.
Работа с формами у Symfony framework (Урок 12. Формы. Введение)
В этой заметке научимся создавать и обрабатывать формы у Symfony framework.
Формы можно как создавать "с нуля", так и использовать ORM (модели таблиц с баз данных). Для начала рассмотрим второй вариант. На практике чаще всего встречается именно такие формы. Ведь в большинстве случаев все, что вводится в форме где-то сохраняется (в БД).
Размещение проекта на Symfony framework на сервере
Как вы знаете с уроков, публичная директория Symfony framework по умолчанию web/, а рядом с ней лежат директории фреймворка. Это значит, что для нормальной работы и красивых адресов DocumentRoot на сервере должен быть настроен именно на папку web/. Но это не всегда удобно и даже не всегда возможно на хостингах. В большинстве случаев у вас не будет возможности править DocumentRoot.
Работа с Doctrine у Symfony framework. DQL (Урок 11. Doctrine. Продолжение)
В предыдущей заметке мы научились писать простые запросы до БД с помощью Doctrine. Но зачастую приходится писать что-то более извращенное, с этими вашими джойнами =). Здесь попробуем разобраться, как это делается.
Растягивание блока на пустое пространство родительского элемента (div expand)
Сегодня столкнулся с неприятной проблемой - при блочной верстке понадобилось растянуть блок на пустое пространство родительского элемента по вертикали (div expand). Естественно, по горизонтали никакой трудности нету - просто задать отображение блочным (display: block) и будет счастье =).
Работа с Doctrine у Symfony framework. Основы (Урок 10. Doctrine)
Итак, мы уже теоретически знаем (здесь могли прочитать), для чего Doctrine, какие она дает преимущества в сравнении с "голыми" sql запросами. Теперь переходим к практике.
Список рутинных задач web-программирования
При изучении нового фреймворка, или языка web-программирования иногда возникает непонятное чувство замешательства, вы ставите себе вопросы: Когда можно считать, что вы выучили продукт на приличном уровне? Когда можно считать, что вы его знаете, а если некоторые вещи и не знаете, то сможете налету схватить/прочитать в мануале/прогуглить?
Работа с базами данных у Symfony framework. Введение (Урок 9. Ознакомление с Doctrine)
Мы уже не маленькие, уже умеем работать с контроллером, настраивать routing систему для обработки входных данных контроллером и создавать представление. Следующим логическим шагом будет обучение работе с базами данных у Symfony framework на примере Doctrine.
Конвертация движка таблицы в MySQL
Иногда нужно конвертировать движок таблицы MySQL в уже существующей базе данных.
Например, мне понадобилось создать связи между таблицами. Для их создания таблицы должны быть InnoDB (чтобы поддерживать foreign key).
Старые Wordpress (и не только) проекты используют MyISAM, потому что до версии MySQL 5.5.4 это был движок по умолчанию. Но он не поддерживает множество полезных функций, таких как внешние ключи, транзакции и т.д. Все эти функции поддерживает более современный движок InnoDB, который теперь используется по умолчанию.
Create relations in MySQL database using phpmyadmin
After reading this article, you will be able to create relations in MySQL database using phpmyadmin. If for some reasons you don't want to use phpmyadmin, please look at SQL queries below.
So, what reason to store relations in the database? After all, your application also solves this task. Actually, it's all about the restrictions and actions upon changes, which can be set using relations.
For example, you can deny deleting category while any article connected with it. Or remove all articles if category removed. Or set NULL in relation field. In any case, using relations increases fault tolerance and reliability of the application.
You need to use an InnoDB engine to create a relation. Only this engine supports foreign keys. If you have MyISAM tables, you can read how convert it to InnoDB.
Symfony framework. Шаблоны. Assets. Assetic. Stylesheets (Урок 8. Assets и Twig)
Итак, в предыдущем уроке мы научились использовать шаблонизатор Twig у Symfony framework. Теперь мы знаем, как написать простенький шаблон. Но не знаем, как подключать внешние компоненты (stylesheets, js, images) и т.д., а также создавать ссылки на собственные страницы.