Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z tworzeniem pliku
SoulMate
post 13.11.2004, 09:12:06
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 13.11.2004

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
kubatron
post 13.11.2004, 10:25:57
Post #2





Grupa: Zarejestrowani
Postów: 581
Pomógł: 0
Dołączył: 21.07.2003
Skąd: Jasło

Ostrzeżenie: (0%)
-----


  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";


--------------------
„Człowiek jest wielki nie przez to, co posiada, lecz przez to, kim jest;
nie przez to, co ma, lecz przez to, czym dzieli się z innymi.”
Jan Paweł II
Go to the top of the page
+Quote Post
SoulMate
post 13.11.2004, 12:59:30
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 13.11.2004

Ostrzeżenie: (0%)
-----


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
Go to the top of the page
+Quote Post
sf
post 13.11.2004, 14:52:02
Post #4





Grupa: Zarejestrowani
Postów: 1 597
Pomógł: 30
Dołączył: 19.02.2003
Skąd: Tychy

Ostrzeżenie: (0%)
-----


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ą.


--------------------
Zapraszam na mój php blog, tworzenie stron.
Go to the top of the page
+Quote Post
slepy
post 13.11.2004, 14:54:08
Post #5





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 27.02.2003

Ostrzeżenie: (0%)
-----


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..
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 01:42