Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php+mysql] Zaawansowany formularz
Forum PHP.pl > Forum > Przedszkole
pioch
Witam


Chciałbym stworzyć zaawansowany formularz który dodaje za pomoca _POST dane do bazy danych...

jeśli chodzi o pola tekstowe to potrafie....
ale juz chodzi o zdjęcia... pojawiają się schody....


Tak samo jest gdy chce zrobić, by user dodając cos za pomocą tego forularza , miał możliwość edytowania tylko to co dodał...


czy mógłby mi ktoś pomóż w tej kwestii, stworzenia takiego zaawansowanego formularz.
Szczególnie chodzi mi o zasade... nie gotowca, bo bym chciał to zrozumieć smile.gif)
wipo
Jak chcesz dotrzeć do konkretnego pola to najprościej będzie stworzyć unikalne id (auto_increment)
Jeżeli chodzi o zdjęcia to nie wrzucaj ich do bazy (wrzuć tylko linka lub polozenie na dysku), będziesz znacznie szybciej - zwłaszcza przy dużych plikach
Ociu
Cytat(pioch @ 22.02.2007, 01:41:10 ) *
Tak samo jest gdy chce zrobić, by user dodając cos za pomocą tego forularza , miał możliwość edytowania tylko to co dodał...


Zaraz po uploadzie, czy jakiś czas po uploadzie ?

Zaraz po, dajesz pliki do tmp. Normalny katalog, który czyścisz co jakiś czas.
Jakiś czas. Można bawić się adresami ip, ale pamiętać trzeba o modemowcach, dzieckach neo i sieciach lan...
Nie widze innej możliwości jak logowanie userów.
pioch
logowanie mam juz zrobione i za pomoca sesjii ustalony dostep do formularza....

sprawa dostepu/identyfikacji mam załatwione


Ale najbardzie chodzi mi w formularzu o zdjecia....


Jak zapisać dane w bazie o zdjęciu.....+ możliwość uploadu


  1. <?
  2.  
  3. if(isset($_SESSION['user_id']))
  4. {
  5.  
  6. $user = $_SESSION['user_id'];
  7.  
  8. //formularz
  9.  
  10.  
  11.  } else {
  12.  
  13. //niezalogowany
  14.  
  15. }
  16.  
  17. ?>



Ale czy ktoś mógłby mi pokazać przykładowy formularz za pomocą którego można upoad-ować pliki i zapisać do bazy...
tansky
Interesujący Cię element formularza:

  1. <form action="" enctype="multipart/form-data" method="post">
  2. Wybierz plik:
  3. <input type="file" name="plik" size="40" />
  4. <input type="submit" value="Wyślij" />
  5. </form>


PHP odbiera w zmiennej $plik zasób (zawartość) pliku. Za pomocą funkcji copy zapisujesz go sobie na dysku bądź z oryginalną nazwą ($plik_name), bądź z wygenerowaną przez Ciebie (gdy unikalna - unikniesz nadpisywania)

  1. <?php
  2. $foto = date("YmdHis"); // generuje nazwe skladajaca sie z cyfr znacznika czasowego
  3. $sciezka = '../img/';
  4. $mojaNazwa = $foto.'.jpg';
  5. copy ($plik, $sciezka . $mojaNazwa);
  6. ?>


A w bazie zapisujesz jedynie nową nazwę pliku ($mojaNazwa).

Jasne?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.