Autor | Zpráva | ||
---|---|---|---|
Anonymní Profil * |
#1 · Zasláno: 25. 2. 2005, 18:33:28
Ako vytvorim adresar so vsetkými pravami?
????????(mkdir("../obchod/".$adresar, 0777))????? |
||
halogan Profil |
#2 · Zasláno: 25. 2. 2005, 18:37:57
Ano, presne tak
|
||
Anonymní Profil * |
#3 · Zasláno: 25. 2. 2005, 18:39:29
ale bohuzial tentto adresar plne práva na serveri nema
|
||
Anonymní Profil * |
#4 · Zasláno: 25. 2. 2005, 18:42:29
Warning: fopen() [function.fopen]: SAFE MODE Restriction in effect. The script whose uid is 1225 is not allowed to access /domains1/gh114800/public/www_root/obchod/rweq owned by uid 1003 in /domains1/gh114800/public/www_root/predajca/adresar.php on line 12
a na 12 riadku mam toto $fp = FOpen ("../obchod/".$adresar."/index.php", "a"); Kde je potom chyba ak nie v adresari? |
||
Honza Hučín Profil |
#5 · Zasláno: 25. 2. 2005, 18:50:00
SAFE MODE má určitá omezení. Myslím, že například neumožňuje tvořit podadresáře, měl jsem podobný problém, když jsem chtěl použít šablonovací systém Smarty.
Možná řešení, která znám: a) vypnout safe mode nějakou konfigurační direktivou, nevím přesně kterou b) obejít se bez podadresářů (což ve Smarty jde) |
||
Martin Kuželka Profil |
#6 · Zasláno: 25. 2. 2005, 19:01:01
Pokud se nepletu, adresáře lze vytvářet i při zapnutém Safe Modu pomocí nějakých ftp funkcí v PHP.
|
||
Leo Profil |
#7 · Zasláno: 26. 2. 2005, 00:58:11
Prava a sprava souboru / adresaru a uzivatelu na unixu je vec, kterou jsem dodnes nepochopil, Leo
|
||
Kráťa Profil |
#8 · Zasláno: 26. 2. 2005, 01:36:16
Mě stačilo když jsem na ftp kliknul na adresář v IE pravým, zvolil vlastnosti a všechna práva zaškrtnul.
|
||
llook Profil |
#9 · Zasláno: 26. 2. 2005, 10:09:25
Podle Manuálu v safe modu mkdir() "Kontroluje, zda adresář, ve kterém pracujete, má stejné UID jako spuštěný skript."
UID = user ID, identifikační číslo uživatele. Jestli tedy není problém ve vlastnictví adresáře, ve kterém chceš ten adresář vytvořit? Ovšem lze vytvářet adresáře také přes FTP funkce, jak bylo zmíněno. Pokud vím, tak například juneauův redakční systém to tak dělá. |
||
llook Profil |
#10 · Zasláno: 26. 2. 2005, 10:54:35
Teď jsem si uvědomil, že skripty nahrané přes FTP by měli mít stejné UID jako proces FTP serveru. Ale soubory a adresáře vytvářené pomocí PHP získávají UID procesu serveru (nebo PHP v případě CGI).
Takže pro vytváření adresářů jedině FTP funkce. |
||
juneau Profil |
#11 · Zasláno: 26. 2. 2005, 13:14:54
$ftp_server = 'ftp.blalala.com';
$ftp_user_name = 'blalala.com'; $ftp_user_pass = 'blalala'; $path = 'novy_adresar'; $conn_id = ftp_connect($ftp_server); $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); if ((!$conn_id) || (!$login_result)) { echo "FTP connection has failed!"; echo "Attempted to connect to $ftp_server for user $ftp_user_name"; exit; } else { echo "Connected to $ftp_server, for user $ftp_user_name"; } $creat_dir = ftp_mkdir($conn_id,$path); // close the FTP stream ftp_close($conn_id); ********************************* Pozor na adresu noveho adresare! Protoze ftp udaje, ktere zadas, jsou stejne, jako by ses prihlasil pres ftp klienta. takze script uvidi stejne slozky, jake uvidis ty v klientovi... je to relativni adresa k adresari, na ktery je ftp ucet miren. |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0