|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Записывать информацию в BLOB весьма заморочно (надо перекодировать чтобы не было апострофов, кавычек, энтеров и нуль-байтов), да и выводить его не легко в веб-страницу (придётся выводить его скриптом, а значи описание mime-типа нужно). Более простой способ такой: 1. Рисунок закачивается не в базу данных, а в файловую систему сервера, причём ему присваивается уникальное имя (типа img145.jpg, img146.gif) 2. В базу данных записывается только новое имя рисунка. Преимущества очевидны: 1. База данных каждый раз при обращении к рисунку не загружается (а работает она как-никак медленнее файловой системы) 2. нет проблем с поддержкой mime-типов на сервере Может возникнуть единственный вопрос - как закачать файл с картинкой на сервер через веб-страницу? Например так: В коде вебстраницы пишешь: <form action="имя скрипта твоего" enctype="multipart/form-data"> Выберите рисунок:<input type=file name=image> <input type=submit> </form> А в коде скрипта для закачки файла (если это Perl) пишешь вот что: 1. В начале скрипта добавь: use Mysql; use CGI qw/:standard escapeHTML/; use CGI::Carp (fatalsToBrowser); use File::stat; $q=new CGI; $name=q->param('image'); 2. Непосредственно закачка: open imFile, ">новое имя файла с полным путём до него на сервере"; binmode imFile; while ($bytesread=read($name,$buffer,1024)) {print imFile $buffer;} close(imFile); Ну, и в таблицу вставить новое имя файла. Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2001, 22:18 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
А как сделать тоже самое только не на перле а на php????????????????? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2003, 09:15 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Евгений писал:Записывать информацию в BLOB весьма заморочно ...\r Более простой способ такой: \r 1. Рисунок закачивается не в базу данных, а в файловую систему сервера, причём ему присваивается уникальное имя (типа img145.jpg, img146.gif)\r 2. В базу данных записывается только новое имя рисунка.\r Закачка файлов на сервер средствами пхп ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2003, 13:27 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Это я уже читал, а на практике как это сделать, у меня ничего не получается!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2003, 09:46 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Постановку задачи в студию - поди всем миром поможем... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.10.2003, 15:53 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
вобщем мне нужно сделать таблицу в базе данных mysql где будет содержаться текстовая информация и рисунки. И одна проблема никогда с этим не работал как сделать запись рисунка в базу данных и как ее потом изъять оттуда? Очень много форумов где обсуждалась эта проблема но не доконца.... буду очень благодарен, если вы мне поможете ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2003, 07:17 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Ты хочешь непременно хранить картинки в БД? Это немного сложнее... Самый простой способ написан выше, первым постом А принцип такой: Загружаешь файл на сервер (вернее он сам загрузится из формы) Считываешь его в переменную (fread, getcontent) Добавляешь запись в таблицу предварительно экранировав слэши (addslashes) Получение следующим образом: Проверяешь на наличие содержимое записи Если есть, то например вызываешь файл, который будет возвращать картинку типа Код: plaintext 1. 2. 3.
в файле getpicture.php формируешь header Код: plaintext
получаешь из БД содержимое поля и выводишь в браузер Код: plaintext
Может где ошибся пусть поправят, писал на память ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2003, 09:27 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Это все ничего, но представь, что у тебя в каталоге 10.000 - как думаешь, быстро будет читаться из такого каталога? Нет! Надо бить этот каталог на штук 500 подкаталогов, если конечно реальный проект, с реальным количеством фоток (сайт знакомств какой нибуть или авто-фотопродажа). ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2003, 00:50 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
/topic/53124\r вот тут FAQ-решения по PHP ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2003, 14:58 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
alex_24 писал:Это все ничего, но представь, что у тебя в каталоге 10.000 - как думаешь, быстро будет читаться из такого каталога? Нет! Надо бить этот каталог на штук 500 подкаталогов, если конечно реальный проект, с реальным количеством фоток (сайт знакомств какой нибуть или авто-фотопродажа). как хранить фотки на серваке, если их немеряно ??? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.10.2003, 14:58 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Привет я нашел как загрузить файл на серевер, а как записать название файла, который загружается в базу????? Вот скрипт: <? switch($upload) { default: include "config.php"; echo " <html> <head> <title>Загрузка</title> </head> <body topmargin=\"10\" leftmargin=\"0\" bgcolor=\"#18576F\" link=\"#818EA0\" vlink=\"#5C697A\" alink=\"#818EA0\" text=\"#FFFFFF\" style=\"font-family: Verdana; font-size: 8pt; color: #FFFFFF\"> <div align=\"center\"> <center> <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"400\" id=\"AutoNumber1\"> <tr> <td bgcolor=\"#5E6A7B\" height=\"25\"> <p align=\"center\"><font size=\"2\"><b>Загрузка файла</b></font></td> </tr> <tr> <td bgcolor=\"#818EA0\"><font size=\"2\">Инструкция для добавления файлов:</font><ul type=\"square\"> <li><font size=\"2\">Расширение файла должно быть следующим <b>"; if (($extensions == "") or ($extensions == " ") or ($ext_count == "0") or ($ext_count == "") or ($limit_ext != "yes") or ($limit_ext == "")) { echo "любое расширение"; } else { $ext_count2 = $ext_count+1; for($counter=0; $counter<$ext_count; $counter++) { echo " $extensions[$counter]"; } } if (($limit_size == "") or ($size_limit != "yes")) { $limit_size = "any size"; } else { $limit_size .= " bytes"; } echo"</b></font></li> <li><font size=\"2\">Максимальный размер файла $limit_size</font></li> <li><font size=\"2\">Имя файла не может содержать следующие символы (/,*,\,и т.д.)</font><BR> </li> </ul> <form method=\"POST\" action=\"$PHP_SELF?upload=doupload\" enctype=\"multipart/form-data\"> <p align=\"center\"> <input type=file name=file size=30 style=\"font-family: v; font-size: 10pt; color: #5E6A7B; border: 1px solid #5E6A7B; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1\"><br> <br> <button name=\"submit\" type=\"submit\" style=\"font-family: v; font-size: 10pt; color: #5E6A7B; border: 1px solid #5E6A7B; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1\">Upload</button> </p> </form> <p> </td> </tr> </table> </center> </div> </body> </html>"; break; case "doupload": include "config.php"; $endresult = "<font size=\"2\">Файл был загружен</font>"; if ($file_name == "") { $endresult = "<font size=\"2\">Не выбран файл</font>"; }else{ if(file_exists("$absolute_path/$file_name")) { $endresult = "<font size=\"2\">Файл уже существует</font>"; } else { if (($size_limit == "yes") && ($limit_size < $file_size)) { $endresult = "<font size=\"2\">Файл слишком болшой</font>"; } else { $ext = strrchr($file_name,'.'); if (($limit_ext == "yes") && (!in_array($ext,$extensions))) { $endresult = "<font size=\"2\">Файл с неправильным расширением</font>"; }else{ @copy($file, "$absolute_path/$file_name") or $endresult = "<font size=\"2\">Couldn't Copy File To Server</font>"; } } } } echo " <html> <head> <title>Upload</title> </head> <body topmargin=\"10\" leftmargin=\"0\" bgcolor=\"#18576F\" link=\"#818EA0\" vlink=\"#5C697A\" alink=\"#818EA0\" text=\"#FFFFFF\" style=\"font-family: Verdana; font-size: 8pt; color: #FFFFFF\"> <div align=\"center\"> <center> <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#111111\" width=\"400\" id=\"AutoNumber1\"> <tr> <td bgcolor=\"#5E6A7B\" height=\"25\"> <p align=\"center\"><font size=\"2\"><b>Загрузка файла</b></font></td> </tr> <tr> <td bgcolor=\"#818EA0\"> <center> $endresult </center> </td> </tr> </table> </center> </div> </body> </html>"; break; } ?> config.php: <? $absolute_path = "uploads/"; $size_limit = "no"; $limit_size = "20000000"; $limit_ext = "no"; $ext_count = "4"; $extensions = array(".gif", ".jpg", ".jpeg", ".png"); ?> ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2003, 09:24 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Ну вот выдал военную тайну... Свой скрипт опубликовал, теперь тебя взломают :-))) Зачем столько много пишешь? Все равно никто читать вдумываясь не будет... И выделяй код, хоть раскрасится немного Код: plaintext
И вообще наверное пора перенести фопрос в другой форум, анпример в ПХП\ПЕРЛ? Как думаешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2003, 16:26 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
Спасибо за совет в следующий раз буду осторожнее!!! Если там помогут, можно и перенести..... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2003, 08:34 |
|
Вот как вставить картинку.
|
|||
---|---|---|---|
#18+
To Евгений У меня уже 2 года крутится задача, где информация ( документация в электронном виде, а это и картинки и фото и многое другое) хранится в поле MEDIUMTEXT. Скорость приличная. Вопросы хранения, создания копий и т.д. решаю средствами MySQL. Также вопросы секретности и разграничения доступа к информации.Так что я с вами не согласен.Обьем таблицы с картинками ~400 Mb, документов > 15000 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2004, 16:54 |
|
|
start [/forum/topic.php?fid=47&msg=32288324&tid=1855349]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 150ms |
0 / 0 |