Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak rozpoznać, czy plik istnieje na serwerze?
masterinfo
post 17.09.2005, 12:45:13
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 27.02.2005

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


Mam następujący problem - mam skrypt, który odwołuje się do różnych plików na różnych serwerach. Muszę sprawdzić, czy plik istnieje przed odwołaniem się do niego, bo inaczej wywala błąd. Początkowo myślałem, żeby zrobić tak:
  1. <?php
  2.  
  3. $plik='http://nazwa_plikui';
  4. if file_exists($plik)
  5. {
  6. $lines = file($plik); 
  7. /*
  8. Potem następowały czyności związane z analizą pliku
  9.   */
  10. }
  11.  
  12. ?>


Niestety - tak nie zadziała - zdaje się, że file_exists() działa tylko dla plików lokalnych. Nie mam również możliwości zastosować cURL.

Czy istnieje jeszcze jakiś sposób na sprawdzenie, czy plik istnieje w sieci?
Go to the top of the page
+Quote Post
hwao
post 17.09.2005, 13:03:56
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




Tak sie tego nie zrobi,

Otworz polaczenie np fsockopen" title="Zobacz w manualu php" target="_manual()
I sprawdz czy serwer nie zwraca 404, jak jest w naglowku to znaczy ze pliku nie ma
Go to the top of the page
+Quote Post
masterinfo
post 17.09.2005, 13:53:30
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 27.02.2005

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


Kod
Warning: fsockopen() [function.fsockopen]: unable to connect to http://........:80 (Unable to find the socket transport "http" - did you forget to enable it when you configured php?) in /home/info/public_html/xml_simple.php on line 2

Czy trzeba coś zmienić w php.ini? Nie wiem już sam....
Go to the top of the page
+Quote Post
hwao
post 17.09.2005, 13:57:57
Post #4


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




zle, uzywasz - poczytaj w manualu jak...
Go to the top of the page
+Quote Post
masterinfo
post 17.09.2005, 15:24:27
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 27.02.2005

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


Ok, dzięki. Znalazłem w manualu funkcję, która wykrywa, czy plik jest, czy go nie ma korzystając z fsockopen(). Okazało się, że to trochę większa filozofia niż myślałem na początku, ale jakoś się udało. Trzeba było najpierw rozbić cały adres na domenę i ścieżkę, a ja próbowałem wszystko razem wrzucić do fsockopen().
Dzięki jeszcze raz aarambo.gif
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 - 03:44