<MyRusakov.ru />

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Фреймворк Yii 2.0 с нуля. Пример создания сайта

Видеокурс "Фреймворк Yii 2.0 с нуля. Пример создания сайта" обучит Вас созданию профессиональных сайтов с использованием фреймворка Yii. В курсе есть 2 раздела: теоретический и практический. В теоретическом разделе будут разобраны возможности фреймворка Yii с примерами их использования, а в практической части будет создан сайт Blog.MyRusakov.ru с помощью полученных знаний из теоретического раздела.

Так же почти ко всем урокам идут упражнения для закрепления материала из урока на практике.

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Конструкция WHERE в SQL

Конструкция WHERE в SQL

При выборке записей из таблицы практически всегда требуется задавать определённые условия, по которым мы определяем, какие записи нам нужны, а какие - нет. И именно эти условия можно задавать с помощью конструкции WHERE в SQL. Я уже знакомил Вас с ней, но в этой статье решил познакомить с WHERE немного поближе.

Начну с простого примера выборки с использованием конструции WHERE в SQL:

SELECT * FROM table WHERE count=5

Вернутся записи, в которых поле "count" имеет значение 5. Теперь усложним запрос:

SELECT * FROM table WHERE count=5 AND id < 100

Таким образом, вернутся записи, у которых поле "count" имеет значение 5 И поле "id" имеет значение меньше 100.

Разумеется, Вы можете использовать и другие логические операции. Их полный список:

  • ! (отрицание)
  • AND (И)
  • OR (ИЛИ)
  • XOR (ИСКЛЮЧАЮЩЕЕ ИЛИ, иногда ещё называют МОНТАЖНОЕ ИЛИ, но такое название встречается в основном в микропроцессорной литературе)

Пример с использованием нескольких логических операторов:

SELECT * FROM table WHERE !(id <= 120 AND (count=10 OR date > "10/11/1980"))

Вот такой, на первый взгляд, сложный SQL-запрос. Постарайтесь в нём разобраться самостоятельно.

Также конструкция WHERE в SQL может содержать LIKE. LIKE позволяет определить, совпадает ли указанная строка с определённым шаблоном. Чтобы стало немного понятнее, приведу пример:

SELECT * FROM table WHERE text LIKE "%some text%"

Данный SQL-запрос вернёт result_set, содержащий записи, в которых поле "text" имеет такой текст: "some text". Обратите внимание, что это не проверка на равенство. Текст может быть огромным, но если в нём содержитася строка: "some text", то LIKE вернёт true.

Давайте напишу, как задаётся шаблон для LIKE:

  • % - это то, что мы с Вами использовали. Используется он чаще всего и означает он любую строку любой длины. Фактически, строкой "%some text%" мы говорим, что сначала идёт любая строка любой длины, затем "some text", а затем вновь любая строка любой длины. Если текст удовлетворяет этому шаблону, то вернуть true, иначе false.
  • [ ] - это одиночный символ. Чтобы использовать этот шаблон необходимо задавать диапазоны, например, так: "[a-z]some%". Данный шаблон будет означать, что сначала идёт 1 символ (любой символ от a до z), далее "some" и потом любая строка любой длины.
  • _ - это любой одиночный символ.
  • [^] - это противоположность [ ]. Например, можно привести такой пример: "[^az]some_". Данный шаблон означает, что вначале идёт любой символ, но только НЕ "a" и НЕ "z". Далее должна идти строка "some", а после только один одиночный символ.

Знание и умение использования LIKE очень важно, поверьте моему опыту. Самый простой пример использования LIKE - это поиск по сайту. Ведь контент находится в базе данных, и необходимо вытащить только те записи, в которых содержится строка, заданная в строке поиска. И тут приходит на помощь LIKE. Именно так реализован поиск мною на этом сайте.

Вот, пожалуй, всё, что необходимо знать для успешной выборки записей с использованием конструкции WHERE в SQL.

Полный курс по PHP и MySQL: http://srs.myrusakov.ru/php

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (10):

pervrom1 pervrom1 28.09.2011 21:38:32

Спасибо! А как учитывать регистр? Например, если понадобиться сверить пароль введённый пользователем с тем, что имеется в базе? Я ошибаюсь или LIKE не учитывает регистр, как и если бы сделать запрос SELECT * FROM table WHERE password='$password', где $password - пароль, указанный в форме? Тогда ABCdef, abcDEF, abcdef и т.д. будут совпадать... Спасибо.

Ответить

Admin Admin 28.09.2011 21:51:17

Для учёта регистра необходимо перед названием поля ставить BINARY. Данная команда преобразует следующую за ним строку в двоичный набор данных, таким образом, регистр будет учтён. Пример: SELECT * FROM table WHERE BINARY password = 'myPasSword'

Ответить

pervrom1 pervrom1 28.09.2011 21:58:28

Теперь я полностью удовлетворён. Спасибо.

Ответить

(Алекс) (Алекс) 13.07.2013 13:09:21

Здравствуйте, Михаил. Помогите решить проблему: нужна функция, которая будет добавлять в таблице БД в статью дополнительные данные. Например есть таблица с 5 полями 4 заполнено, нужно функция которая будет заполнять пятое поле у определенной статьи. Я пытался вчтавить конструкцию (WHERE `id`='$id') непомоголо. Можно ли такое реализовать.

Ответить

Admin Admin 13.07.2013 15:25:52

Нужно использовать запрос UPDATE.

Ответить

(Алекс) (Алекс) 13.07.2013 17:55:52

а как сделать чтоб можно было указать не часный id, а брать его из строки в БД. Например у меня в таблице 100 запией и у каждой одно поде пустое. Выходит надо сделать 100 функций?

Ответить

Admin Admin 13.07.2013 21:13:08

Не надо тогда вообще писать WHERE.

Ответить

(Алекс) (Алекс) 13.07.2013 22:27:07

допустим у меня в БД есть таблица в которой хранятся заказы: закащик, дата и статус. список со всеми заказами выводится на страницу со сылками для подробного ознакомления. допустим 1 из них, а их например 100, я выполнил. я со страницы определенного заказа хочу отправить форму с датой окончания т статусом.

Ответить

malina95 malina95 06.03.2014 18:05:17

Напишите пожалуйста про малоизвестную команду XOR в PHP и MySQL. А также про все остальные логические команды

Ответить

tikkiwiki tikkiwiki 13.05.2014 11:26:26

Хорошо, примем во внимание.

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.