WebDeveloper
 główna | forum manual | skrypty |  artykuły |  projekty | porady |  zasoby |  linki 

Forum PHP


 "Rozbebeszamy" pliki
Autor: Zdunko (---.poznan.cvx.ppp.tpnet.pl)
Data:   13.11.00 21:27

Witajcie!,

Mam nastepujacy problem:
Zalozmy ze mam nastepujacy formularz w HTML'u

<FORM ACTION=get.php ENCTYPE="multipart/form-data" METHOD=post>
<INPUT NAME=img TYPE=file size=20><BR>
<INPUT TYPE=submit VALUE=OK>
</FORM>

Jego dzilaniem (w zamysle) mialo byc pobieranie pliku z twardziela urzytkownika i umieszczanie jego zawartosci w zmiennej $img.
Tak sie jednak nie dzieje, zmiennej $img jest przekazywana jedynie sciezka do owego pliku, o postaci np: C:\\sciezka\\plik1.gif.

Co moge zrobic (w formularzy, lub bezposrednio w skrypcie PHP) by miec mozliwosc odczytania tego pliku? Moze ktos rzuci jakims przykladem, wytlumaczeniem?...

Dzieki z gory koledzy :-)

 RE: "Rozbebeszamy" pliki
Autor: peewee (---.io.poland.com)
Data:   14.11.00 11:09

W manualu jest to swietnie opisane... Jest caly rozdzial poswiecony plikom.

 RE: "Rozbebeszamy" pliki
Autor: Zdunko (---.poznan.cvx.ppp.tpnet.pl)
Data:   14.11.00 17:23

Dzieki, znalazlem tez sporo na ten temat pod adresem: http://www.phpbuilder.com/columns/florian19991014.php3

tylko jeden problem... nie chce mi dzilac. Wyskakuja podobne do tych komunikaty:

Warning: fopen("\\php2","r") - Unknown error in
g:\sciezka\www/get_img/index.php on line 13

Warning: Unable to find file identifier 0 in
g:\sciezka\www/get_img/index.php on line 14

itp

Znalazlem tez opis w manualu, cos wspominaja oni tam ze plik wybrany w
formularzu jest przechowywany w katalogu tymaczasowym srodowiska... jak to
rozumiec, jak sie dostac do tego katalogu no i jak do pliku ?

Konfiguracja kompa:
Apache 1.3.12
PHP 3.0.16

Oto kompletne zrodlo programu, czy ktos wie jak pomoc, gdzie robie blad?

<? if (strlen($img)==0) { ?>
<form method="post" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000000">
<input type="file" name="img" size="40">
<p><input type="submit" value="submit">
</form>
<?
} else {

$src = "./plik.dat";
$file = fopen($img, "r");
flock($file,1);
$data = addslashes(fread($file, filesize($img)));
flock($file,3);
fclose($file);

$file2 = fopen($src, "w");
flock($file2,2);
fwrite($file2,$data);
flock($file2,3);
fclose($file2);
?>
Plik zostal zapisany do pliku !
<? } ?>

 RE: "Rozbebeszamy" pliki
Autor: Tomek (---.jeremi.pl)
Data:   16.11.00 02:40

zdaje sie ze zle robisz otwierajac od razu ta zmienna $src w nadzieji ze w niej plik znajdziesz, pewnosci nie mam ale tez mialem podobny problem niby plik w tempie byl pod jakoms nazwa ale dostac sie do niego w taki jak ty sposob nie szlo, wszystko wrocilo do normy jak ten plik skopiowalem do innego bardziej ludzkiego katalogu.

 RE: "Rozbebeszamy" pliki
Autor: nav (---.torun.sdi.tpnet.pl)
Data:   19.11.00 18:12

plik jest umieszczany w katalogu /tmp (tak jest najczesciejw systemach *nix'owych)
trzeba ten plik skopiowac do odpowiedniego katalogu...
Trzeba też zmienic jego nazwę
Tu masz przykład:

/*
skrypt znaleziony na jakiejś stronie i uproszczony do podstawowych funkcji
*/
define("INCOMING", "/home/users/nav/public_html/images/");
if($REQUEST_METHOD!="POST")
{
echo "<form enctype=\"multipart/form-data\" method=post>\n";
echo "<input type=file name=infile><br>\n";
echo "<input type=submit value=upload>\n";
print("<input type=hidden name=upload value=ok></form>");
}

}
if($upload=="ok"){
if($infile!="")
{
$pliczek = $infile_name;
$noinput = true;
if($infile!="none") $noinput=false;

if($noinput)
{
echo "blad!!";
exit();
}
define("INCOMING", "/home/users/nav/public_html/images/");
if($infile!="none" &&
copy($infile, INCOMING.$infile_name) &&
unlink($infile))
{

$date = date("Y-m-d H:i:s");
print("<p align=\"right\"><b>$date  </b></p>");
print("Plik - " .$infile_name." - został wysłany poprawnie.<br><br>");
}

U mnie działa :)

 Odpowiedz na tę wiadomość
 Twoje Imię:
 Twój Email:
 Temat:
Odpowiedzi na tę wiadomość prześlij na powyższy adres email.
  




Manual | Skrypty | Artykuły | Projekty
Porady | Zasoby | Linki
Główna | Forum