<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>508.com.ua &#187; dbcnx mysql_connect localhost508.com.ua</title>
	<atom:link href="https://508.com.ua/dbcnx-mysql-connect-localhost/feed/" rel="self" type="application/rss+xml" />
	<link>https://508.com.ua</link>
	<description>508.com.ua</description>
	<lastBuildDate>Tue, 01 Jul 2025 17:00:27 +0000</lastBuildDate>
	<language>ru-RU</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=3.9.25</generator>
	<item>
		<title>Создание базы данных для изображений</title>
		<link>https://508.com.ua/sozdanie-bazy-dannyh-dlja-izobrazhenij/</link>
		<comments>https://508.com.ua/sozdanie-bazy-dannyh-dlja-izobrazhenij/#comments</comments>
		<pubDate>Mon, 23 Apr 2012 14:41:39 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[Веб Уроки]]></category>
		<category><![CDATA[dbcnx mysql_connect]]></category>
		<category><![CDATA[dbcnx mysql_connect localhost]]></category>
		<category><![CDATA[localhost username]]></category>
		<category><![CDATA[базу данных]]></category>

		<guid isPermaLink="false">http://wordpress.work/sozdanie-bazy-dannyh-dlja-izobrazhenij/</guid>
		<description><![CDATA[В этом уроке мы научимся загружать изображение в базу данных MySql с использованием PHP. Хотя идея звучит сложной, но является достаточно простой в реализации и имеет множество практических применений. Изображение можно вызвать с базы данных с помощью всего одного PHP запроса. У вас, наверное, уже созрел вопрос – «Как изображения вставляются в базу данных?». Сейчас [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>В этом уроке мы научимся загружать изображение в базу данных MySql с использованием PHP. Хотя идея звучит сложной, но является достаточно простой в реализации и имеет множество практических применений. Изображение можно вызвать с базы данных с помощью всего одного PHP запроса. У вас, наверное, уже созрел вопрос – «Как изображения вставляются в базу данных?». Сейчас мы будем в этом разбираться.</p>
<p><span id="more-12598"></span>
<p>Ну что начнем изучать!</p>
<p> Создаем три PHP файла:</p>
<p> -readdir.php – записываем изображение в базу данных </p>
<p>- image.php – сценарий отображения изображения </p>
<p>- view.php &#8212; пример файла, который покажет вам, как называются изображения </p>
<p>Создаем базу данных для изображений</p>
<p>Во-первых, для начала нам нужно создать базу данных, куда будут записываться изображения, назовем ее base64imgdb.</p>
<blockquote><p> Во-вторых, создать таблицу с двумя строками:</p></blockquote>
<p> CREATE TABLE `images` ( `imgid` INT NOT NULL AUTO_INCREMENT , `sixfourdata` LONGTEXT NOT NULL , PRIMARY KEY ( `imgid` ) );
<p>Создание READDIR.PHP</p>
<p>Для начала работы, нам нужно создать соединение с базой данных:</p>
<p> &lt;?php $dbcnx = mysql_connect(&quot;localhost&quot;, &quot;username&quot;, &quot;password&quot;); mysql_select_db(&quot;base64imgdb&quot;); ?&gt;
<p>Далее нам нужно открыть каталог, где &quot;. /&quot; &#8212; это каталог где находится файл readdir.php:</p>
<p> $path = &quot;./&quot;; $dir_handle = opendir($path) or die(&quot;Unable to open directory $path&quot;);
<p>Это самая трудная часть сценария: сортировка типов изображений, чтение данных с использованием fopen, превращая его в использование base64_encode, а затем вставить его в таблицу.</p>
<p> &lt;?php while ($file = readdir($dir_handle)) { $filetyp = substr($file, -3); if ($filetyp == &#8216;gif&#8217; OR $filetyp == &#8216;jpg&#8217;) { $handle = fopen($path . &quot;/&quot; . $file,&#8217;r&#8217;); $file_content = fread($handle,filesize($path . &quot;/&quot; . $file)); fclose($handle); $encoded = chunk_split(base64_encode($file_content)); $sql = &quot;INSERT INTO images SET sixfourdata=&#8217;$encoded&#8217;&quot;; mysql_query($sql); } } ?&gt;
<p>Это последняя и окончательная часть readdir.php: закрытие каталога и завершение процесса:</p>
<p> &lt;?php closedir($dir_handle); echo(&quot;complete&quot;); mysql_close($dbcnx); ?&gt;
<p>Создание image.php</p>
<p>Этот файл принимает запросы, декодирует данные и представляет себя в качестве изображения. Во-первых, мы должны подключиться к базе данных еще раз:</p>
<p> &lt;?php $dbcnx=mysql_connect(&quot;localhost&quot;,&quot;username&quot;,&quot;password&quot;); mysql_select_db(&quot;base64imgdb&quot;); ?&gt;
<p>Теперь мы создадим строки, которые осуществляют запрос типа image.php?img=x</p>
<p> &lt;?php $img = $_REQUEST[&quot;img&quot;]; ?&gt;
<p>После этого, нам необходимо подключиться к таблице в базе данных, получить данные, и установить их в переменные:</p>
<p> &lt;?php $result = mysql_query(&quot;SELECT * FROM images WHERE imgid=&quot; . $img .&quot;&quot;); if (!$result) { echo(&quot;&lt;b&gt;Не удалось подключиться к базе данных: &quot; . mysql_error() . &quot;&lt;/b&gt;&quot;); exit(); } while ($row = mysql_fetch_array($result)) { $imgid = $row[&quot;imgid&quot;]; $encodeddata = $row[&quot;sixfourdata&quot;]; } ?&gt;
<p>Это наиболее запутанная часть файла:</p>
<p> &lt;?php mysql_close($dbcnx); echo base64_decode($encodeddata); ?&gt;
<p>Ну и наконец, вывод изображения.</p>
<p> &lt;img src=&#8217;image.php?img=1&#8242; border=&quot;0&quot; alt=&quot;&quot;&gt;
<p>Файлы которые мы использовали для создания скрипта.!</p>
<p>readdir.php:</p>
<p> &lt;?php $dbcnx = mysql_connect(&quot;localhost&quot;, &quot;username&quot;, &quot;password&quot;); mysql_select_db(&quot;base64imgdb&quot;); $path = &quot;./&quot;; $dir_handle = opendir($path) or die(&quot;Unable to open directory $path&quot;); while ($file = readdir($dir_handle)) { $filetyp = substr($file, -3); if ($filetyp == &#8216;gif&#8217; OR $filetyp == &#8216;jpg&#8217;) { $handle = fopen($file,&#8217;r&#8217;); $file_content = fread($handle,filesize($file)); fclose($handle); $encoded = chunk_split(base64_encode($file_content)); $sql = &quot;INSERT INTO images SET sixfourdata=&#8217;$encoded&#8217;&quot;; mysql_query($sql); } } closedir($dir_handle); echo(&quot;complete&quot;); mysql_close($dbcnx); ?&gt;
<p>image.php</p>
<p> &lt;?php $dbcnx = mysql_connect(&quot;localhost&quot;, &quot;username&quot;, &quot;password&quot;); mysql_select_db(&quot;base64imgdb&quot;); $img = $_REQUEST[&quot;img&quot;]; $result = mysql_query(&quot;SELECT * FROM images WHERE imgid=&quot; . $img . &quot;&quot;); if (!$result) { echo(&quot;&lt;b&gt; Не удалось подключиться к базе данных: &quot; . mysql_error() . &quot;&lt;/b&gt;&quot;); exit(); } while ($row = mysql_fetch_array($result) ) { $imgid = $row[&quot;imgid&quot;]; $encodeddata = $row[&quot;sixfourdata&quot;]; } mysql_close($dbcnx); echo base64_decode($encodeddata); ?&gt;
<p>И view.php</p>
<p> &lt;html&gt; &lt;body&gt; &#8230; &lt;img src=&#8217;image.php?img=1&#8242; border=&quot;0&quot; alt=&quot;&quot;&gt; &#8230; &lt;/body&gt; &lt;/html&gt;
<p>Вот и все!</p>
]]></content:encoded>
			<wfw:commentRss>https://508.com.ua/sozdanie-bazy-dannyh-dlja-izobrazhenij/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
