Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

probleme cu backtick
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> PHP Avansat
Subiectul anterior :: Subiectul următor  
Autor Mesaj
vaypah



Data înscrierii: 19/Dec/2007
Mesaje: 6

Trimis: Joi Dec 20, 2007 9:40 am    Titlul subiectului: probleme cu backtick  

Salutare.

Am si eu o probema cu php-u. Cred ca e ceva ce tine de setari, sau de securitatea windows, dar poate v-ati mai intalnit cu asa ceva.

Am o mapare facuta pe drive-ul Z dupa un folder de pe alt calculator. Folosind operatorul backtick (` - apostrofu ala ciudat de pe tasta ~) care ar trebui sa-mi ruleze in consola direct comenzile, eu incerc sa dau un "dir"...mai exact, codul e
Cod: <?php
 `dir "z:\" /s > d:\parsing.txt`
?>

Problema e ca imi returneaza un "parsing.txt" gol, in loc sa-mi puna in el lista de directoare cu toate fisierele din ele.

Incercand aceeasi bucata de cod, doar cu D:\ in loc de Z:\ merge fara nici o problema.

Daca bag comanda ca mai sus, pe Z:, dar direct din consola, iarasi merge fara nici o problema.

Am incercat chiar sa pun codul intr-un bat si sa-l rulez cu exec() din php dar exact aceeasi problema...daca rulez direct batchu merge, si mai merge si daca scriu d: sau c: in loc de z: si rulez din php.

Calculatorul pe care am php e un server 2003, cu php pus pe apache(am xampp instalat), iar fisierele mapate sunt tot pe un server 2003.

Maparea era conectata cand am facut toate testele astea.

Lucrul care ma streseaza la culme este ca acum 2 zile mergea fara nici o problema, pana sa joinez serverul pe care e php la un domain. Calculatorul de pe care mapez nu apartine domeniului...poate e de la asta, dar codul a continuat sa nu functioneze si dupa ce am scot serverul din domeniu.

O ultima mentiune...am incercat si cu scandir() astfel:
Cod:  <?php

$dir = 'z:';

$print = scandir($dir);

print_r( $print);

?>
si eroarea generata a fost:
Cod:  Warning: scandir(z:) [function.scandir]: failed to open dir: No error in C:\xampp\htdocs\site\baze\testare.php on line 3

Fratilor! Ajutati un biet programator ajuns ca capatul nervilor! :(
Sus  
mihaitha



Data înscrierii: 04/Mai/2007
Mesaje: 1801
Locație: Sibiu

Trimis: Joi Dec 20, 2007 9:43 am    Titlul subiectului:  

Vezi ce permisii are php.exe si php4ts.dll (sau php5ts.dll - depinde ce versiune ai). Prin ce user ruleaza. Poate e de la asta. Dunno...
Sus  
vaypah



Data înscrierii: 19/Dec/2007
Mesaje: 6

Trimis: Joi Dec 20, 2007 9:51 am    Titlul subiectului:  

Te referi la ce owner au cele 2 fisiere? Daca da, era administratorul calculatorului, acum l-am schimbat cu administratorul domeniului si la fel face.
Sus  
mihaitha



Data înscrierii: 04/Mai/2007
Mesaje: 1801
Locație: Sibiu

Trimis: Joi Dec 20, 2007 10:44 am    Titlul subiectului:  

Si owner-ul asta are drept de citire pe folderul de retea mapat? Incearca sa te loghezi o data in drive-ul mapat cu userul prin care lucreaza apache shi php.

P.S. nu am incercat niciodata sa fac ce faci tu acuma, ma dau si eu cu parerea. Stiu numai ca in combinatie cu IIS, pentru ca php sa mearga bine, trebuia ca userul IUSR_(machine name) sa aiba drept de read si execute pe php.exe si pe php4ts.dll . Deci probabil e o problema de permisii de acces.
Sus  
ebogdan



Data înscrierii: 27/Iul/2006
Mesaje: 151

Trimis: Joi Dec 20, 2007 11:04 am    Titlul subiectului:  

Cred ca mihaitha are dreptate, ia uite ce scrie la opendir:

Citat: mana at averna dot com
07-Dec-2007 03:02
I was trying to access network drives using this opendir function. I read so many posts saying that it was almost impossible to access a network drive and finally, I found the answer; there are 2 steps to be followed to access a network drive with PHP either on the same machine or another machine.

But first of all, here's the error I was getting:
Warning: opendir(\\server\folder1\sub_folder) [function.opendir]: failed to open dir: No error in C:\wamp\www\PMOT\v0.1\REPORT_MENU\index.php on line 17

Firstly, one must make sure that the folder \\server\folder1\sub_folder can be accessed by a user, let's say USER_TEST with a password PASS_TEST. By setting properties to this folder, one can add this given user with the correct password (USER_TEST with PASS_TEST).

Secondly, the APACHE service must be set-up to take this user into account. If no user is specified, APACHE uses an anonymous user and this is where the problem/error message is coming from. One must go in control panel->administrative tools->services. One will see the list of services and must look for APACHE with Apache/2.X.X in the description. (For Wampserver, it will be called wampapache, and so on!) Right click on that and pop up the properties screen. In the tab LOG ON, there are 2 options: local system account and "this account" which will be a user specified account. This is where one must specify the USER_TEST and PASS_TEST.

Following these steps worked perfectly for me but if either the folder privileges or apache log on user is disabled, then I get the initial aforementioned error message.

Anyways, I hope this can help out someone!

Cheers!

Marc
Sus  
vaypah



Data înscrierii: 19/Dec/2007
Mesaje: 6

Trimis: Joi Dec 20, 2007 4:25 pm    Titlul subiectului:  

Ok..ms de informatii...o sa incerc sa pun in aplicatie ce zice acolo.

O sa va tin la curent cu rezultatele.
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> PHP Avansat
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community