Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> proszę o sprawdzenie skryptu
mksdziegiel
post 2.05.2005, 12:22:52
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 19.01.2005

Ostrzeżenie: (10%)
X----


mam skrypt do pogody i wyskakuje mi błąd
Kod
Fatal error: Call to undefined function: curl_init() in c:\usr\krasnal\www\pogoda.php on line 14




Plik pogoda.php
  1. <?php
  2.  
  3.  
  4. // Plik gdzie zapisac z tylko tobie znana nazwa! (daj prawa do pliku chomd o+rw plik)
  5. $filename = &#092;"pogoda4444.inc\";
  6.  
  7. // Strona z jakiej pobieramy! Uwaga wystarczy zmienic kod miasta na twoj!
  8. $site_aura = &#092;"http://pogoda.onet.pl/0,1228,38,miasto.html\";
  9.  
  10. // Jak w linii jest ten ciag wyrazow to zaczynamy szukac!
  11. $fstart = 'Teraz';
  12.  
  13. // Zapisujemy strone do tablicy $stronka
  14. $ch = curl_init();
  15. curl_setopt ($ch, CURLOPT_URL, $site_aura);
  16. curl_setopt ($ch, CURLOPT_HEADER, 0);
  17. curl_setopt ($ch, CURLOPT_RETURNTRANSFER,1);
  18. $output = curl_exec($ch);
  19. if (curl_error($ch)) sru('Error: Nie moge się połaczyć ze stroną!');
  20. $stronka = explode(&#092;"n\",$output);
  21. curl_close($ch);
  22.  
  23. $znalazlem = &#092;"0\";
  24. $ile = &#092;"0\";
  25.  
  26. // Funckja do wyswietlania bledu i dodatkowo zapisuje w pliku z wynikami ciag znak
  27. w
  28. // w tym wypadku zapisze spacje (w html -> &nbsp;)
  29. function sru($blad) {
  30. if ($blad == 'Error') {
  31. if (!$plik = @fopen($filename,&#092;"w+\")) die('Nie moge zapisac w pliku z pogoda!');
  32. flock($plik,2);
  33. $zapisz = &#092;"&nbsp;\";
  34. fputs($plik,$zapisz);
  35. flock($plik,3);
  36. fclose($plik);
  37. }
  38. die(&#092;"$blad\");
  39. }
  40.  
  41. // Szukamy
  42. reset($stronka);
  43. while (list ($line_num, $line) = each ($stronka)) {
  44. if (eregi($fstart,$line)) {
  45. $znalazlem = &#092;"1\";
  46. list($a1, $a2, $a3) = split('<TABLE width=\"100%\" border=0 cellspacing=0 cellpadding=0>', $line);
  47. // SZUKAMY W LINII - PROGNOZY
  48. if (!eregi(&#092;"bottom><IMG src=0 height=4><BR>(Wieczorem|Nad ranem|Przed południem|Po południu)<BR>([0-9]{2})-([0-9]{2})<BR><IMG(.+)align=\"absmiddle\"> ([0-9]{1,3}) km/h <IMG(.+)nowrap>([0-9]{1,2})/([0-9]{1,2}) &deg(.+)nieg:</TD><TD class=a1b>([0-9]{1,2}).([0-9]{1,2}) mm(.+)nowrap>([0-9]{1,5}) hPa(.+)class=a1b>([0-9]{1,2}).([0-9]{1,2}) mm\", $a2, $dane)) sru('Error');
  49.  
  50. // Pora dnia - (Rano/Popoludniu/Wieczorem)
  51. $dane_a[1] = htmlspecialchars($dane[1]);
  52. // Pogoda w godzinach 2-3
  53. $dane_a[2] = htmlspecialchars($dane[2]);
  54. $dane_a[3] = htmlspecialchars($dane[3]);
  55. // Nie potrzebne
  56. $dane_a[4] = htmlspecialchars($dane[4]);
  57. // Wiatr km/h
  58. $dane_a[5] = htmlspecialchars($dane[5]);
  59. // Nie potrzebne
  60. $dane_a[6] = htmlspecialchars($dane[6]);
  61. // Temp. min 7 max. 8
  62. $dane_a[7] = htmlspecialchars($dane[7]);
  63. $dane_a[8] = htmlspecialchars($dane[8]);
  64. // Nie potrzebne
  65. $dane_a[9] = htmlspecialchars($dane[9]);
  66. // Snieg 10.11 mm
  67. $dane_a[10] = htmlspecialchars($dane[10]);
  68. $dane_a[11] = htmlspecialchars($dane[11]);
  69. // Nie potrzebne
  70. $dane_a[12] = htmlspecialchars($dane[12]);
  71. // Cisnienie w hpa
  72. $dane_a[13] = htmlspecialchars($dane[13]);
  73. // Nie potrzebne
  74. $dane_a[14] = htmlspecialchars($dane[14]);
  75. // Deszcz 15.16 mm
  76. $dane_a[15] = htmlspecialchars($dane[15]);
  77. $dane_a[16] = htmlspecialchars($dane[16]);
  78.  
  79. if (!eregi(&#092;"bottom><IMG src=0 height=4><BR>(Wieczorem|Nad ranem|Przed południem|Po południu)<BR>([0-9]{2})-([0-9]{2})<BR><IMG(.+)align=\"absmiddle\"> ([0-9]{1,3}) km/h <IMG(.+)nowrap>([0-9]{1,2})/([0-9]{1,2}) &deg(.+)nieg:</TD><TD class=a1b>([0-9]{1,2}).([0-9]{1,2}) mm(.+)nowrap>([0-9]{1,5}) hPa(.+)class=a1b>([0-9]{1,2}).([0-9]{1,2}) mm\", $a3, $dane)) sru('Error');
  80.  
  81. // Pora dnia - (Rano/Popoludniu/Wieczorem)
  82. $dane_b[1] = htmlspecialchars($dane[1]);
  83. // Pogoda w godzinach 2-3
  84. $dane_b[2] = htmlspecialchars($dane[2]);
  85. $dane_b[3] = htmlspecialchars($dane[3]);
  86. // Nie potrzebne
  87. $dane_b[4] = htmlspecialchars($dane[4]);
  88. // Wiatr km/h
  89. $dane_b[5] = htmlspecialchars($dane[5]);
  90. // Nie potrzebne
  91. $dane_b[6] = htmlspecialchars($dane[6]);
  92. // Temp. min 7 max. 8
  93. $dane_b[7] = htmlspecialchars($dane[7]);
  94. $dane_b[8] = htmlspecialchars($dane[8]);
  95. // Nie potrzebne
  96. $dane_b[9] = htmlspecialchars($dane[9]);
  97. // Snieg 10.11 mm
  98. $dane_b[10] = htmlspecialchars($dane[10]);
  99. $dane_b[11] = htmlspecialchars($dane[11]);
  100. // Nie potrzebne
  101. $dane_b[12] = htmlspecialchars($dane[12]);
  102. // Cisnienie w hpa
  103. $dane_b[13] = htmlspecialchars($dane[13]);
  104. // Nie potrzebne
  105. $dane_b[14] = htmlspecialchars($dane[14]);
  106. // Deszcz 15.16 mm
  107. $dane_b[15] = htmlspecialchars($dane[15]);
  108. $dane_b[16] = htmlspecialchars($dane[16]);
  109.  
  110. // zapisujemy wynik w pliku z pogoda!
  111. if (!$plik = @fopen($filename,&#092;"w+\")) die('Nie moge zapisac w pliku z pogoda!');
  112. flock($plik,2);
  113.  
  114. $zapisz = <<< EOT
  115. <font color=\"blue\">Pogoda dla Zgorzelca:</font> Teraz &nbsp;(w godz.$dane_a[2]-$dane_a[3])&nbsp;&nbsp;temp.min./max.: $dane_a[7]/$dane_a[8] &deg;C, ciśnienie: $dane_a[13] hPa, wiatr: $dane_a[5] km/h, deszcz: $dane_a[15].$dane_a[16] mm, śnieg: $dane_a[10].$dane_a[11] mm,&nbsp;&nbsp;&nbsp;Później &nbsp;(w godz.$dane_b[2]-$dane_b[3])&nbsp;&nbsp;temp.min./max.: $dane_b[7]/$dane_b[8] &deg;C, ciśnienie: $dane_b[13] hPa, wiatr: $dane_b[5] km/h, deszcz: $dane_b[15].$dane_b[16] mm, śnieg: $dane_b[10].$dane_b[11] mm&nbsp;&nbsp;&nbsp;
  116. EOT;fputs($plik,$zapisz);
  117. flock($plik,3);
  118. fclose($plik);
  119.  
  120. }
  121. }
  122. if ($znalazlem == \"0\") sru('Error: Nie znalazłem wyników na stronie - możliwa zmiana kodu strony z pogodą!');
  123. ?>

plik check.php
  1. <?php
  2. // Stronka
  3. $site_aura = &#092;"http://pogoda.onet.pl/0,1228,38,miasto.html\";
  4.  
  5. $ch = curl_init();
  6. curl_setopt ($ch, CURLOPT_URL, $site_aura);
  7. curl_setopt ($ch, CURLOPT_HEADER, 0);
  8. curl_setopt ($ch, CURLOPT_RETURNTRANSFER,1);
  9. $output = curl_exec($ch);
  10. if (curl_error($ch)) die(&#092;"Nie moge otowrzyc strony $site_aura\");
  11. $stronka = explode(&#092;"n\",$output);
  12. curl_close($ch);
  13.  
  14. reset($stronka);
  15. while (list ($line_num, $line) = each ($stronka)) {
  16.  
  17. echo &#092;"<b>Linia $line_num:</b> \", htmlspecialchars ($line), \"<br>n\";
  18. }
  19. ?>

i jest jeszcze do tego plik pogoda4444.inc

co w tym skrypcie jest nie tak

Ten post edytował mksdziegiel 2.05.2005, 13:16:10
Go to the top of the page
+Quote Post
plewa
post 2.05.2005, 12:50:11
Post #2





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 16.01.2005

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


IMHO w lini 14 zamiast

$ch = curl_init();

powinno być;

$ch = curl_init( [ string url ] );

czyli jakiś url trzeba tam wstawić. smile.gif


--------------------
W razie problemów zapoznaj się z treścią manuala dołączonego do internetu bądź skonsultuj się z programistą lub jego asystentem.
Go to the top of the page
+Quote Post
rogrog
post 2.05.2005, 13:04:17
Post #3





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


@plewa: nawiasy kwadratowe oznaczają że parametr jest opcjonalny więc akurat nic nie trzeba wstawić

@mksdziegiel: żeby korzystać z tego skryptu musisz mieć na serwerze bibliotekę cURL, jeśli jej nie ma to właśnie takie błędy wyskakują


--------------------
Go to the top of the page
+Quote Post
mksdziegiel
post 2.05.2005, 13:17:51
Post #4





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 19.01.2005

Ostrzeżenie: (10%)
X----


to co trzeba zrobić
i gdzie tą biblioteke znaleść
Go to the top of the page
+Quote Post
MiNos
post 5.08.2006, 06:46:34
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 5.08.2006

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


Witam Wszystkich,
sam poszukuje skryptu na wlasna uzytecznosc aby pokazywal pogode. Powyzej opisany jest calkiem ciakwy, niestety nie mam bladego pojecia o php a z tego co widze onet cos zmienil na swojej stronie i podczas uruchomienia pojawia sie blad o zmianach na stronie. Czy jest ktos w stanie zmodyfikowac skrypt lub podac mi wskazowke co powinienem zmienic aby zaczol poprawnie dzialac?

Bede wdzieczny za pomoc wrecz lopatologiczna smile.gif
Go to the top of the page
+Quote Post
Coyote
post 5.08.2006, 08:56:27
Post #6





Grupa: Zarejestrowani
Postów: 151
Pomógł: 0
Dołączył: 20.02.2005
Skąd: Poznań

Ostrzeżenie: (30%)
XX---


z tego co mi wiadomo to CURL jest biblioteka instalowana "do php" wiec musisz poprosic o to admina swojego servera


--------------------
Go to the top of the page
+Quote Post
MiNos
post 5.08.2006, 11:53:07
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 5.08.2006

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


Ta biblioteka chyba u mnie dziala komunikat jest taki:
"Prawdopodobne zmiany na stronach 1!"
widać go tutaj: http://www.nosal.ig.pl/php/pogoda_v1.01/

Z tego co widze po wywaolaniu php info http://www.nosal.ig.pl/php/php_info.php chyba ta biblioteka dziala ale moge sie mylic, mosz zobaczyc w spis opcji i powiedziec mi czy to napewno wina biblioteki?
Go to the top of the page
+Quote Post
NetJaro
post 5.08.2006, 12:35:19
Post #8





Grupa: Zarejestrowani
Postów: 475
Pomógł: 0
Dołączył: 1.04.2005
Skąd: Warszawa

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


Tak, bibliotekę masz zainstalowaną, więc powinno być wszystko OK.

Nie mam pojęcia czemu pojawia Ci się tak błąd..
Go to the top of the page
+Quote Post
MiNos
post 5.08.2006, 19:31:48
Post #9





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 5.08.2006

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


jezeli masz dzialajaca wersje prosze o podeslanie na email
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: 12.06.2025 - 23:17