Обучение C#

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 Установка EasyPHP без видео
86 чел. ★ 4.9 Done
  Мы начинаем создание Интернет-магазина.
Для работы нам потребуется Мастерская веб-программиста.
Самый простой способ - скачать и установить EasyPHP.

Ссылка: www.easyphp.org/
Скачайте и установите Develop with Devserver.

После этого откроется панель управления -
надо будет запустить Web Server и DB Server.

Проверить, что сайт работает: http://127.0.0.1/

Внимание! Для Windows XP/Vista скачивайте предыдущую версию:
en.softonic.com/s/easy-php-5.2/windows-xp
Проверить, что сайт работает: http://127.0.0.1:8888/

Отчёт отправил: 10558. Иван Воронин Выполнено за 5 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: на скриншоте софт, который я когдато позаимствовал для удобства мониторинга и перезагрузки сервера апач на своём первом сервере с виндой, так же есть второй сервер на лине, там свежее php, если этого будет не хватать, перенесу на линь проект, но думаю и его хватит, поэтому EasyPHP комплект не стал качать, так как всё необходимое уже имеется, настроено и работает уже многие годы, идём дальше 
2 Запуск базы данных без видео
77 чел. ★ 4.9 Done
  На этом уроке мы запустим базу данных, откроем консоль, создадим базу данных, зайдём в неё и создадим там таблицу для хранения товаров.

Внимание!
MySQL запросит пароль - нужно просто нажать Enter (пароль пустой).
Если не выйдет подключиться, проверьте, что база данных запущена!

Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: специально для курса поднял отдельную БД, нестандартный порт =) ничего, придётся чуток дописывать параметры коннекта, не критично, идём дальше... 
3 Добавление товаров без видео
76 чел. ★ 4.9 Done
  На этом уроке мы добавим в нашу базу данных три товара.
Для этого нужно написать SQL-запросы INSERT.
Для того, чтобы увидеть добавленные записи -
нужно набрать команду SELECT *.

Если вы открыли консоль базы данных заново -
то перед началом работы необходимо зайти в свою базу данных -
команда USE Volosatov (используйте свою фамилию).

Отчёт отправил: 10558. Иван Воронин Выполнено за 5 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: так как опыт использования MySQL с 2003 года, решил использовать методы добавления записей способом, который считаю наиболее верным, даже если в будущем надо будет добавить колонки или менять какие-то местами, этот запрос будет работать, а значит минимум работы по исправлению ошибок, урок как и курс очень полезный, может быть открою в нём для себя что-то новое =) 
4 phpMyAdmin без видео
72 чел. ★ 4.8 Done
  На этом уроке мы будем добавлять записи в базу данных через интерфейс phpMyAdmin.

Отчёт отправил: 10558. Иван Воронин Выполнено за 3 час. 30 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: найти время 
Комментарии: так как в этом уроке нужен phpMyAdmin, решил скачать последнюю версию в zip-архиве с оф. сайта, распаковал на стареньком сервере, не запустился, не понравилось, что старая версия php, ок, залил по ftp на новый сервер, настроил, подключаюсь, ругается что MySQL старая версия, естественно, она у меня давно не обновлялась и версии 5.1.59, пока для нужд хватало, ну ладно, решил скачать 5.5.51, минимальная версия которая нужна для последней версии phpMyAdmin, поставил, перенёс БД, настроил конфиг по аналогии со старой версией, кое что новое в конфиге пришлось до настроить, так как не хотелось работать с моими, годами отточенными, настройками, поэтому изучил мануалы новой версии, настроил так, как мне надо и новые параметры, после чего удалось залить дамп БД с версии 5.1.59 в версию 5.5.51, после чего авторизовался через phpMyAdmin и добавил 10 записей, конечно можно было быстро это сделать через Navicat, но зачем нам лёгкие пути? phpMyAdmin - это бесплатная панель управления БД которая есть на каждом хостинге, поэтому обязательная вещь для изучения, я хоть её и знаю, но решил поставить, чтобы поглядеть, что нового в последних версиях, а то на хостингах обычно старьё. з.ы. кстати, заметил, в этом уроке на скриншоте поля price и info поменяны местами, хотя задачи таковой небыло пока что, к чему бы это =) 
5 SELECT запросы без видео
67 чел. ★ 4.9 Done
  На этом уроке мы выполним несколько интересных запросов к нашей базе данных.
Отчёт отправил: 10558. Иван Воронин Выполнено за 15 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: Общая сумма всего товара SELECT SUM(`price`) FROM `ware`; 
6 Запуск РНР без видео
66 чел. ★ 4.8 Done
  На этом уроке мы запустим первый скрипт на РНР.
Предполагается, что у вас уже установлен и запущен EasyPHP.
На рисунке показана схема действия для PHP Devserver 16.

Если у вас версия PHP 5.3.5, то нужно РНР файл создать в папке
C:\Program files\EasyPHP-5.3.5.0\www
В браузере необходимо открыть страницу:
http://localhost:8888/

Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: залил на свой старенький сервачёк, пока что и версии php 5.1 хватает, если не будет хватать, перенесу на новый и продолжу там реализацию =) 
7 Всё готово для работы без видео
66 чел. ★ 4.8 Done
  На этом уроке мы убедимся, что у нас всё готово для работы.
1. Установлен EasyPHP
2. Открыта WWW папка.
3, Открыта РНР страница в браузере.
4. Запущена консоль базы данных.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: ничего нового 
Сложности: ничего 
Комментарии: предвкушаю продолжение интерсного курса =) 
8 Подружить PHP с MySQL без видео
61 чел. ★ 4.9 Done
  На этом уроке мы подружим РНР с базой данных.
Для этого используется несколько комманд, как на картинке.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: хорошая последовательность уроков, отличная проверка на стальные нервы =) 
9 Товары в таблице без видео
60 чел. ★ 4.9 Done
  На этом уроке мы выведем все товары на экран браузера через РНР.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: Всё отлично, идём дальше =) 
10 Картинки для товаров без видео
62 чел. ★ 4.8 Done
  На этом уроке мы подберём картинки для каждого товара.
1. Создать папку images в директории с РНР файлами.
2. Вывести на экран все записи.
3. Для каждого товара найти картинку.
4. Сохранить картинку под тем же именем, что и в базе данных.
Размеры всех картинок должны быть примерно одинаковыми.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: Картинки подобрал, видимо в след уроках будем их приводить к единому размеру =) 
11 Таблица с Картинками без видео
58 чел. ★ 4.8 Done
  На этом уроке мы добавим в нашу таблицу отображение картинок.

Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: Коротко и ясно =) то что надо для урока фото-курса, ясная мысль и ничего лишнего з.ы. обработал в фотошопе все картинки, а то уж очень руки чесались, так как ширину сделали 100, то картинки сделал 200х200 из-за того, что при ресайзе они чётче смотрятся, не такие замыленные, если бы делал 100х100 качество в браузере было бы хуже, проверено временем =) з.з.ы. как видно их скриншота, занимаемое место картинка уменьшилось почти в 300 раз, это очень важно для сайта, быстрее будут грузиться на стороне клиента и трафика меньше на сервере расходуется в пустую, если сделать картинки 100х100 то можно ещё в 2+ раза уменьшить картинки, но это уже не критично 
12 Форма Товара без видео
52 чел. ★ 4.9 Done
  На этом уроке мы начнём создавать админку,
в которой можно будет редактировать и добавлять товары.
Начнём с создания HTML-формы для добавления записей в базу.
Отчёт отправил: 10558. Иван Воронин Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: С виду вроде простой урок, но когда увидел задание со звёздочкой, понял, что времени займёт побольше домашнее задание =) 
13 INSERT из РНР без видео
51 чел. ★ 4.9 Done
  На этом уроке мы добавим в edit.php
запрос для добавления товара в базу данных.
Отчёт отправил: 10558. Иван Воронин Выполнено за 50 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: перенёс подключение к БД в отдельный файл dbase.php, а то что это он у нас бесхозно валяется =) так же добавил проверки коннекта к БД/Серверу, если они успешны настраиваются параметры языка и кодировки (люблю я utf8) в прошлых уроках держался, в этом уже не выдержал, хотелось добавить товары на Русском языке =) 
14 SELECT из РНР без видео
47 чел. ★ 5 Done
  На этом уроке мы сделаем считывание товара из базы данных по ID номеру,
который передаётся в скрипт через адресную строчку методом GET.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: перенёс pre между тегами body из-за того, что плыл дизайн итоговой странички =) з.ы. теги title и link переносились body, теперь всё ок 
15 Товар на форме без видео
47 чел. ★ 4.9 Done
  На этом уроке мы удалим строчки с "print_r" и "die",
чтобы скрипт продолжил работу и вывел форму.
Внутри формы в качестве "value" значений мы
подставим полученные из базы данных значения.

Отчёт отправил: 10558. Иван Воронин Выполнено за 5 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: пункты 2, 3 и 4 ещё на пролом уроке сделал, поэтому просто выполнил пункт 1, добавил картинку цветных шариков и обновил в БД данные по имени файла и скриншот =) 
16 UPDATE товара без видео
46 чел. ★ 4.9 Done
  На этом уроке мы будем использовать запрос
UPDATE для изменения данных в таблице.
Сначала посмотрим, что было в базе,
потом внесём изменения, и посмотрим, что стало.
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: выполнил задания со звёздочками, см. скриншот 
17 Сохранение изменений без видео
43 чел. ★ 5 Done
  На этом уроке мы доработаем скрипт edit.php
При нажатии на кнопку SAVE происходит отправка данных формы методом POST.
При этом в адресной строке остаётся GET параметр "id".
Значит, если указан GET ["id"], то логика следующая.
При наличии POST-данных мы выполняем UPDATE запрос.
Если POST-данных нет - мы выполняем SELECT-запрос, как и раньше.
Отчёт отправил: 10558. Иван Воронин Выполнено за 30 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: Если установлен GET, то SELECT запрос произвожу в любом случае. Если нет POST запроса, то используется для отображения текущего товара в форме, если же POST запрос был, то проверяется есть ли товар с таким айди в БД или нет, если есть, то данные о товаре обновляют, если нет, то добавляется новая запись. з.ы. см. скриншот. 
18 Значения по умолчанию без видео
43 чел. ★ 4.9 Done
  Итак, наша форма работает в двух режимах:
1. Отображение данных для редактирования (когда указан параметр id).
2. Пустая форма для добавления нового товара (когда параметр не указан).
Впрочем, если открыть в браузере edit.php без параметров - можно увидеть Notice сообщения.
Это связано с настройками РНР, чтобы это исправить, нужно задать значения по умолчанию.
Для этого мы добавим блок "else" к условию "if isset get id" (то есть когда id не передан),
и в нём установим значения по умолчанию для новой записи.
Отчёт отправил: 10558. Иван Воронин Выполнено за 20 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: по-умолчанию используемые переменные сделал пустыми, а в поля формы добавил placeholder, он отображается если ничего не ввели, как только ввели данные, его не видно, эдакая подсказка, какое поле для чего, так же если картинки нет, даже у существующего товара, то не будет отображаться квадратик "не найденной картинки" =) 
19 Нет картинки без видео
43 чел. ★ 4.9 Done
  Что делают интернет-магазины, когда у них нет фотографии товара?
Размещают заглушку "нет фото", что мы сейчас и сделеаем.
Найдите в интернете картинку "нет фото" и сохраните её
в папку images под именем nophoto.jpg.
Далее, пропишем это название картинки в данных по умолчанию.
Таким образом мы исправишил ошибку отсутствия фотографии!
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: полезная фишка, с прошлого урока вернул обратно HTML код картинки, в переменной теперь хранится имя файла, идём дальше 
20 Редирект на список без видео
43 чел. ★ 4.9 Done
  После добавления/редактирования товара
принято делать переадресацию на список товаров.
Это можно сделать разными способами,
с использованием РНР или JavaScript.
На этом уроке мы применим оба способа.
Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 45 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: добавил функцию редиректа (в ней 3 вида редиректов, использован редирект со временем в 2 секунды, чтобы было видно сообщение о добавлении/обновлении записи в БД или ошибке, малоли) добавил несколько стилей для отображения "Списка товаров" (+ наследование осталось) добавил чередование фона товаров в списке добавил кнопочки "Изменить" которые ведут на редактирование товара, напротив которого её нажали добавлена кнопка "Добавить" вверху-справа, чтобы открылась пустая форма для добавления нового товара перенёс файл dbase.php в папку "include" и туда же добавил функцию редиректа в файле functions.php 
21 Интерактивный список без видео
41 чел. ★ 5 Done
  На этом уроке мы сделаем вызов страницы редактирования из страницы со списком товаров.
Для этого мы вначале страницы разместим ссылку «Добавить новый товар»,
а на номер товара сделаем ссылку на открытие окна редактирования товара.
Отчёт отправил: 10558. Иван Воронин Выполнено за 30 мин. [Показать отчёт]
Научился: ничему новому 
Сложности: ничего 
Комментарии: 1 и 2 пункты сделал на прошлом уроке, как домашнее задание. добавил кнопку и функционал для удаления товара с возможностью отменить удаление в течении 15 минут =) идём дальше... 
22 Отправка файла без видео
39 чел. ★ 4.9 Done
  На этом уроке мы начнём отправлять файл через форму.
Для этого вам нужно сделать следующее (см. список ниже).
* Попробуйте отправить слишком большой файл (больше 10 мегабайт).
* Коды ошибок: http://php.net/manual/en/features.file-upload.errors.php

Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: повторение старого 
Сложности: найти время 
Комментарии: я уже чуть не написал систему обработки загружаемых картинок, но потом хорошо подумал и понял, что тут надо показать дамп массива _FILES, всё супер, идём дальше 
23 Сохранение файла без видео
37 чел. ★ 4.9 Done
  На этом уроке мы сохраним полученный файл в папку "images".

Отчёт отправил: 10558. Иван Воронин Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: повторение старого 
Сложности: найти время 
Комментарии: добавил папку fonts с файлом шрифта внутри для использования при наложении водяного знака поверх заливаемых фото добавил функции обработки/проверки добавляемых фото с наложением водяных знаков (создал её много лет назад, пришлось немного модернизировать под текущие нужды) множество проверок при добавлении фото (если всё ок, будет положительный лог на экране, спустя 2 сек редирект к списку) добавил иконки для логов ошибок (зелёная галочка или красный кирпичик соответственно) 
24 Запись имени файла в базу без видео
30 чел. ★ 4.9 Done
  На этом уроке мы запишем имя файла фотографии в базу данных.
Это нужно сделать в двух местах - при обновлении (UPDATE) и добавлении.(INSERT).
Добавляемый текст выделен серым фоном.
Отчёт отправил: 10558. Иван Воронин Выполнено за 30 мин. [Показать отчёт]
Научился: повторение старого 
Сложности: ничего 
Комментарии: так как ранее была реализована система удаления на сонове задержки в 15 минут, в базе остаются помеченные как удалённый записи, теперь при добавлении товара вначале используются помеченные записи и обновляются данные, если же их нет, тогда добавляется новая запись в БД на скриншоте пошагово показано: 1 - добавили товар, но не прикрепили фото (сообщение) 2 - показано, что товар добавлен, но фото нет 3 - окно редактирования товара, прикреплено фото 4 - сообщения о процессе привязки фото и обновлению товара в БД 5 - в списке товаров уже видно фото у товара з.ы. если фото не прикрепили, то остаётся старое фото (если оно было) провёл косметику дизайна и кода 
25 ФИНАЛЬНЫЙ УРОК без видео
27 чел. ★ 4.9 Done
  На этом наш экспериментальный фотокурс завершается.
Мы создали админку товаров для интернет-магазина.
Целью курса было практическое знакомство с HTML, РНР и MySQL.

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

Какой курс ты будешь проходить следующим?
Отчёт отправил: 10558. Иван Воронин Выполнено за 10 мин. [Показать отчёт]
Научился: повторил старое 
Сложности: ничего 
Комментарии: Повторил php + NySQL, курс оказался очень коротким, нужно добавить ещё уроков 75 =) чтобы получился полноценный мини магазинчик, в целом курсом доволен, даёт важные знания как начать создавать онлайн проекты с нуля, но продолжение сезона напрашивается само собой =) 
  Итого:   25 видеоуроков 00 мин.
27 чел. ★ 4.9  
  Финалисты:   Varkus Maksim,   Иван,   nik,   Šatravka Vladislav,   Tautavičiūtė Anastasija,   Ender,   Tekashnik,   Владимир,   Alcatraz,   Špakova Anastasija,   Максим,   Voskoboinikova Ana ,   Юрий,   Сергей Соколов,   Иван Воронин,   Новопашин Владимир,   Сергей Сергеевич,   Rita,   zhikharevav,   Алексей В.,   Dmitry Sinitsin,   vip,   Слава,   Yefim,   Yaroslav,   Andrew,   Tom .

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Интернет-магазин - замечательных курс. На нем я понял как происходит взаимодействие с PHP кода с базой данных MySQL. Каждый из уроков не занимает много времени, а способ изложения урока и не требует высокой скорости соединения с интернетом. После прохождения получается интернет страничка, которую при желании, и доработке можно довести до полноценного интернет магазина. Следующим куром будет "теория ООП".



Понравился формат уроков, это еще одно подтверждение пословицы "Одна картинка стоит тысячи слов". Этот очень доступный миникурс, в котором создается полностью функциональная админка для заполнения базы данных интернет-магазина я бы порекомендовал каждому, кто желает создавать свой бизнес в Интернет. Большое спасибо, за курс!