Автор Тема: Рисунки в php ! echo $DATA! +MySQL  (Прочитано 3881 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sublimity

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 121
  • +0/-0
  • 0
    • Просмотр профиля
Рисунки в php ! echo $DATA! +MySQL
« : 02 Октября 2003, 22:59:44 »
Мне необходимо сохранить файлы в базе mysql,
открывю файл записываю в переменную процес вывода неработает даже только что открытого !! Почему?
Спасибо!
function imgx($id)
{
   extract ($GLOBALS);
   @header("content-type: image/gif");
   echo $DATA;
}
   

" border="1" alt="ALTER TEXT">
где $DATA переменная в которую прочитался файл !
p.s.: Еще маленький вопрос : правильно ли я делаю:
openfile->readfile to var -> save var to BLOB in tabel (Mysql) ->
Select from tabel !

Как можно проверять рисунки какой формат header("content-type: image/?????f"); ? какой он битый или нормальный!???????

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Рисунки в php ! echo $DATA! +MySQL
« Ответ #1 : 02 Октября 2003, 23:22:59 »
Вообще-то у идеи "хранить файлы в БД" очень много религиозных противников (я в том числе)

Ты много чего написал, но как все в кучу смешал.
Что у тебя не получается ? Записать файл в таблицу или вывести его ?

Цитировать
function imgx($id)
{
extract ($GLOBALS);
@header("content-type: image/gif");
echo $DATA;
}
" border="1" alt="ALTER TEXT">

ой, ну  ХТМЛ хотя бы выучил. Примерно так должно быть:

а в скрипте image.php:
... // получаешь текст картинки
header("Content-Type: image/jpeg");
echo $DATA;
?>
Цитировать
p.s.: Еще маленький вопрос : правильно ли я делаю:
openfile->readfile to var
эти 2 пункта делаются одной функцией [p]file_get_contents[/p]
Цитировать
Как можно проверять рисунки какой формат
записывай формат в таблицу, определяй его перед записью файла в БД с помощью [p]getimagesize[/p]
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Рисунки в php ! echo $DATA! +MySQL
« Ответ #2 : 03 Октября 2003, 09:07:26 »
sublimity
Купи себе какую-нибудь книжку "HTML для чайнкиов" и узнай оттуда, как выводятся картинки.

Оффлайн sublimity

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 121
  • +0/-0
  • 0
    • Просмотр профиля
Рисунки в php ! echo $DATA! +MySQL
« Ответ #3 : 03 Октября 2003, 21:00:08 »
Ненужно мне книг ! Лучше ответьте как полученную переменную преобразовать в image ! т.е. ImageSx($im) как прусвойть в эту $im дескриптор из переменной в которой храниться сам файл!
И еще правильно если я перед добавление в базу использую addsplashes ? или есть другой алгоритм!

Почему: " Вообще-то у идеи "хранить файлы в БД" очень много религиозных противников (я в том числе)  " ??????

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Рисунки в php ! echo $DATA! +MySQL
« Ответ #4 : 03 Октября 2003, 21:46:29 »
Цитировать
sublimity:
Ненужно мне книг

Это ты классно!!!
Начни с простого... вот это на досуге почитай http://php.spb.ru/php/image.html
там все написано... и как с диска и как из базы, и что делать если у тебя глюки...
работа в Украине

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Рисунки в php ! echo $DATA! +MySQL
« Ответ #5 : 04 Октября 2003, 08:24:16 »
sublimity
тебе нужны книжки и срочно.
в HTML файлах нет никаких дескрипторов.

Значит, так.
Ты - просто дикарь. Пятница. И тебе не возникать надо, а слушать.
Вот слушай, и не верещи.
1. За extract ($GLOBALS); надо бить по рукам. А того, кто тебе это показал - по голове.
2. За оператор @ надо бить по голове самого себя. Потому, что ты никому этим оператором не навредишь. Кроме самого себя. Я вообще не предстявляю, как можно быть таким партизаном, и закладывать самому себе такие гадости. Если бы его не было и если бы ты чуть лучше соображал, ты бы давно уже сам все понял.
3. "
Повторяю еще раз. Для самых тупых. НАУЧИСЬ сначала выводить картинки в ХТМЛ! Узнай, как в хтмл выводятся картинки, а потом уже лепи свои нелепые программы.
И не надо верещать и кричать, что ты все знаешь. Ты не знаешь ничего. Ты не видел ни разу, как в HTML выводятся картинки.
Надо прочитать, что тебе пишут, и делать правильно.
Этот твой код не неправильный. Он БЕССМЫСЛЕННЫЙ. Не хочешь книжки читать - открой хотя бы раз в жизни исходник HTML с картиками, дурилка картонная.
4. Никакой "декскриптор" и никакое преобразование в image тебе, как мы выяснили уже, не нужно. Но если бы даже и нужно было, все "преобразования" описаны в доокументации. Там же написано зачем и для чего они.
5. Addslashes надо делать только если РНР сам не сделал. А он чаще всего делает сам.
6. У идеи хранить файлы в базе противники не религиозные ,а вполне конкретные.Поскольку при этом во-первых, надо писать кучу лишнего кода, а во-вторых, ЕСТЕСТВЕННО, ты этим поднимаешь загрузку своего сервера во много раз!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Рисунки в php ! echo $DATA! +MySQL
« Ответ #6 : 04 Октября 2003, 08:53:46 »
Все еще не понял? Отвечаем на ваши вопросы, уважаемые телезрители.
1. почему нельзя делать екстракт глобалс? Да потому, что это забивание гвоздей микроскопом. потому, что ради одной - единственной переменной мы делаем ГОРУ достаточно ресурсоемких операций. Например, копируем ВСЕ переменные, которые есть в скрипте. Сколько бы их не было - хоть на мегабайт. А память не резиновая. а ресурсы на копирование тратятся. И это не шутки.
Если тебе нужна переменная внутри функции, ее можно передать в параметрах, а можно
2. Оператор @ Нельзя использовать вообще, а уж в данном случае он вдвойне, втройне, в сотню раз БЕССМЫСЛЕННЫЙ.
Собака служит для подавления сообщений об ошибках. Но сообщения об ошибках - это ХЛЕБ программиста! Ему на них молиться надо, а не давить! Читать и втыкать! Не отмахиваться, как от мухи, а шевелить винтиками - а почему оно вылезло-то?!
Если не хочешь выводить юзеру - для этого есть спец. средства. А себе надо выводить обязательно!!!
В данном случае собака как раз заглушает вопль РНР -- НТТР ЗАГОЛОВОК В СКРИПТЕ МОЖНО ПОСЫЛАТЬ ТОЛЬКО ОДИН РАЗ!!! МУЖИК! ТЫ ЧТО ТВОРИШЬ-ТО!!!
Но нет. Затыкаем ему рот и бежим на форум спрашивать, как нам обмануть. ага. Самого себя!

3. Ну, здесь, я думаю, ты уж все понял. я думаю, у тебя хватило ума открыть исходник того, что ты там нагенерил себе, с echo $DATA;, и ужаснуться, а потом открыть исходник хоть бы этой страницы и посмотреть, А ЧТО ПИШУТ В ПАРАМЕТРАХ ТЕГА

4. содать image из переменнгой можно, но только в самых последних версиях РНР. Другое дело, что кроме того, что тебе картинка в переменной воодже не нужно, а уж в виде image - ТЕМ БОЛЕЕ!

5. http://faq.phpclub.net/slashes

6. У нормальных людей картинку, которая указана в хтмл, браузер запрашивает у сервера и сервер ее радостно выдает. А вот у тех, кто хочет хранить в базе, на КАЖДУЮ картинку, которую они хотят показать, нужно
- поднять ПХП скрипт
- кажый скрипт должен соединиться с базой.
- в базе должно быть выделена память полд картинку
- в скрипте должна быть выделена память под картинку
- каждый - выдать картинку.
То есть, если на странице 10, допустим, картинок, то мы поднимаем нагрузку на свой сервер ровно в 10 раз. Как будто не 1 нас пользователь смотрит, а 10.
А если будут смотреть сотня, то половина из них уйдет недождавшись - сервер не справится.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Рисунки в php ! echo $DATA! +MySQL
« Ответ #7 : 04 Октября 2003, 08:54:29 »
Юкко. Это уже навязло в зубах, что ты чудак на букву "и", и что сам ты этого не понимаешь в принципе (что, впрочем, как раз и следует из первого), но я не премину тебе об этом напомнить. Авось дойдет когда-нибудь.

Оффлайн sublimity

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 121
  • +0/-0
  • 0
    • Просмотр профиля
Рисунки в php ! echo $DATA! +MySQL
« Ответ #8 : 04 Октября 2003, 10:10:39 »
Yukko  - спасибо! спасибо!
RomikChef  - тебе тоже спасибо но если ты уж считаеш себя таким умным то неслндует засирать других! Это факт
Простите!

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Рисунки в php ! echo $DATA! +MySQL
« Ответ #9 : 04 Октября 2003, 13:39:54 »
RomikChef
Ромик, я с тебя балдею... если сходить по ссылке и внимательно почитать... то он узнает и как в HTML картинки выводить, и как это делать скриптом. Да есть возможность сделать это из базы, а есть возможность и с диска, пусть человек сам выберет. Своим обращением к телезрителям от всех граблей ты людей не убережешь...
[off]а меня не вылечишь. Я безнадежен...[/off]
работа в Украине

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28