5 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Изучение Python: от нуля до мастера

Изучение Python: от нуля до мастера

May 19, 2018 · 10 min read

Первым делом спросим себя, что такое Python? Создатель языка, Гвидо ван Россум, описывает его следующим образом:

“Язык программирования высокого уровня, главная идея которого — это простая читабельность и синтаксис, который позволяет программистам выражать концепцию программы парой строк кода”

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

Следующей причиной было то, что Python мультизадачный. Мы можем его использовать для анализирования данных, разработки сайтов, машинного обучения. Quora, Pinterest и Spotify используют именно Python для своего back-end’а. Хорошая мотивация, чтобы узнать чуть больше об этом.

Работа с базой данных в php

Доброго времени суток уважаемый читатель Блога RS. Сегодня мы с Вами поговорим о работе с базой данных mysql в php. Нам предстоит научиться создавать базу данных, научиться создавать таблицы в ней, так же будем практиковаться в создание новых строк в таблицах, удаление их, и обновление. Ну и само собой научимся делать выборку данных из базы. Пост обещает быть большим, но это не страшно, если Вы читаете эти строки, значит собираетесь постигнуть азы программирование!

Работать я буду с денвером, если у Вас его до сих пор нет, то ставьте быстрее!

Создание базы данных

Ну что ж, для того что бы создать базу данных, необходимо перейти по этой ссылке ( ссылка должна открыться если у Вас стоит денвер, и он запущен ) и ввести произвольное имя новой базы данных вот в эту форму:

Свою базу я назвал «phptest». После нажатие на кнопку «Создать» Вас автоматом должно перекинуть в созданную Вами базу данных.

Создаем таблицу в базе данных

В этой процедуре тоже ничего сложного нет. Давайте создадим таблицу в которой мы будем хранить заголовок наших статей и непосредственно сам текст:

Как Вы могли заметить в количестве полей я поставил цифру 3, почему? Ведь нам нужно создать два поля, под заголовок и текст. Дело в том, что у таблицы в базе данных должно быть одно дополнительное поле. Для чего? Это поле представляет собой поочередный идентификационный номер, ( то есть мы как бы считаем наши строки в таблице ) таким образом мы получаем у каждой строчки таблицы свой неповторимый номер. Это пригодится для поиска нужной нам строки в базе данных. Поле это обычно называют id и выставляют ему AUTO_INCREMENT ( покажу ниже где он выставляется ). AUTO_INCREMENT позволяет присваивать каждой сточки свой неповторимый номер, тем самым Вы в таблице базы данных не встретите запись с одинаковым номером!

Читать еще:  Как в Магазине Windows 10 отключить автовоспроизведение видео

после заполнение имени и количество полей, жмет «ОК» попадаем на страницу создание полей. Признаюсь Вам я не особо понимаю что делаю при создание полей, но мне это не мешает с ними работать Заполним вот так:

  • Первое поле — ID Первое поле я назвал id. Это то самое дополнительное поле. Тип ему выставил INT. Что это за тип такой? Выставляя у поля тип INT вы сможете хранить в этом поле только целые числа. Диапазон чисел который умещается в этот тип давлено большой, поэтому если в поле необходимо хранить числа, то это самый подходящий тип! Длина/значения я поставил 10. Это означает что в поле влезет максимальная цифра из десятизначного числа ( 9999999999 ) Так же я поставил для этого поля AUTO_INCREMENT
  • Второе поле — title Второе поле будет содержать заголовок наших статей. Назвал я это поля — title. Тип выставил — varchar. Этот тип позволяет хранить текстовые данные. Максимальное количество символов которое помещается в поле этого типа равна 255 символам. Думаю для заголовка 255 символов вполне достаточно Длина/значения я выставил максимум, то есть 255 символов
  • Третье поле — text В этом поле мы будем хранить основной текст нашей статьи. Назвал я это поле text. Тип этого поля обычно ставят — text. В этот тип можно поместить 65535 символов, вполне достаточно для статей. Длина/значения выставлять необязательно.

Жмем кнопку сохранить, и вуаля, первая наша таблица создана! Теперь давайте в ручную вставим одну строку в таблицу, для этого щелкните на кнопку «Вставить»

И заполните два нужных нам поля:

Почему только два? Потому что первое поле id будет заполняться автоматически за счет AUTO_INCREMENT. Жмем «ОК». Теперь во вкладке «Обзор» можно увидеть созданную нами строчку в таблице:

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

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

Вывод записей из базы данных

Начнем с этого, так как при создание какого либо проекта необходимо наглядно видеть процесс, а без вывода это очень сложно сделать ( я буду работать с файлом test.php, не удивляйтесь когда увидите ссылки в коде на этот файл ). Как будем выводить? Ну для начала нам необходимо подключиться к базе данных, после циклом do while ( Изучаем PHP — Циклы ) мы вытащим записи из базы данных. Приступим

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

Как осуществляется подключение? Внимание на синтаксис:

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

Сервер, пользователь и пароль был создан по умолчанию ( в данном случае можно сказать, что почти все данные нам предоставляет хостер ). Из своих данных я лишь указал имя базы данных. Кстати, это php код, и поэтому должен находиться в спец скобках ( )

Читать еще:  Виды лицензий Windows

Вывод данных

Нам необходимо вывести данные из таблицы page. Внимание на синтаксис вывода:

Первая строчка позволяет указать какие колонки нам необходимо вытащить, и из какой базы данных.

Вторая строчка помещает все найденное в переменную.

ВНИМАНИЕ есть пару моментов которые я бы хотел пояснить. Давайте решим несколько задач:

  • Нам необходимо вытащить все поля из таблицы.

Как вытащить все поля из таблицы page? вот так:

Вы могли заметить, что я поставил звездочку ( * ) после SELECT. Звездочка означает, что мне необходимо извлечь все поля из таблицы

  • Нам необходимо вытащить только одно поле из таблицы

Как вытащить только поле text из таблицы? вот так:

Для того что бы вытащить не все поля, а только некоторые, необходимо после SELECT через запятую перечислить необходимые поля.

  • Нам необходимо вытащить поля не из все таблицы, а только из одной строчки

Как вытащить все поля из первой строчки? Нам известно что первая строчка имеет id равную единице, воспользуемся этими знаниями:

После SELECT я через запятую пояснил какие поля необходимо извлечь, после добавил новую строчку WHERE ( что означает «где» ) id равен 1. Таким образом я вытаскиваю нужные мне поля из строки где id равен единице

Ну что ж, приступим к созданию вывода наших статей? Выводить будем только заголовки, приступим:

Что мы сделали? Мы вытащили из таблицы два поля, id и title. Далее запустили цикл do while ( Изучаем PHP — Циклы ) и сформировали ссылки, с помощью данных которые вывели из БД. Данные хранятся в переменной $myrow, эта переменная является массивом, ключами к массиву являются имена наших полей в базе данных. Вот что получилось:

Обратите внимание куда ведет эта ссылка. С помощью id мы позже будем обращаться к базе данных непосредственно через GET запрос

Вывод заголовков есть, теперь давайте организуем вывод полных сообщений при щелчке мыши по ссылке с заголовком. Для того что бы это осуществить в одном файле, добавим условия if()<>:

Я добавил два условия. Список с заголовками мы будем видеть только в случае если не существует глобальная переменная
[H1toH2]
GET[‘id’]. Полный же текст мы увидим только если эта переменная существует. При этом из базы данных мы будем выводить лишь одну нужную нам запись. Вот, что мы получили:

Теперь думаю пора научится добавлять новые строки в таблицу.

Добавление данных в БД

Добавление начнем с создание формы, вот кусочек кода который необходимо добавить в конец нашего файла:

Эта форма появиться только в случае если будет существовать глобальная переменная

GET[‘add’], поэтому где-нить в низу необходимо вставить ссылку на добавление новой статьи. Лучше всего это сделать в коде вывода заголовков, так же можно отредактировать условие вывода наших заголовков вот так:

Отредактировал условие таким образом, что бы список заголовков не появлялся при выводе формы, вот что получилось:

Далее необходимо создать обработчик, и научится наконец добавлять новые данные в базу. Вот синтаксис:

Читать еще:  Как сбросить Windows 10

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

Условием является глобальная переменная

POST то есть если мы заполнили форму, нажали на кнопку «Добавить пост» то сработает наше условие. В поле title запишутся данные из глобальной переменной

POST[title_post], а в поле text —

POST[text_post]. Далее сработает строчка header( «location: test.php» ) Она позволяет перенаправить пользователя на другую страницу, в данном случае этой страницей будет test.php. А строчка exit; прерывает выполнение остальных скриптов. Вот что получилось:

Редактирование данных в БД

Для того что бы редактировать определенную запись в нашей БД нам естественно необходимо определить какую именно запись необходимо отредактировать. Я предлагаю выводить кнопку редактирование в коде вывода полного текста, давайте отредактируем его:

Я лишь добавил ссылку на редактирование. Теперь давайте создадим форму где будем редактировать наш пост:

Я добавил этот кусочек кода после формы добавление записей. Эта форма почти аналогична форме добавление постов. Как Вы могли заметить, я переделал атрибуты name, и добавил атрибут value. В этот атрибут я поместил данные которые вывел из базы данных. Так же тут присутствует невидимое поле. Оно нужно для того чтобы переслать идентификатор записи в файл обработчик.

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

Пришло время узнать как редактируются записи в базе данных. Вот синтаксис:

Теперь напишем обработчик. Вот кусочек кода который я добавил сразу после обработчика добавление записей:

По условию видно, что обработчик запустится только в случае если мы нажали на кнопку «редактировать пост». Далее идет обновление базы данных. В поле title мы поместим значение глобальной переменной

POST[title_post_edd] а в поле text —

POST[text_post_edd]. Редактировать будем строку у которой id равен глобальной переменной

POST[id_post_edd]. После мы перенаправляем пользователя обратно к списку заголовков:

Удаление записей из БД

Ну что ж, последнее что осталось нам изучить, это удаление.. Оно проще всех остальных, так что внимание на синтаксис:

Для того чтобы удалять какие то записи, необходимо где-нить выставить ссылку с помощью который пользователь сможет удалить какую то запись. давайте разместим эту ссылку в выводе полного текста поста:

Теперь напишем обработчик:

Добавил его я после кусочка кода отвечающего за редактирование поста. Теперь если зайти в полный текст поста, и жмякнуть по кнопке удаление, то мы удалим пост:

Результат работы

Вот полный код сегодняшнего поста:

Заключение

Довольно сложный получился материал. Но! Вы могли заметить, что я использовал лишь ту информацию которую давал ранее. А это значит, что имея эти знание, можно создавать простейшие проекты на php! Если Вы все это освоили, то можете с гордостью заявить, что вы начинающий программист! Ну что ж, теперь Вы вполне можете приступить к созданию свой первой cms. Если есть какие то вопросы, а они скорее всего есть, задавайте, помогу чем смогу! Удачи Вам, на сегодня у меня все!

[/H1toH2]

Ссылка на основную публикацию
Статьи c упоминанием слов:

Adblock
detector