Webdevkin. Статьи с меткой "mysql"

MySql-миграции: что это и как реализовать простым php-скриптом

октябрь 16 , 2016

Когда разрабатываешь веб-приложение не один, а в команде и/или на нескольких машинах, рано или поздно сталкиваешься с проблемой синхронизации кода проекта и базы данных. Для управления кодом есть системы контроля версий, в частности, git, а для СУБД придуманы миграции.

Есть много готовых разнообразных инструментов, которые занимаются миграциями, но!

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

Поэтому всех, кому интересно узнать, как самим сделать простую утилиту миграций, написав полсотни строк php-кода, прошу в статью.

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

Развиваем дерево категорий jstree, реализуем перемещение на клиенте и сервере

июнь 12 , 2016

Дерево категорий на javascriptНедавно в одной из статей я рассмотрел интересный плагин для построения дерева категорий - jstree. В посте мельком была затронута тема перемещения категорий в дереве мышкой, методом drag-and-drop. На клиентской стороне это делается очень просто - добавлением одного поля в параметрах инициализации плагина. Но чтобы структура дерева не потерялась после обновления страницы, нужно зафиксировать эти изменения в базе данных. Для этого придется написать немного php-скриптов и составить парочку sql-запросов. Как это сделать, рассказывается в статье ниже.

Метки:
Читать дальше

Строим дерево категорий на javascript, php и mysql

май 28 , 2016

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

Метки:
Читать дальше

Развиваем тему интернет-магазина. Реализуем оформление заказа на клиенте и сервере

май 8 , 2016

Оформление заказа в интернет-магазинеВследствие большой популярности поста про корзину для интернет-магазина на javascipt и интереса публики к постройке магазинов в целом решил запилить напрашивающееся продолжение означенной статьи. Сейчас мы рассмотрим следующий этап: сбор данных о покупателе и его заказе и отправка их на сервер.
Что я подразумеваю под оформлением заказа? Как владельцу магазина мне бы хотелось предоставить на своем сайте страничку, где покупатель после накидывания товаров в корзину введет свои контактные данные, нажмет одну кнопку "Отправить заказ", и эти данные каким-то образом будут мне известны, сохранены в надежном месте, и я получу уведомление о новом заказе, дабы не пропустить это радостное событие и максимально быстро обработать этот заказ.
Чем это грозит программисту? Сперва нужно создать эту страничку, нарисовать на ней форму с нужными полями, вроде имени, телефона и адреса доставки. Затем написать немного javascript-кода, который будет, в первую очередь, собирать данные и отправлять их на сервер, а во вторую очередь, заниматься всякими прикольными штуками, например, валидацией введенных данных, обработкой ошибок от сервера, показом сообщений от этих ошибок и прочее. После этого создать в mysql несколько табличек, в которую нужно сохранить полную информацию о заказе, и написать серверный код, который и будет эту инфу обрабатывать. И последняя важная часть - это отправка писем менеджеру магазину и самому покупателю.
Все, что я перечислил, это минимальный, но вполне достаточный набор для функционирования большинства несложных интернет-магазинов.
И теперь подробнее о том, как это реализовать...

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

Создаем первый bat-файл или вспоминаем создание и восстановление баз MySql из командной строки

январь 6 , 2016

bat-файлПонадобилось мне давеча из одного sql-ного дамп-файла создать несколько разных баз с одинаковым содержимым из оного дампа. Не спрашивайте зачем, у всех свои причуды. Так как заранее количество баз и их названия были неизвестны, то было принято политическое решение написать для этого дела маленький (или как уж получится) батник. Как всегда, взявшись за что-то новенькое, даже самое простенькое дело, находится несколько забавных особенностей, которые хочется сохранить и не забывать. Далее описываю, что из этого получилось...

Метки:
Читать дальше

Профайлинг запросов MySql в PHP

июнь 8 , 2015

Часто в нашем приложении мы хотим узнать, сколько времени выполняется тот или иной запрос. Например, мы хотим отлавливать медленные запросы и уведомлять об нас этом. Как это делается - в этой статье

Метки:
Читать дальше

Объединение таблиц в MySql. JOIN

июнь 3 , 2015

По возможности стараюсь не использовать join-ы из-за медленной их работы. Перекрестные и вложенные запросы отрабатывают быстрее и, на мой взгляд, читабельней. Но бывают ситуации, когда без join-ов не обойтись. Оставляю на заметку.

Метки:
Читать дальше

MySql множественный insert и update

май 30 , 2015

mysqlКогда нам нужно обновить несколько строк в таблице MySql, можно выполнить последовательно несколько update-ов. Когда вставить строки в таблицу - несколько insert-ов. Но это очень плохо в плане производительности. Рассмотрим короткий пример добавления и обновления нескольких строк в таблице одним запросом.

Метки:
Читать дальше