Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]Problem z funkcja file_get_contents
morwo
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 1
Dołączył: 31.05.2006

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


Witam, mam problem z funkcja file_get_contents. Mianowicie napisalem skrypt, ktory pobiera dane z jednej strony, wyszukuje wsrod nich "cos" i wyswietla wyniki. Skrypt dziala poprawnie u mnie w domu, a na darmowym serwerze, na ktory wrzucam skrypt, nie dziala. To znaczy: wyswietla wszystko do momentu tresci "Players online". Prosze o pomoc, oto kod:

  1. </head>
  2. <body>
  3. <?
  4. function is_online($igracz) {
  5. $dane=file_get_contents("http://www.tibia.com/statistics/?subtopic=whoisonline&w
  6.  orld=Thoria");
  7. $poczatek='<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%>';
  8. $wynik=explode($poczatek,$dane);
  9. $is_on=(ereg($igracz,$wynik[2]));
  10. if (($is_on!="")||($is_on!="0")) {
  11. print("<a
  12.  href="http://www.tibia.com/community/?subtopic=character&name=$igracz">$ig
  13.  racz</a><br />");
  14. }
  15. }
  16.  
  17. function get_on_ones(){
  18. $d=dir("players/");
  19. $i=0;
  20. echo("<b>Players online: </b><br /><br />");
  21. while (false!==($entry[$i]=$d->read())) {
  22. if (($entry[$i]!='.')&&($entry[$i]!='..')) {
  23. $i++;
  24. }
  25. }
  26. foreach ($entry as $plik_zrodlowy) {
  27. if ($plik_zrodlowy!=NULL) {
  28. is_online($plik_zrodlowy);
  29. }
  30. }
  31. $d->close();
  32. }
  33. ?>
  34.  
  35.  
  36. <table>
  37. <tr>
  38. <td>
  39. <?
  40. get_on_ones();
  41. ?>
  42. </td>
  43. </tr>
  44. </table>
  45. </body>
  46. </html>


Myslalem,ze problem jest z moimi plikami,ale z nimi raczej wszystko o.k. W domu uzywam dosc popularnego programu do uruchamiania serwera, ktory nosi wdzieczna nazwe "KRASNAL" winksmiley.jpg Moge wrzucic troche mniejszy skrypt, za pomoca ktorego tez pobieram informacje ze strony (uzywajac file_get_contents). Oto on:

  1. <?php
  2. $dane=file_get_contents("http://www.tibia.com/community/?subtopic=guilds&page=view&G
  3.  uildName=Twi");
  4. $poczatek='<TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%>';
  5. $kolor1='BGCOLOR=#D4C0A1';
  6. $kolor2='BGCOLOR=#F1E0C6';
  7. $kolor3='BGCOLOR=#505050';
  8. $wynik=explode($poczatek,$dane);
  9. $wynik2=$wynik[1];
  10. $wynik3=str_replace($kolor1,' ',$wynik2);
  11. $wynik2=str_replace($kolor2,' ',$wynik3);
  12. $wynik3=str_replace($kolor3,' ',$wynik2);
  13. $wynik2=str_replace('<BR><BR>',' ',$wynik3);
  14. print($wynik2);
  15. ?>


Ten skrypt tez u mnie w domu dziala poprawnie, a gdy wysylam go na serwer (cba.pl),to kiszka,nie wyswietla sie tabela, ktora ma pobrac ze strony.

Od razu przyznaje, ze nie przeszukalem forum dokladnie (jedynie tylko pierwsza strone wynikow z szukania tematow z zawartoscia "file_get_contents" :/). Gdzies wyczytalem, ze ta funkcja nie zawsze dziala poprawnie, jesli chodzi o pobieranie informacji z sieci, czy to prawda? Czy w tych moich skryptach jest to wina tej funkcji? Czy moze powinienem postarac sie je jakos zoptymalizowac (bo dzialaja wolno)? A jesli to wina funkcji file_get_contents, to czy jest jakas inna funkcja, ktora moglbym zastapic wspomniana w temacie?

Z gory dziekuje, za wszelka pomoc smile.gif
Go to the top of the page
+Quote Post
-Gość-
post
Post #2





Goście







Moze sprobuj do otwierania innej strony funkcji fopen lub fsockopen
Go to the top of the page
+Quote Post
Whisller
post
Post #3





Grupa: Zarejestrowani
Postów: 77
Pomógł: 5
Dołączył: 29.03.2006
Skąd: Poznań

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


Najpierw file_get_contents" title="Zobacz w manualu php" target="_manual. Administrator pewnie 'wylaczyl' opcje allow_url_fopen.


--------------------
Blog | Strona www | wicia.pl
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 Aktualny czas: 19.08.2025 - 07:20