Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z tworzeniem pliku
Forum PHP.pl > Forum > Przedszkole
SoulMate
Mam nastepujacy kod :

  1. <?php
  2. $oldumask = umask(0); 
  3. mkdir($nazwa_katalogu, 0777); 
  4. umask($oldumask); 
  5.  
  6. $f=&#092;"$nazwa_katalogu\".\"/info.dat\"; 
  7.  
  8. $file=fopen(&#092;"$f\", \"w\"); 
  9. flock($file, 2); 
  10.  
  11. fputs($file, &#092;"$usern\"); 
  12. fputs($file, &#092;"$emailn\"); 
  13.  
  14. flock($file, 3); 
  15. fclose($file); 
  16. ?>


zmienna $nazwa_katalogu jest oczywiscie zadeklarowana ( ma postac $nazwa_katalogu="istniejacy_katalog/cos"; ). Problem pojawia sie, gdy skrypt ma stworzyc plik. Tworzy pieknie katalog i nadaje mu wlasciwe prawa dostepu, ale nie tworzy w nim pliku. Gdy zamiast tego kaze mu stworzyc plik w jakims innym katalogu, to plik sie pojawia. Skad wzial sie ten problem i jak go naprawic. Serwer, na ktorym jest stronka to friko.pl.

Bardzo prosze o pomoc.

Pozdrawiam.
kubatron
  1. <?php
  2. $nazwa_katalogu = &#092;"katalog\";
  3.  
  4. $oldumask  = umask(0);
  5.  
  6. umask($oldumask);
  7.  
  8. $f = &#092;"C:/AppServ/www/test/\".$nazwa_katalogu.\"/info.dat\";
  9.  
  10. $file  = fopen($f, &#092;"w\");
  11. if ( mkdir ( $nazwa_katalogu, 0777 ) )
  12. {
  13. echo &#092;"TAK, folder jest<br />\";
  14. if ( $file )
  15. {
  16. flock($file, 2);
  17.  
  18. fputs($file, &#092;"$usern\");
  19.  
  20. fputs($file, &#092;"$emailn\");
  21.  
  22. flock($file, 3);
  23.  
  24. fclose($file);
  25.  
  26. echo &#092;"utworzylem plik w folderze\".$nazwa_katalogu;
  27. }
  28. else
  29. {
  30. echo &#092;"nie utworzylem pliku w folderze\".$nazwa_katalogu;
  31. }
  32. }
  33. else
  34. {
  35. echo &#092;"folderu ni ma\";
  36. }
  37. ?>

Oto moja wersja poprawiona, z pewnymi błędami miałem np. zmienną miałeś w "" itp. :-) działa testowałem
I tu musisz zmienić na własna :-)
$f = "C:/AppServ/www/test/".$nazwa_katalogu."/info.dat";
SoulMate
Twoj kod niestety nie działa. Właściwie to nie wiem nawet dlaczego miałby działać skoro tworzysz najpierw plik a dopiero potem katalog, w którym ten plik ma się znaleźć. Nie wiem, czy do końca dobrze to wytłumaczyłem, ale

$nazwa_katalogu="istniejacy_katalog/nieistniejacy_katalog"

Chodzi po prostu o to, by najpierw stworzyc nowy katalog, a potem stworzyc w nim nowy plik.

Czekam na dalsza pomoc.

Pozdrawiam exclamation.gif
sf
Nie twórz folderów przez skrypt php. Jak potrzebujesz to zrób to ręcznie. Przeważnie nie można tak robić bo ustawienia serwera na to nie pozwalają.
slepy
Mi się wydaje że chodzi o prawa.
Wystarczy źle skonfigurowany php i już jest zonk
np. u mnie jak tworze katalog to nadaje mu
User: nobody grups: nobody i prawa tylko 700 ;/
Dlatego nie bawie się na katalogach..
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.