В статье рассказывается как создать приложение сложения двух чисел на HTML + PHP.
Приготовления
Нам потребуется так или иначе сервер, на котором просчитываются PHP скрипты. Можно установить локальный сервер (например, тут описано, как я делаю у себя, но это лишь одна из миллиона инструкций в интернете) через установку связки Apache + PHP + MySQL + phpMyAdmin, можно воспользоваться уже готовыми сборками (Denver, Open Server, WampServer и другие). Можно использовать сервер на каком-нибудь виртуальном хостинге и так далее. В общем, вариантов много.
Далее предполагается, что у вас есть такой сервер, вы умеете запускать в браузере PHP скрипты.
Создание болванки
Создаем текстовой документ под именем index.php .
Закинем в него простую болванку HTML5 документа:
lang=»ru»> charset=»utf-8″ /> name=»viewport» content=»width=device-width, initial-scale=1, shrink-to-fit=no» /> Программа сложения двух чисел
Если мы сохраним документ и откроем в браузере, то увидим пустое белое окно, так как ничего видимого в документе пока нет — это просто болванка с шапкой, где располагаются некоторые мета-тэги (по сути, их тоже можно было выкинуть), и пустое тело.
Изучение PHP PDO (базы данных) за час! Создание приложения «Список дел»
Если же вы открыли в браузере и увидели тот, текст, который написан выше, то, значит, вы неправильно открываете в браузере PHP скрипт.
Наполнение HTML
Так как нам нужно приложение, которое будет складывать два числа, то нужно два поля ввода текстовой информации. Следовательно, их нужно будет размещать в некоторой форме. Поэтому в теле HTML документа разместим такую форму:
action=»index.php»> name=»a» type=»text» value=»1″ /> /> name=»b» type=»text» value=»1″ /> />
Каждое поле имеет своё имя name с названием переменной a и b . Также они имеют начальное наполнение.
Нам нужна кнопка для вычислений:
type=»submit» value=»Сложить два числа» /> />
При клике на кнопку будет вызываться тот скрипт, который у нас прописан в форме в свойстве action .
Общий документ будет иметь вид:
lang=»ru»> charset=»utf-8″ /> name=»viewport» content=»width=device-width, initial-scale=1, shrink-to-fit=no» /> Программа сложения двух чисел action=»index.php»> name=»a» type=»text» value=»1″ /> /> name=»b» type=»text» value=»1″ /> /> type=»submit» value=»Сложить два числа» /> />
Если мы сохраним документ и его откроем, то получим следующее:
PHP код
Теперь поговорим о том, какая логика вычислений будет в нашем приложении. Когда мы нажимаем на кнопку, то браузер собирает информацию из формы, и отправляет ее на сервер, говоря, какой скрипт должен обработать данную информацию.
Создание PHP веб сайта за 1 час! + Выгрузка на сервер
Первая программа на PHP
Это первый урок из цикла статей по web программированию. В этих уроках мы познакомимся с основами программирования, научимся писать скрипты и создавать сайты.
Но перед началом изучения php, Вам необходимо ознакомится с языком разметки страниц HTML и таблицами стилей CSS.
Установка веб-сервера
Для работы с PHP на понадобится установить веб сервер и PHP на локальный компьютер. Так как процесс установки Apache, MySQL, PHP достаточно трудоемкий и занимает немало времени.По этому для начинающего программиста лучшим решением будет установка программы Denwer, которая включает в себя все эти серверы которые уже настроены и готовы для работы.
Скачать Denwer можно c официального сайта. После установки Денвера у вас появится новый локальный диск, как правило это диск Z.
В каталоге Z:homelocalhostwww — мы будем хранить скриты которые будем разрабатывать. Эта директория еще называется «домашняя директория» или «root директория».
С настройкой сервера все.
Программа-редактор
Перед ниписанием первого скрипта на php нам нужно его в чем то писать, программе-редакторе с подсветкой синтаксиса и авто-дополнением кода. Программ-редакторов для программирования на php очень много, но я бы порекомендовал Notepadd++. Она очень простая в использовании, но в тоже время многофункциональная.
Первая программа на php
Итак, сервер у нас установлен и настроен, программа-редактор также есть. Можно приступать к написанию своего первого скрипта.
Заходим в папку Z:homelocalhostwww, и создаем там файл index.php, и в нем пишем код:
Источник: www.frameworks.su
H Делаем консольное php приложение в черновиках Recovery Mode Tutorial
Недавно на одном из форумов наткнулся на запись о том, что php — это язык для веб-разработки. Да, большинство сайтов (включая даже википедию) написаны именно на php, но этот язык можно использовать не только для веба.
Статья рассчитана на новичков php, на людей которые не знают, как писать консольные программы, поэтому, если вы гуру-программист, можете листать дальше. Под катом рассматривается пример простой консольной программы на php.
Что бы в unix системах в командной строке выполнить php скрипт, его нужно запустить следующей командой
php app.php [param] [param]
С помощью параметров можно передавать нашему скрипту какие либо данные. Они будут хранится в массиве
$argv
Нулевой элемент этого массива — название php файла.
В качестве примера консольной php программы мы рассмотрим хранилище контактов, которое будет выдавать нам следующую информацию:
Данные будут хранится в MySQL базе данных. Создадим таблицу
CREATE TABLE `contacts` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` text, `email` text, `tel` text, `comment` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
Для работы с базой данных мы будем использовать класс SafeMySQL (GitHub)
Подключаем класс базы данных и описываем класс настроек
include «safemysql.class.php»; // Настройка программы class set < public $bdset = array( ‘host’ =>’localhost’, // Хост сервера базы данных ‘user’ => ‘root’, // Логин для доступа к БД ‘pass’ => ‘root’,// Пароль для доступа к БД ‘db’ => ‘cont’, // Название базы данных ); public $q = «hello»; >
Не забываем поменять данные на свои.
В зависимости от параметра будем выполнять разные функции
system(«clear»); //Очищаем экран перед выводом // Шапка программы (там написано contacts) echo » _ _n»; echo » ___ ___ ___| |_ ___ ___| |_ ___n»; echo «| _| . | | _| .’| _| _|_ -|n»; echo «|___|___|_|_|_| |__,|___|_| |___|n»; echo «Надёжное хранение ваших контактовn»; // Выполнение действия, в зависимости от параметра switch ($argv[1]) < case ‘view’: $do = new action(); $do->view(); break; case ‘edit’: if (isset($argv[2])) < $do = new action(); $do ->edit($argv[2]); > echo «Ошибка параметра, воспользуйтесь справкой n»; break; case ‘add’: $do = new action(); $do ->add(); break; case ‘delete’: if (isset($argv[2])) < $do = new action(); $do ->delete($argv[2]); > echo «Ошибка параметра, воспользуйтесь справкой n»; break; case ‘help’: $do = new action(); $do ->help(); break; default: // Если параметр нам не подходит, или его нет, говорим об ошибке echo «Ошибка параметра, воспользуйтесь справкой n»; break; > echo «n»; // Делаем ещё один перевод строки, что бы отделить вывод программы
Осталось описать класс action и все его функции.
Функция просмотра
public function view()< // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); $data = $db->getAll(«SELECT * FROM contacts»); foreach ($data as $key) < echo «==============================================n»; echo «Идентификатор: «.$key[«id»].»n»; echo «ФИО: «.$key[«name»].»n»; echo «Телефон: «.$key[«tel»].»n»; echo «Email: «.$key[«email»].»n»; echo «Комментарий: «.$key[«comment»].»n»; echo «==============================================n»; >>
Функция добавления
public function add() < // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); // Задаём вопросы и записываем данные в переменные echo «Введите имя контакта: n»; $addname = readline(); echo «Введите телефон контакта: n»; $addtel = readline(); echo «Введите email контакта: n»; $addemail = readline(); echo «Введите комментарий к контакту: n»; $addcomment = readline(); // Добавляем в базу $db->query(«INSERT INTO contacts (name, tel, email, comment) VALUES (?s, ?s, ?s, ?s)», $addname, $addtel, $addemail, $addcomment); echo «Запись добавлена n»; // Показываем список всех контактов $do = new action(); $do->view(); >
Функция редактирования
public function edit($id) < // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); // Задаём вопросы и записываем данные в переменные echo «Введите имя контакта: n»; $editname = readline(); echo «Введите телефон контакта: n»; $edittel = readline(); echo «Введите email контакта: n»; $editemail = readline(); echo «Введите комментарий к контакту: n»; $editcomment = readline(); // Обновляем запись $db->query(«UPDATE contacts SET name = ?s, tel = ?s, email = ?s, comment = ?s WHERE $editname, $edittel, $editemail, $editcomment, $id); echo «Запись обновлена n»; // Показываем список всех контактов $do = new action(); $do->view(); >
Функция удаления
public function delete($id)< echo «Вы действительно хотите удалить контакт #».$id.»? (y/n) n»; $del = readline(); if ($del == «y») < // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); // Удаляем контакт из базы $db->query(«DELETE FROM contacts WHERE $id); echo «Запись удалена n»; // Показываем список всех контактов $do = new action(); $do->view(); > else echo «Ну нет, так нет. n»; >
Функция показа справки
public function help()
Я старался написать понятный даже новичку код, комментировал почти каждую строчку и использовал ООП.
Программа не претендует на звание правильной и эффективной, но если кому понадобится — вот
Код полного файла
‘localhost’, // Хост сервера базы данных ‘user’ => ‘root’, // Логин для доступа к БД ‘pass’ => ‘root’,// Пароль для доступа к БД ‘db’ => ‘cont’, // Название базы данных ); public $q = «hello»; > // Класс обработки действий class action < // Функция показа контакта (контактов) public function view()< // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); $data = $db->getAll(«SELECT * FROM contacts»); foreach ($data as $key) < echo «==============================================n»; echo «Идентификатор: «.$key[«id»].»n»; echo «ФИО: «.$key[«name»].»n»; echo «Телефон: «.$key[«tel»].»n»; echo «Email: «.$key[«email»].»n»; echo «Комментарий: «.$key[«comment»].»n»; echo «==============================================n»; >> // Функция добавления контакта public function add() < // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); // Задаём вопросы и записываем данные в переменные echo «Введите имя контакта: n»; $addname = readline(); echo «Введите телефон контакта: n»; $addtel = readline(); echo «Введите email контакта: n»; $addemail = readline(); echo «Введите комментарий к контакту: n»; $addcomment = readline(); // Добавляем в базу $db->query(«INSERT INTO contacts (name, tel, email, comment) VALUES (?s, ?s, ?s, ?s)», $addname, $addtel, $addemail, $addcomment); echo «Запись добавлена n»; // Показываем список всех контактов $do = new action(); $do->view(); > // Функция удаления контакта public function delete($id)< echo «Вы действительно хотите удалить контакт #».$id.»? (y/n) n»; $del = readline(); if ($del == «y») < // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); // Удаляем контакт из базы $db->query(«DELETE FROM contacts WHERE $id); echo «Запись удалена n»; // Показываем список всех контактов $do = new action(); $do->view(); > else echo «Ну нет, так нет. n»; > // Функция редактирования контакта public function edit($id) < // Создаём объект класса настроек $sets = new set(); // Создаём объект класса базы данных и указываем ему параметры $db = new SafeMySQL($sets->bdset); // Задаём вопросы и записываем данные в переменные echo «Введите имя контакта: n»; $editname = readline(); echo «Введите телефон контакта: n»; $edittel = readline(); echo «Введите email контакта: n»; $editemail = readline(); echo «Введите комментарий к контакту: n»; $editcomment = readline(); // Обновляем запись $db->query(«UPDATE contacts SET name = ?s, tel = ?s, email = ?s, comment = ?s WHERE $editname, $edittel, $editemail, $editcomment, $id); echo «Запись обновлена n»; // Показываем список всех контактов $do = new action(); $do->view(); > // Функция показа справки public function help() < echo «==============================================n»; echo «Справка по программеn»; echo «==============================================n»; echo «php contacts.php view — вывод всех контактовn»; echo «php contacts.php view 3 — вывод контакта с определённым идентификаторомn»; echo «php contacts.php add — добавление контактаn»; echo «php contacts.php delete 3 — удаление контакта с определённым идентификаторомn»; echo «php contacts.php help — показать эту подсказкуn»; >> system(«clear»); //Очищаем экран перед выводом // Шапка программы (там написано contacts) echo » _ _n»; echo » ___ ___ ___| |_ ___ ___| |_ ___n»; echo «| _| . | | _| .’| _| _|_ -|n»; echo «|___|___|_|_|_| |__,|___|_| |___|n»; echo «Надёжное хранение ваших контактовn»; // Выполнение действия, в зависимости от параметра switch ($argv[1]) < case ‘view’: $do = new action(); $do->view(); break; case ‘edit’: if (isset($argv[2])) < $do = new action(); $do ->edit($argv[2]); > echo «Ошибка параметра, воспользуйтесь справкой n»; break; case ‘add’: $do = new action(); $do ->add(); break; case ‘delete’: if (isset($argv[2])) < $do = new action(); $do ->delete($argv[2]); > echo «Ошибка параметра, воспользуйтесь справкой n»; break; case ‘help’: $do = new action(); $do ->help(); break; default: // Если параметр нам не подходит, или его нет, говорим об ошибке echo «Ошибка параметра, воспользуйтесь справкой n»; break; > echo «n»;
Источник: sohabr.net