![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 5 Dołączył: 6.02.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Od razu zaznaczam, że w PHP/MySQL jestem początkujący, a że zdarzyło mi się tak, że natrafiłem na konieczność wrzucania obrazu do bazy danych,więc pisze tutaj, bo nie mam pojęcia, jak to ugryźć. Przede wszystkim, czegośtam szukałem po googlach, ale znalazłem długi, tasiemcowaty skrypt który mnie przeraził. Nie oczekuję żadnego gotowca, tylko wskazówek: - czy znając podstawy jestem w stanie takie coś zrobić? - o jakich funkcjach powinienem poczytać? - jak wrzucic go z formularza razem z innymi zmiennymi tekstowymi (czy tlyko input type="file" starczy)? - czy moze sie znalezc w zwyklej tabeli ? - czy to jest faktycznie taki wielki tasiemiec, czy da się problem zrealizować w miarę zgrabnym skryptem, i czy wymaga jakichś zabezpieczeń? Będę wdzięczny za wskazówki (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi o wrzucanie obrazków to polecałbym rozwiązać to nieco inaczej. Skoro pliki wrzuca użytkownik, który ma za pewne swój rekord w bazie to najlepiej każdemu userowi stworzyć oddzielny folder nazywający się jego numerem id lub loginem. Wtedy mogą do woli wrzucać pliki o takich nazwach jakie mają inni userzy bo przeciez kazdy ma wlasny folder.
Funkcja do tworzenia katalogów mkdir. Co do nazwy plików, rozmiaru itd. to przejrzyj zawartość tablicy $_FILES. Np: JEśli każdy użytkownik może wrzucić tylko jeden plik to w ogóle bym pominął dodawanie nazwy pliku do bazy. Zakładając, że tworzysz każdemu userowi oddzielny folder (lub alternatywnie wszystkie pliki wrzucasz do jednego ale każdy plik nazywasz id/loginem usera) to wystarczy, że wczytasz całą zawartość folderu o nazwie id/loginu usera (w tym przypadku będzie tam tylko jeden plik), albo jeśli masz wszystkie pliki userów w jednym folderze wczytasz tylko plik nazwany id/loginem usera. Funkcje do pobierania zawartości folderu: opendir , readdir , closedir. Używa się ich w tej kolejności. W przykładach w manualu jest to zrozumiale wyjaśnione. Co do filtrowania plików jakie user może uploadować to sam html daje taką możliwość: Ale o ile się nie mylę to wystarczy zmienić manualnie rozszerzenie i możesz wrzucać dowolny typ pliku. Ten post edytował sadistic_son 23.02.2011, 00:03:10 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 08:04 |