За последние 24 часа нас посетили 60816 программистов и 1771 робот. Сейчас ищут 862 программиста ...

загрузка файлов на сайт

Тема в разделе "PHP для новичков", создана пользователем ionico, 26 ноя 2008.

  1. ionico

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

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    ув. программисты, не могли бы вы помочь мне понять и разобраться в одной вещи?
    я сделал возможность регистрироваться на сайте, и хочу, чтобы пользователь мог загрузить, скажем, свою аватарку...

    сайт на бесплатном хостинге, я так понимаю, что сама передача файлов будет реализована посредством FTP ?
    при помощи copy()? или нет?
    + как сделать кнопку "Обзор", которая вызывала бы Проводник на клиентской машине для выбора файла...

    нигде не могу найти материала на эту тему =(

    И ещё один вопросец:
    На сайте присутствует зона администратора. Вход, разумеется, только по паролю. Где и в каком виде лучше всего хранить этот пароль? Клиентские данные хранятся в БД, после регистрации. А админ-данные, на данный момент, просто в PHP - скрипте... Насколько это опасно, и где лучше хранить админ-данные?

    Заранее спасибо, с уважением, Дмитрий.
     
  2. Петр

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

    С нами с:
    20 мар 2006
    Сообщения:
    1.253
    Симпатии:
    0
    Адрес:
    Центр Вселенной
    Передача файлов будет по HTTP.

    См.: move_uploaded_files()


    З.Ы. Если ты собрался писать что-то типа copy('C:\My Documents\img.jpg', '/var/www/mysite.ru/files/img.jpg');
    то лучше убейся об стену сразу.
     
  3. ionico

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

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    спасибо за подсказку функции, а вот по-поводу "убейся", то, если бы я собрался что-либо писать, я бы это уже написал... но из-за незнания, перед этим, поинтересовался...
    давай не будем переходить на личности...
     
  4. ShamahN

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

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
  5. Xerk

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

    С нами с:
    5 окт 2007
    Сообщения:
    177
    Симпатии:
    0
    Адрес:
    Владивосток
    передача файла должна происходит через POST запрос. запрос отправляет веб форма.
    HTML:
    1. <form enctype="multipart/form-data" action="script.php" method="post" >
    2. </form>
    3.  
    Как писать форму и как потом это все обрабатывать в пхп - поищи в гугле. Довольно много чего написано на эту тему.
     
  6. ionico

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

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    спасибо всем за помощь. разобрался.
     
  7. Frozen

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

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    интересно посмотреть как бы ты это написал
     
  8. Dagdamor

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

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    Frozen
    В таких случаях умнее будет сначала спросить: "а как бы я это написал?"
     
  9. Frozen

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

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    это был сарказм :) по части copy('C:\My Documents\img.jpg', '/var/www/mysite.ru/files/img.jpg');
     
  10. ionico

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

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    я бы написал так, если бы это касалось переноса файлов из одной папки моего localhost'a в другую.... но не в случае с хостинг сервером....

    а вообще, честно говоря, сарказм - плохая штука... в этой ситуации мне это больше напомнило снобизм...
    но, в независимости от всего - ЕЩЁ РАЗ ВСЕМ СПАСИБО ЗА ПОМОЩЬ!

    ОДНАКО хотелось бы услышать ответ по второму вопросу: "На сайте присутствует зона администратора. Вход, разумеется, только по паролю. Где и в каком виде лучше всего хранить этот пароль? Клиентские данные хранятся в БД, после регистрации. А админ-данные, на данный момент, просто в PHP - скрипте... Насколько это опасно, и где лучше хранить админ-данные?"
     
  11. karakh

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

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    В БД, там же где и клиентские. Пароль в виде соленого хеша. Админ это тоже юзер, просто с дополнительным набором прав.
     
  12. ionico

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

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0

    мммммммммммммммм.... а что такое "солёный хеш" ??? О_о
     
  13. Meinard

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

    С нами с:
    29 ноя 2008
    Сообщения:
    2
    Симпатии:
    0
    Это когда при шифровании пароля дополнительно используется некоторое рандомное слово, т.н. salt. Например: md5(md5($pass).md5($salt)).
     
  14. free-bits

    free-bits Активный пользователь

    С нами с:
    13 ноя 2008
    Сообщения:
    296
    Симпатии:
    0
    Адрес:
    г. Красноярск
    Хэш-перехэш=))
     
  15. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    Meinard
    ты ради этого зарегился? =))
     
  16. ionico

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

    С нами с:
    16 авг 2008
    Сообщения:
    73
    Симпатии:
    0
    т.е. персональные данные типа "логин"/"пароль" лучше MD-пятить?...
    в обычном виде их могут спереть из базы, верно?

    а как же тогда разMDпятивать в случае необходимости?
     
  17. free-bits

    free-bits Активный пользователь

    С нами с:
    13 ноя 2008
    Сообщения:
    296
    Симпатии:
    0
    Адрес:
    г. Красноярск
    Зачем размд5вать?=) захэшировать пароль который надо проверить и сравнить с захэшированным паролем в базе
     
  18. Meinard

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

    С нами с:
    29 ноя 2008
    Сообщения:
    2
    Симпатии:
    0
    Нет)
    MD5-ся только пароль, логин-то зачем - его и так все видят . А спереть данные из базы могут и в виде шифрованного хэша, но тогда придется приложить усилия, чтобы подобрать исходный вид этих данных.