5

Сайт-
визитка:

Сайт-визитка – это небольшой по размеру сайт (объем до 10 страниц), на котором размещается информация например о вашей компании.

0

Корпоративный сайт:

Это, веб-интерфейс определенной компании, который создан для доступа сотрудника к корпоративным данным и приложениям.

8

Интернет-магазин:

сайт, позволяет пользователям онлайн, в своём браузере, сформировать заказ на покупку, выбрать способ оплаты и доставки заказа.

Создание базы данных для изображений

В этом уроке мы научимся загружать изображение в базу данных MySql с использованием PHP. Хотя идея звучит сложной, но является достаточно простой в реализации и имеет множество практических применений. Изображение можно вызвать с базы данных с помощью всего одного PHP запроса. У вас, наверное, уже созрел вопрос – «Как изображения вставляются в базу данных?». Сейчас мы будем в этом разбираться.

Ну что начнем изучать!

Создаем три PHP файла:

-readdir.php – записываем изображение в базу данных

- image.php – сценарий отображения изображения

- view.php — пример файла, который покажет вам, как называются изображения

Создаем базу данных для изображений

Во-первых, для начала нам нужно создать базу данных, куда будут записываться изображения, назовем ее base64imgdb.

Во-вторых, создать таблицу с двумя строками:

CREATE TABLE `images` ( `imgid` INT NOT NULL AUTO_INCREMENT , `sixfourdata` LONGTEXT NOT NULL , PRIMARY KEY ( `imgid` ) );

Создание READDIR.PHP

Для начала работы, нам нужно создать соединение с базой данных:

<?php $dbcnx = mysql_connect("localhost", "username", "password"); mysql_select_db("base64imgdb"); ?>

Далее нам нужно открыть каталог, где ". /" — это каталог где находится файл readdir.php:

$path = "./"; $dir_handle = opendir($path) or die("Unable to open directory $path");

Это самая трудная часть сценария: сортировка типов изображений, чтение данных с использованием fopen, превращая его в использование base64_encode, а затем вставить его в таблицу.

<?php while ($file = readdir($dir_handle)) { $filetyp = substr($file, -3); if ($filetyp == ‘gif’ OR $filetyp == ‘jpg’) { $handle = fopen($path . "/" . $file,’r’); $file_content = fread($handle,filesize($path . "/" . $file)); fclose($handle); $encoded = chunk_split(base64_encode($file_content)); $sql = "INSERT INTO images SET sixfourdata=’$encoded’"; mysql_query($sql); } } ?>

Это последняя и окончательная часть readdir.php: закрытие каталога и завершение процесса:

<?php closedir($dir_handle); echo("complete"); mysql_close($dbcnx); ?>

Создание image.php

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

<?php $dbcnx=mysql_connect("localhost","username","password"); mysql_select_db("base64imgdb"); ?>

Теперь мы создадим строки, которые осуществляют запрос типа image.php?img=x

<?php $img = $_REQUEST["img"]; ?>

После этого, нам необходимо подключиться к таблице в базе данных, получить данные, и установить их в переменные:

<?php $result = mysql_query("SELECT * FROM images WHERE imgid=" . $img .""); if (!$result) { echo("<b>Не удалось подключиться к базе данных: " . mysql_error() . "</b>"); exit(); } while ($row = mysql_fetch_array($result)) { $imgid = $row["imgid"]; $encodeddata = $row["sixfourdata"]; } ?>

Это наиболее запутанная часть файла:

<?php mysql_close($dbcnx); echo base64_decode($encodeddata); ?>

Ну и наконец, вывод изображения.

<img src=’image.php?img=1′ border="0" alt="">

Файлы которые мы использовали для создания скрипта.!

readdir.php:

<?php $dbcnx = mysql_connect("localhost", "username", "password"); mysql_select_db("base64imgdb"); $path = "./"; $dir_handle = opendir($path) or die("Unable to open directory $path"); while ($file = readdir($dir_handle)) { $filetyp = substr($file, -3); if ($filetyp == ‘gif’ OR $filetyp == ‘jpg’) { $handle = fopen($file,’r’); $file_content = fread($handle,filesize($file)); fclose($handle); $encoded = chunk_split(base64_encode($file_content)); $sql = "INSERT INTO images SET sixfourdata=’$encoded’"; mysql_query($sql); } } closedir($dir_handle); echo("complete"); mysql_close($dbcnx); ?>

image.php

<?php $dbcnx = mysql_connect("localhost", "username", "password"); mysql_select_db("base64imgdb"); $img = $_REQUEST["img"]; $result = mysql_query("SELECT * FROM images WHERE imgid=" . $img . ""); if (!$result) { echo("<b> Не удалось подключиться к базе данных: " . mysql_error() . "</b>"); exit(); } while ($row = mysql_fetch_array($result) ) { $imgid = $row["imgid"]; $encodeddata = $row["sixfourdata"]; } mysql_close($dbcnx); echo base64_decode($encodeddata); ?>

И view.php

<html> <body> … <img src=’image.php?img=1′ border="0" alt=""> … </body> </html>

Вот и все!

Comments are closed.