СУБД/лекция 3 семестр 2 — различия между версиями
Vidokq (обсуждение | вклад) (→Подкючение к БД) |
Vidokq (обсуждение | вклад) (→Классы построения графиков) |
||
Строка 150: | Строка 150: | ||
* Скачиваем класс | * Скачиваем класс | ||
[http://sourceforge.net/projects/pchart/files/pchart/pChart%201.27%20-%20beta/pChart.1.27d.rar/download pChart] | [http://sourceforge.net/projects/pchart/files/pchart/pChart%201.27%20-%20beta/pChart.1.27d.rar/download pChart] | ||
+ | |||
+ | Очень часто при создании каких-нибудь сервисов приходится рисовать различные графики. Например, если Вы делаете рекламную сеть, то можно построить зависимости количества переходов по рекламным материалам по дням. Если это какой-нибудь Интернет-магазин, то можно строить графики доходов магазина. Как рисовать графики в PHP, я разберу ниже. | ||
+ | |||
+ | Во-первых, можно всё делать самостоятельно, написав свою библиотеку. Здесь надо учитывать, что координаты в PHP идут на увеличение вправо и вниз, тогда как в математике они идут вправо и вверх. В остальном, ничего особо сложного. | ||
+ | |||
+ | Однако, если писать особо не хочется, то есть просто замечательнейшая библиотека, позволяющая строить самые разнообразные графики, диаграммы, гистограммы и прочее. Целая куча различных возможностей (подписывание осей, рисование нескольких графиков на одной оси, рисование порогов, отображение легенды и прочего) делают данную библиотеку по-настоящему универсальной. | ||
+ | |||
+ | Библиотека называется '''pChart''': ознакомиться с документацией и скачать pChart. | ||
+ | |||
+ | Предлагаю Вашему вниманию пример: | ||
+ | <source lang="php"><?php | ||
+ | /* Подключаем классы */ | ||
+ | require_once "pChart/pData.class"; | ||
+ | require_once "pChart/pChart.class"; | ||
+ | $DataSet = new pData(); // Создаём объект pData | ||
+ | $DataSet->AddPoint(array(0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100), "Serie1"); // Загружаем данные графика 1 | ||
+ | $DataSet->AddPoint(array(0, 1, 8, 27, 64, 125, 216, 343, 512, 729, 1000), "Serie2"); // Загружаем данные графика 2 | ||
+ | $DataSet->AddAllSeries(); // Добавить все данные для построения | ||
+ | $Test = new pChart(700, 230); // Рисуем графическую плоскость | ||
+ | $Test->setFontProperties("Fonts/tahoma.ttf", 8); // Установка шрифта | ||
+ | $Test->setGraphArea(50, 30, 585, 200); // Установка области графика | ||
+ | $Test->drawFilledRoundedRectangle(7, 7, 693, 223, 5, 240, 240, 240); // Выделяем плоскость прямоугольником | ||
+ | $Test->drawRoundedRectangle(5, 5, 695, 225, 5, 230, 230, 230); // Делаем контур графической плоскости | ||
+ | $Test->drawGraphArea(255, 255, 255, true); // Рисуем графическую плоскость | ||
+ | $Test->drawScale($DataSet->GetData(), $DataSet->GetDataDescription(), SCALE_NORMAL, 150, 150, 150, true, 0, 2); // Рисуем оси и график | ||
+ | $Test->drawGrid(4, true, 230, 230, 230, 50); // Рисуем сетку | ||
+ | $Test->drawLineGraph($DataSet->GetData(),$DataSet->GetDataDescription()); // Соединяем точки графика линиями | ||
+ | $Test->drawPlotGraph($DataSet->GetData(),$DataSet->GetDataDescription(), 3, 2, 255, 255, 255); // Рисуем точки | ||
+ | $Test->drawTitle(50, 22, "MyRusakov.ru", 50, 50, 50, 585); // Выводим заголовок графика | ||
+ | $Test->Stroke(); // Выводим график в окно браузера; | ||
+ | ?></source> | ||
+ | |||
+ | В данном примере мы строим параболу и кубическую параболу, а затем выводим этот график в браузер. Также можно сохранять график в файл, для этого вместо Stroke() надо использовать метод Render("filename.png"). | ||
+ | |||
+ | Возможностей у библиотеки масса, я лишь показал самые-самые базовые. Поэтому если Вам нужно построение графиков на сайте через PHP, то обязательно ознакомьтесь с документацией pChart. |
Версия 23:23, 29 апреля 2014
Содержание |
Литература
Подкючение к БД
<?php $db = "alldb"; $user = "student"; $pass = "studentpass"; $server = "93.125.42.8"; $link = mysql_connect($server, $user, $pass); // Функция подключения к базе данных в переменной link храниться результат подключения if(!$link) die("cann't connect Mysql"); // Проверка успешности подключения else echo "Connect to ".$db." successfull"; mysql_select_db($db) or die("cann't connect Mysql".mysql_error()); //.......... // Выполнение запросов и работа программы //.......... mysql_close($link); ?>
- Задете имя базы
- Имя пользователя
- Пароль
- IP Сервера
- mysql_connect подключение к базе и создание сессии подключения
- Обязательно проверям статус выполения
- mysql_select_db выбор базы данных для работы (аналог use имя_базы)
- mysql_close($link); закрываем соединение (обязательно делать потому как число соединение обычно граничено для серверов)
Выполение запросов
1) Вставка записей в базу данных
$query="INSERT INTO `таблицу` (`указываем поле`,`указываем поле`) VALUES ('любое значение','любое значение')"; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
То есть вставка производится функцией INSERT. Если все прошло успешно, то mysql вернет результат true, или иначе — false.
Полей можно указывать хоть сколько, главное чтобы все они существовали в БД. То есть, к примеру существует таблица в которой есть поля «name» , «surname» и «city».
$query="INSERT INTO `users` (`name`,`surname`,`city`) VALUES ('Ruslan','Huzin','Kokshetau')"; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
2) Удаление записей из базы данных
$query="DELETE FROM `users` WHERE `name`='Ruslan' "; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
3) Изменение значений в базе данных
Также мы можем вносить изменения в уже существующие записи в таблице. К примеру нам надо заменить значение столбца name в строке, где столбец surname имеет значение Huzin.
$query="UPDATE `users` SET `name`='myname' WHERE `surname`='Huzin' "; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
4) Получение значений из базы данных
Теперь самое интересное) Раз мы записали что-то, то ведь должны и получить обратно?)))
К примеру нам нужно достать из таблицы users всю строку где столбец name равен Ruslan.
Для этого нам потребуется чуть другой код, нежели в первых примерах.
$query="SELECT * FROM WHERE `name`='Ruslan' "; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); } $data=mysql_fetch_array($result); /* Теперь в переменной хранятся данные из таблицы */
Тут нам потребовалась еще одна функция, для записи выбранных данных в переменную (массив) на php.
Для того что обратиться к выбранной строке, мы пишем так:
$data['имя столбца']
то есть, чтобы достать фамилию из выбранной строки (где имя было Ruslan), мы на вывод должны написать:
echo $data['surname'];
А при выборке из таблицы, писали SELECT *, эта звездочка означает что нужно выбрать все столбцы из строки.
Если нам надо, к примеру, выбрать только surname, пишем SELECT `surname`.
А для выборки сразу нескольких строк из таблицы, потребуется еще и цикл для их вывода. Это в том случае, если к примеру, строк со столбцом Ruslan будет несколько.
$query="SELECT * FROM WHERE `name`='Ruslan' "; $result=mysql_query($query); while($data=mysql_fetch_array($result)) { echo $data['name']."<br>".$data['surname']."<hr>"; }
Теперь на экран выведутся все строки у которых столбец name равен значению Ruslan.
Классы построения графиков
- Скачиваем класс
Очень часто при создании каких-нибудь сервисов приходится рисовать различные графики. Например, если Вы делаете рекламную сеть, то можно построить зависимости количества переходов по рекламным материалам по дням. Если это какой-нибудь Интернет-магазин, то можно строить графики доходов магазина. Как рисовать графики в PHP, я разберу ниже.
Во-первых, можно всё делать самостоятельно, написав свою библиотеку. Здесь надо учитывать, что координаты в PHP идут на увеличение вправо и вниз, тогда как в математике они идут вправо и вверх. В остальном, ничего особо сложного.
Однако, если писать особо не хочется, то есть просто замечательнейшая библиотека, позволяющая строить самые разнообразные графики, диаграммы, гистограммы и прочее. Целая куча различных возможностей (подписывание осей, рисование нескольких графиков на одной оси, рисование порогов, отображение легенды и прочего) делают данную библиотеку по-настоящему универсальной.
Библиотека называется pChart: ознакомиться с документацией и скачать pChart.
<?php /* Подключаем классы */ require_once "pChart/pData.class"; require_once "pChart/pChart.class"; $DataSet = new pData(); // Создаём объект pData $DataSet->AddPoint(array(0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100), "Serie1"); // Загружаем данные графика 1 $DataSet->AddPoint(array(0, 1, 8, 27, 64, 125, 216, 343, 512, 729, 1000), "Serie2"); // Загружаем данные графика 2 $DataSet->AddAllSeries(); // Добавить все данные для построения $Test = new pChart(700, 230); // Рисуем графическую плоскость $Test->setFontProperties("Fonts/tahoma.ttf", 8); // Установка шрифта $Test->setGraphArea(50, 30, 585, 200); // Установка области графика $Test->drawFilledRoundedRectangle(7, 7, 693, 223, 5, 240, 240, 240); // Выделяем плоскость прямоугольником $Test->drawRoundedRectangle(5, 5, 695, 225, 5, 230, 230, 230); // Делаем контур графической плоскости $Test->drawGraphArea(255, 255, 255, true); // Рисуем графическую плоскость $Test->drawScale($DataSet->GetData(), $DataSet->GetDataDescription(), SCALE_NORMAL, 150, 150, 150, true, 0, 2); // Рисуем оси и график $Test->drawGrid(4, true, 230, 230, 230, 50); // Рисуем сетку $Test->drawLineGraph($DataSet->GetData(),$DataSet->GetDataDescription()); // Соединяем точки графика линиями $Test->drawPlotGraph($DataSet->GetData(),$DataSet->GetDataDescription(), 3, 2, 255, 255, 255); // Рисуем точки $Test->drawTitle(50, 22, "MyRusakov.ru", 50, 50, 50, 585); // Выводим заголовок графика $Test->Stroke(); // Выводим график в окно браузера; ?>
В данном примере мы строим параболу и кубическую параболу, а затем выводим этот график в браузер. Также можно сохранять график в файл, для этого вместо Stroke() надо использовать метод Render("filename.png").
Возможностей у библиотеки масса, я лишь показал самые-самые базовые. Поэтому если Вам нужно построение графиков на сайте через PHP, то обязательно ознакомьтесь с документацией pChart.