За последние 24 часа нас посетили 55325 программистов и 1725 роботов. Сейчас ищут 867 программистов ...

Загрузка изображения

Тема в разделе "PHP для новичков", создана пользователем amen, 2 ноя 2009.

  1. amen

    amen Активный пользователь

    С нами с:
    18 сен 2009
    Сообщения:
    298
    Симпатии:
    0
    Адрес:
    Узбекистан
    Нужно, чтобы в новость(в новостной ленте) можно было добавлять изображение с компа?
    Я так понимаю нужно одним кликом загрузить изображение в папку на сервере и засунуть его новый адрес в тег [​IMG]
     
  2. lawbreaker14

    lawbreaker14 Активный пользователь

    С нами с:
    3 ноя 2009
    Сообщения:
    6
    Симпатии:
    0
    Адрес:
    Germany
  3. Roman82

    Roman82 Активный пользователь

    С нами с:
    26 ноя 2008
    Сообщения:
    101
    Симпатии:
    0
    Было у меня нечто похожее, но с файлами. Они загружались на сервер, а ссылка (имя файла) записывалось в бд.
    Ты проверяй: если фото загрузилось, записывай его имя в бд, а потом при выводе новости, выводи и имя фото в теги img (<img src="images/".<?php имя фото из бд ?> width="200" height="200" />).
    Вроде как-то так.
     
  4. amen

    amen Активный пользователь

    С нами с:
    18 сен 2009
    Сообщения:
    298
    Симпатии:
    0
    Адрес:
    Узбекистан
    Я так понял нельзя одной формой и загружать файл на сервер и передавать данные обработчику, чтоб он сообщение в БД заносил?
     
  5. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    почему нельзя? можно. а сложность в чем?
     
  6. amen

    amen Активный пользователь

    С нами с:
    18 сен 2009
    Сообщения:
    298
    Симпатии:
    0
    Адрес:
    Узбекистан
    karakh, Наверное я неправильно выразился. Не просто одной формой - а одной кнопкой. Нажал сабмит - и сообщение отправил и картинку с компа загрузил (и вывел эту картинку в этом сообщении)))
     
  7. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Единственное что из этого нельзя - это взять картинку с компа без пользователя. Юзер в любом случае должен выбрать файл для отправления. По вполне понятным причинам. Как только он это сделал - одной кнопки хватит.
     
  8. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Вообще-то можно, если точно знать, где она лежит.
    Хотя, это ещё надо будет проверить.

    Когда я говорил можно, то подразумевал дефолтное значение поля, имеющего атрибут файл.
     
  9. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Не проверял, но оч-чень сомневаюсь, что какой либо из браузеров до сих пор с такой дырой в безопасности. Кто угодно точно знает где на компе пользователя находится множество интересных файлов. Все файлы настройки системы и стандартных программ, если они находятся там, куда их производители предлагают по умолчанию ставить. default был бы просто очарователен :)
     
  10. amen

    amen Активный пользователь

    С нами с:
    18 сен 2009
    Сообщения:
    298
    Симпатии:
    0
    Адрес:
    Узбекистан
    Про дефолт - я читал, что возможность его указания в поле типа "файл" отменили сами разработчики HTML. Так что браузеры здесь ни при чём.
     
  11. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Разработчики много что отменили или не добавили. Браузеры могут (и иногда хотят) парсить теги, которые разработчикам HTML и в голову не приходили. Или не парсить те что есть в стандарте. Поэтому "отменили сами разработчики" - недостаточно. А "ни один браузер не поддерживает" - вполне.
     
  12. amen

    amen Активный пользователь

    С нами с:
    18 сен 2009
    Сообщения:
    298
    Симпатии:
    0
    Адрес:
    Узбекистан
    Век живи век учись!
     
  13. amen

    amen Активный пользователь

    С нами с:
    18 сен 2009
    Сообщения:
    298
    Симпатии:
    0
    Адрес:
    Узбекистан
    Исходя из всего вышесказанного, придумал такую систему:

    Значит есть текстареа, поле типа файл и сабмит.

    Допустим картинки загружаются в папку temp под тем же именем, что имели, находясь на компе:

    PHP:
    1. <?move_uploaded_file($_FILES['file']['tmp_name'], "temp/".$_FILES['file']['name'])
    Во время написания сообщения юзер нажал на "обзор", и выбрал имедж с компа. В текстарее сразу же должны появиться теги [​IMG].

    Будет ли это работать? И самое главное, как сделать, чтобы теги [​IMG]
     
  14. berkoot7

    berkoot7 Активный пользователь

    С нами с:
    23 фев 2009
    Сообщения:
    82
    Симпатии:
    0
    набери в гугле "tinymce"
    можно либо использовать этот готовый код, либо покопавшись в нем, понять это всё и сделать свое попроще
    это если с английским неплохо дела обстоят :)

    кстати во прос всем... ни у кого нету более ранних версий tinymce, а то последние ререзчур наворочены :(