Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak odczytac położenie pliku?
Forum PHP.pl > Forum > Przedszkole
Qbaaa
Witam.
Jakiej funkcji użyć aby przy pomocy formularza "załadować" plik z dysku do bazy ale w ten sposób aby funkcja zwróciła miejsce położenia tego pliku (np. http://localhost/~webadmin/zdjecia/1.jpg) to miejsce położenia chcę wstawić do bazy questionmark.gif?
wookieb
http://www.google.pl/search?hl=pl&q=ph...mp;aq=f&oq=
A zapisywać w bazie już chyba umiesz.
Qbaaa
hmm tylko mam mały problem, otóż po kliknięciu w przycisk "Wgraj plik" wyskakuje mi że żaden plik nie został wgrany a został wgrany

Kod
<?

    if (!is_uploaded_file($_FILES['pliczek']))
      die ('Nie wgrano żadnego pliku');
  ?>
wookieb
A pokaż więcej kodu.
nospor
is_uploaded_file($_FILES['pliczek']
czy naprawde takim niesamowitym trudem jest zajrzec tu:
http://pl.php.net/manual/pl/function.is-uploaded-file.php
is_uploaded_file($_FILES['userfile']['tmp_name'])

$_FILES['pliczek']
$_FILES['pliczek']['tmp_name']
widzisz roznice?

I tak jak mowi wookieb: pokaz caly formularz i kod

edit:
lektura obowiązkowa:
http://pl.php.net/manual/pl/features.file-...post-method.php

Dopiero po tym pytaj na forum
Qbaaa
Formularz

  1. <form method="post" action="upload1.php" enctype="multipart/form-data">
  2. <input type="hidden" name="MAX_FILE_SIZE" value="300000">
  3.  
  4. Wybierz plik który chcesz wgrać na serwer<br>
  5.  
  6. <input type="file" name="pliczek" size="40"><br>
  7. <input type="submit" value="Wgraj plik">



upload.php

  1. <?
  2.    move_uploaded_file($_FILES['pliczek']['tmp_name'],"pliki/".$_FILES['pliczek']['name']);
  3.  
  4.  
  5. echo "Wgrano plik: ".($_FILES['pliczek']['name']);?> </br><?
  6.  
  7. ?>
  8. <?
  9.  
  10.    if (!is_uploaded_file($_FILES['pliczek']['tmp_name']))
  11.      die ('Nie wgrano żadnego pliku');
  12.  
  13.  
  14.  
  15.  ?>
wookieb
action="upload1.php" a podales upload.php. Mam nadzieje ze to tylko literowka w poscie.

Najpierw plik zapisujesz a potem dopiero sprawdzasz czy jakis został wyslany przez uzytkownika. Chyba warto to poprawic.
nospor
Cytat
Chyba warto to poprawic.
Nie dosc ze warto ale trzeba smile.gif
Przeciez jak wykona move() to plik juz w tmp nie istnieje i is_uploaded_file() zawsze mu zwroci false winksmiley.jpg
Qbaaa
dzieki chłopaki już działa

zrobiłem coś takiego
  1. <?
  2. if (!is_uploaded_file($_FILES['pliczek']['tmp_name'])){
  3.      echo 'Nie wgrano żadnego pliku';
  4. }else
  5.    echo "Wgrano plik: ".($_FILES['pliczek']['name']);?> </br>
  6.  
  7. <?
  8. move_uploaded_file($_FILES['pliczek']['tmp_name'],"pliki/".$_FILES['pliczek']['name']);
  9.  
  10. ?>
nospor
Cytat
echo "Wgrano plik: ".($_FILES['pliczek']['name']);?> </br>

No z tym tez sie spieszysz. move() tez moze ci zwrocic blad tongue.gif
Qbaaa
wiem ,dlatego spróbowałem wrzucić plik rozmiarem przekraczający dozwolony rozmiar i wyrzuiło, że nie wgrano pliku, więc wszystko chyba jest ok smile.gif
wookieb
Chodzi mu o to ze nie robisz cos w stylu
  1. <?php
  2. if(funkcja())
  3. {
  4.    echo 'funkcja wykonala sie prawidlowo';
  5. }
  6. else 'sry ale funkcja spartolila robote, albo programista :)';
  7. ?>

Oczywiscie przerob przyklad do siebie
Qbaaa
ok juz poprawiłem, dzięki jeszcze raz za pomoc winksmiley.jpg
nospor
Cytat
ok juz poprawiłem, dzięki jeszcze raz za pomoc
pokaz jak poprawiles bym mial spokokniejsze sny winksmiley.jpg
Qbaaa
ej no Wy tu specjaliści ;P , wydaje mi sie, że teraz jest dobrze

  1. <?
  2. if (is_uploaded_file($_FILES['pliczek']['tmp_name'])){
  3.  
  4. move_uploaded_file($_FILES['pliczek']['tmp_name'],"pliki/".$_FILES['pliczek']['name']);
  5.  
  6. echo "Wgrano plik: ".($_FILES['pliczek']['name']);?> </br><?
  7.  
  8. $plik= 'pliki/'.$_FILES['pliczek']['name'];
  9.  
  10. echo $plik;
  11.  
  12. }else
  13.  
  14.  echo 'Nie wgrano żadnego pliku';
  15.  
  16. ?>
nospor
zrozum: move_uploaded_file() moze zwrocic blad. Ty w zaden sposob tego nie sprawdzasz.
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.