Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] overlib
Forum PHP.pl > Forum > Przedszkole
kroghot
Witam, postanowiłem wstawić na strone overlib ale nie moge sobie z tym poradzić bo wyskakuje mi błąd. Mój kod wygląda tak:

  1. <?php
  2. require("inc.rss2array.php");
  3. $rss_array = rss2array("http://feeds.feedburner.com/bankier-espi");
  4.  
  5. echo '<script LANGUAGE="JavaScript" SRC="scripts/overlib.js"></SCRIPT>';
  6.  
  7. print "<html><head><link rel=stylesheet href=style.css type=text/css></head><table>";
  8. print "<tr><td><br>" ."***************************************************************" ."</td></tr>";
  9.  
  10.  
  11.  
  12. for ($i=0; $i<count($rss_array['items']); $i++)
  13. {
  14. $item =& $rss_array['items'][$i];
  15.  
  16.  
  17.  $kod = htmlspecialchars('<?php print "<tr><td><b><i><a href="". $item['link'] ."" target=blank>" . $item['title'] . " </a></i></b></td></tr>";?>');
  18.  echo '<a onmouseover="return overlib(''.$kod.''" >$item['description']</a>';
  19.  
  20.  
  21. print "<tr><td>" ."***************************************************************" ."</td></tr>";
  22. }
  23.  
  24. print "</table>";
  25. ?>



Błąd jest taki:

  1. Parse error: syntax error, unexpected T_STRING in /home/mdm/ftp/mdminvest.pl/rrr.php on line 17


a efekt powinien być taki :


  1. ***************************************************************
  2. PKOBP (PKO BP SA): Deklaracja wypłaty dywidendy z zysku za 2006 rok
  3. ***************************************************************
  4. PKOBP (PKO BP SA): Uchwały podjęte przez Nadzwyczajne Walne Zgromadzenie Akcjonariuszy PKO BP SA zwołanym pierwotnie na dzień 6 marca 2007r., a kontynuującym obrady w dniu 19 marca 2007r.
  5. ***************************************************************
  6. ACTION S.A.:
  7. ***************************************************************
  8. SKOTAN S.A.: Nabycie akcji SKOTAN S.A. przez podmiot blisko związany z osobami zarzadzającymi i nadzorującymi
  9. ***************************************************************
  10. PKOBP (PKO BP SA): Powołanie członka Rady Nadzorczej przez Nadzwyczajne Walne Zgromadzenie Akcjonariuszy Powszechnej Kasy Oszczędności Banku Polskiego Spółki Akcyjnej zwołanym pierwotnie na dzień 6 marca 2007r., a kontynuującym obrady w dniu 19 marca 2007r.
  11. ***************************************************************
  12. SKOTAN S.A.: Otrzymanie zawiadomienia o nabyciu akcji Emitenta
  13. ***************************************************************
  14. SKOTAN S.A.: Sprzedaż akcji SKOTAN S.A. przez podmiot blisko związany z osobą nadzorującą
  15. ***************************************************************
  16. BRE: Zawiadomienie o transakcji na papierach wartościowych BRE Banku SA przesłane przez osobę zobowiązaną
  17. ***************************************************************
  18. BEEFSAN: Uchwała WZA i powołanie członka zarządu
  19. ***************************************************************

Z uwzględnieniem że po najechaniu na linka pojawi mi sie:

  1. Spis treści:1. RAPORT BIEŻĄCY
  2. 2. MESSAGE (ENGLISH VERSION)
  3. 3. INFORMACJE O PODMIOCIE
  4. 4. (..)


bo właśnie to jest w
<descript>
Spis treści:1. RAPORT BIEŻĄCY
2. MESSAGE (ENGLISH VERSION)
3. INFORMACJE O PODMIOCIE
4. (..)
</descript>

Bardzo prosze o pomoc
Z góry dziekuje
nospor
  1. $kod = htmlspecialchars('<?php print '<tr><td><b><i><a href="'. $item['link'] .'" target=blank>' . $item['title'] . ' </a></i></b></td></tr>';?>');
kroghot
Poprawiłem ale nadal wyskakuje jakiś błąd

mojpoprawiony kod:

  1. <?php
  2. require("inc.rss2array.php");
  3. $rss_array = rss2array("http://feeds.feedburner.com/bankier-espi");
  4.  
  5. echo '<script LANGUAGE="JavaScript" SRC="sss/overlib.js"></SCRIPT>';
  6.  
  7. print "<html><head><link rel=stylesheet href=style.css type=text/css></head><table>";
  8. print "<tr><td><br>" ."***************************************************************" ."</td></tr>";
  9.  
  10.  
  11.  
  12. for ($i=0; $i<count($rss_array['items']); $i++)
  13. {
  14. $item =& $rss_array['items'][$i];
  15. $kod = htmlspecialchars('<?php print '<tr><td><b><i><a href="'. $item['link'] .'" target=blank>' . $item['title'] . ' </a></i></b></td></tr>';?>');
  16.  
  17.  echo '<a onmouseover="return overlib(''.$kod.''" >$item['description']</a>';
  18.  
  19.  
  20. print "<tr><td>" ."***************************************************************" ."</td></tr>";
  21. }
  22.  
  23. print "</table>";
  24. ?>


Wynik:

  1. Parse error: syntax error, unexpected '>' in /home/mdm/ftp/mdminvest.pl/rrr.php on line 15



Proszę o pomoc
nospor
cos sie pochrzanilo przy kopiowaniu.

$kod = htmlspecialchars('<?php print \'<tr><td><b><i><a href="'. $item['link'] .'" target=blank>' . $item['title'] . ' </a></i></b></td></tr>\';?>');
kroghot
znowu nie działa sad.gif juz nie daje rady z tym oferlib-em


  1. <?php
  2. require("inc.rss2array.php");
  3. $rss_array = rss2array("http://feeds.feedburner.com/bankier-espi");
  4.  
  5. echo '<script LANGUAGE="JavaScript" SRC="sss/overlib.js"></SCRIPT>';
  6.  
  7. print "<html><head><link rel=stylesheet href=style.css type=text/css></head><table>";
  8. print "<tr><td><br>" ."***************************************************************" ."</td></tr>";
  9.  
  10.  
  11.  
  12. for ($i=0; $i<count($rss_array['items']); $i++)
  13. {
  14. $item =& $rss_array['items'][$i];
  15. $kod = htmlspecialchars('<?php print '<tr><td><b><i><a href="'. $item['link'] .'" target=blank>' . $item['title'] . ' </a></i></b></td></tr>';?>');
  16.  
  17.  echo '<a onmouseover="return overlib(''.$kod.''" > $item['description'] </a>';
  18.  
  19.  
  20. print "<tr><td>" ."***************************************************************" ."</td></tr>";
  21. }
  22.  
  23. print "</table>";
  24. ?>


teraz błąd jest w 17 a nie w 15 ale i tak coś mi sie wydaje że problem jest tu:

$kod = htmlspecialchars('<?php print \'<tr><td><b><i><a href="'. $item['link'] .'" target=blank>' . $item['title'] . ' </a></i></b></td></tr>\';?>');
nospor
Cytat
ale i tak coś mi sie wydaje że problem jest tu:
Cos ty sie uczepil tej linii? Wyraźnie masz napisane o ktora linie chodzi i tam rzeczywiscie masz blad.
Poczytaj sobie dokladnie to:
http://www.php.net/manual/pl/language.types.string.php
kilka razy, az moze wkoncu zalapiesz jak sie laczy stringi, jak sie wklada zmienne do stringow i wogole operacje na stringach, bo teraz masz z tym duuuuzy problem

Cytat
juz nie daje rady z tym oferlib-em
To nie jego wina tylko Twoja tongue.gif
kroghot
Może mi ktoś pomoc z tym kodem bo poprawiłem już chyba wszystko i nadal nie działa?
nospor
Cytat
bo poprawiłem już chyba wszystko i nadal nie działa

Jakbys wszystko poprawil to by dzialalo smile.gif

Pokaz kod po poprawkach, pokaz bledy jakie dostajesz - zobacze czy uwaznie czytales polecona lekture winksmiley.jpg
kroghot
ok już sobie odpuściłęm overliba, ale jak byś mogł mi podpowiedzieć w jaki sposób wstawić przy każdej wiadomości date ukazania się tej wiadomości ( zaznacze że w pliku jej nie ma )

Z góry dziękuje
nospor
Cytat
ale jak byś mogł mi podpowiedzieć w jaki sposób wstawić przy każdej wiadomości date ukazania się tej wiadomości ( zaznacze że w pliku jej nie ma )
smile.gif
A gdzie jest?
kroghot
właśnie o to chodzi ze nigdzie nie ma, ale może można wykorzystać jakoś aktualna date i wtedy wstawiać ją w momęcie pokazania się informacji
nospor
Cytat
właśnie o to chodzi ze nigdzie nie ma
blinksmiley.gif
Wiesz co to jest RSS? RSS to takie cuś, co zazwyczaj zawiera datę. Oczywiscie Twoj RSS również ją zawiera. PRzyklad wyciągniety z Twojego rss:
Cytat
<pubDate>Mon, 02 Apr 2007 18:21:00 +0100</pubDate>
I tak przy kazdym newsie.
kroghot
no powiem szczerze ze nie mam zielonego pojecia jak jak zobaczyłeś, ale choć mi napisz w jaki sposób mogę ją wyłuskać bo np:
takie coś nie działa ---- .$item['pubDate'].
pewnie problem jest w pliku inc.rss2array.php
no ale co tam dodać albo co zmienić to nie wiem sad.gif
nospor
Cytat
no powiem szczerze ze nie mam zielonego pojecia jak jak zobaczyłeś

Odplalilem w przegladarce Twojego linka:
http://feeds.feedburner.com/bankier-espi
smile.gif

Cytat
takie coś nie działa ---- .$item['pubDate'].
Nie wiem co robi Twoja funkcja rss2array(), nie pokazalej jej kodu, wiec nie jestem w stanie ci powiedziec co on z tą data robi.
Daj sobie print_r($item) i zobacz jak wyglada struktura
kroghot
To dziwne z tą data bu w mojej przeglądarce nie widać. Co do tego print_r
to wyskoczyło coś takiego:

  1. Array ( [title] => MNI: MNI S.A. - Zawiadomienia w trybie art. 160 ustawy o obrocie instrumentami finansowymi [link] => http://www.bankier.pl/wiadomosc/MNI-MNI-S-...mi-1566880.html [description] =>
  2.  
  3. Spis treści:1. RAPORT BIEŻĄCY 2. MESSAGE (ENGLISH VERSION) 3. INFORMACJE O PODMIOCIE 4. (..)
  4. ) MNI: MNI S.A. - Zawiadomienia w trybie art. 160 ustawy o obrocie instrumentami finansowymi Array ( [title] => LSI SOFTWARE S.A.: Znacząca umowa [link] => http://www.bankier.pl/wiadomosc/LSI-SOFTWA...wa-1566875.html [description] =>
  5.  
  6. Spis treści:1. RAPORT BIEŻĄCY 2. MESSAGE (ENGLISH VERSION) 3. INFORMACJE O PODMIOCIE 4. (..)
  7. ) LSI SOFTWARE S.A.: Znacząca umowa Array ( [title] => INSTALLUB: [link] => http://www.bankier.pl/wiadomosc/INSTALLUB-1566869.html [description] =>
  8.  
  9. Spis treści:1. RAPORT BIEŻĄCY 2. MESSAGE (ENGLISH VERSION) 3. INFORMACJE O PODMIOCIE 4. (..)
  10. ) INSTALLUB: Array ( [title] => PKOBP (PKO BP SA): Zmiany w składzie Zarządu PKO BP SA [link] => http://www.bankier.pl/wiadomosc/PKOBP-PKO-...SA-1566864.html [description] =>
  11.  
  12. Spis treści:1. RAPORT BIEŻĄCY 2. MESSAGE (ENGLISH VERSION) 3. INFORMACJE O PODMIOCIE 4. (..)
  13. ) PKOBP (PKO BP SA): Zmiany w składzie Zarządu PKO BP SA Array ( [title] => FON: Informacje o zawartej umowie [link] => http://www.bankier.pl/wiadomosc/FON-Inform...ie-1566857.html [description] =>
  14.  
  15. Spis treści:1. RAPORT BIEŻĄCY 2. MESSAGE (ENGLISH VERSION) 3. INFORMACJE O PODMIOCIE 4. (..)



a co do samego kodu php z pliku inc.rss2array.php jest taki:



  1. <?
  2.  
  3.  
  4. global $rss2array_globals;
  5.  
  6. #
  7. # fetch_feed
  8. #
  9.  
  10. function rss2array($url){
  11.  
  12. global $rss2array_globals;
  13.  
  14. #
  15. # empty our global array
  16. #
  17.  
  18. $rss2array_globals = array();
  19.  
  20. #
  21. # if the URL looks ok
  22. #
  23.  
  24. if(preg_match("/^http://([^/]+)(.*)$/", $url, $matches)){
  25.  
  26. $host = $matches[1];
  27. $uri = $matches[2];
  28.  
  29. $request = "GET $uri HTTP/1.0rn";
  30. $request .= "Host: $hostrn";
  31. $request .= "User-Agent: RSSMix/0.1 <a href="http://www.rssmix.comrn";" target="_blank">http://www.rssmix.comrn";</a>
  32. $request .= "Connection: closernrn";
  33.  
  34. #
  35. # open the connection
  36. #
  37.  
  38. if($http = fsockopen($host, 80, $errno, $errstr, 5)){
  39.  
  40. #
  41. # make the request
  42. #
  43.  
  44. fwrite($http, $request);
  45.  
  46. #
  47. # read in for max 5 seconds
  48. #
  49.  
  50. $timeout = time() + 5;
  51.  
  52. while(time() < $timeout && !feof($http)) {
  53.  
  54. $response .= fgets($http, 4096);
  55.  
  56. }
  57.  
  58. #
  59. # split on two newlines
  60. #
  61.  
  62. list($header, $xml) = preg_split("/r?nr?n/", $response, 2);
  63.  
  64. #
  65. # get the status
  66. #
  67.  
  68. if(preg_match("/^HTTP/[0-9.]+s+(d+)s+/", $header, $matches)){
  69.  
  70. $status = $matches[1];
  71.  
  72. #
  73. # if 200 OK
  74. #
  75.  
  76. if($status == 200){
  77.  
  78. #
  79. # create the parser
  80. #
  81.  
  82. $xml_parser = xml_parser_create();
  83.  
  84. xml_set_element_handler($xml_parser, "startElement", "endElement");
  85. xml_set_character_data_handler($xml_parser, "characterData");
  86.  
  87. #
  88. # parse!
  89. #
  90.  
  91. xml_parse($xml_parser, trim($xml), true) or $rss2array_globals[errors][] = xml_error_string(xml_get_error_code($xml_parser)) . " at line " . xml_get_current_line_number($xml_parser);
  92.  
  93. #
  94. # free parser
  95. #
  96.  
  97. xml_parser_free($xml_parser);
  98.  
  99. }
  100.  
  101. else {
  102.  
  103. $rss2array_globals[errors][] = "Can't get feed: HTTP status code $status";
  104.  
  105. }
  106.  
  107. }
  108.  
  109. #
  110. # Can't get status from header
  111. #
  112.  
  113. else {
  114.  
  115. $rss2array_globals[errors][] = "Can't get status from header";
  116.  
  117. }
  118.  
  119. }
  120.  
  121. #
  122. # Can't connect to host
  123. #
  124.  
  125. else {
  126.  
  127. $rss2array_globals[errors][] = "Can't connect to $host";
  128.  
  129. }
  130.  
  131. }
  132.  
  133. #
  134. # Feed url looks wrong
  135. #
  136.  
  137. else {
  138.  
  139. $rss2array_globals[errors][] = "Invalid url: $url";
  140.  
  141. }
  142.  
  143. #
  144. # unset all the working vars
  145. #
  146.  
  147. unset($rss2array_globals[channel_title]);
  148.  
  149. unset($rss2array_globals[inside_rdf]);
  150. unset($rss2array_globals[inside_rss]);
  151. unset($rss2array_globals[inside_channel]);
  152. unset($rss2array_globals[inside_item]);
  153. unset($rss2array_globals[current_tag]);
  154. unset($rss2array_globals[current_title]);
  155. unset($rss2array_globals[current_link]);
  156. unset($rss2array_globals[current_description]);
  157.  
  158. return $rss2array_globals;
  159.  
  160. }
  161.  
  162. #
  163. # this function will be called everytime a tag starts
  164. #
  165.  
  166. function startElement($parser, $name, $attrs){
  167.  
  168. global $rss2array_globals;
  169.  
  170. $rss2array_globals[current_tag] = $name;
  171.  
  172. if($name == "RSS"){
  173.  
  174. $rss2array_globals[inside_rss] = true;
  175.  
  176. }
  177.  
  178. elseif($name == "RDF:RDF"){
  179.  
  180. $rss2array_globals[inside_rdf] = true;
  181.  
  182. }
  183.  
  184. elseif($name == "CHANNEL"){
  185.  
  186. $rss2array_globals[inside_channel] = true;
  187. $rss2array_globals[channel_title] = "";
  188.  
  189. }
  190.  
  191. elseif(($rss2array_globals[inside_rss] and $rss2array_globals[inside_channel]) or $rss2array_globals[inside_rdf]){
  192.  
  193. if($name == "ITEM"){
  194.  
  195. $rss2array_globals[inside_item] = true;
  196.  
  197. }
  198.  
  199. elseif($name == "IMAGE"){
  200.  
  201. $rss2array_globals[inside_image] = true;
  202.  
  203. }
  204.  
  205. }
  206.  
  207. }
  208.  
  209. #
  210. # this function will be called everytime there is a string between two tags
  211. #
  212.  
  213. function characterData($parser, $data){
  214.  
  215. global $rss2array_globals;
  216.  
  217. if($rss2array_globals[inside_item]){
  218.  
  219. switch($rss2array_globals[current_tag]){
  220.  
  221. case "TITLE":
  222. $rss2array_globals[current_title] .= $data;
  223. break;
  224. case "DESCRIPTION":
  225. $rss2array_globals[current_description] .= $data;
  226. break;
  227. case "LINK":
  228. $rss2array_globals[current_link] .= $data;
  229. break;
  230.  
  231. }
  232.  
  233. }
  234.  
  235. elseif($rss2array_globals[inside_image]){
  236.  
  237. }
  238.  
  239. elseif($rss2array_globals[inside_channel]){
  240.  
  241. switch($rss2array_globals[current_tag]){
  242.  
  243. case "TITLE":
  244. $rss2array_globals[channel_title] .= $data;
  245. break;
  246.  
  247. }
  248.  
  249. }
  250.  
  251. }
  252.  
  253. #
  254. # this function will be called everytime a tag ends
  255. #
  256.  
  257. function endElement($parser, $name){
  258.  
  259. global $rss2array_globals;
  260.  
  261. #
  262. # end of item, add complete item to array
  263. #
  264.  
  265. if($name == "ITEM"){
  266.  
  267. $rss2array_globals[items][] = array(title => trim($rss2array_globals[current_title]), link => trim($rss2array_globals[current_link]), description => trim($rss2array_globals[current_description]));
  268.  
  269. #
  270. # reset these vars for next loop
  271. #
  272.  
  273. $rss2array_globals[current_title] = "";
  274. $rss2array_globals[current_description] = "";
  275. $rss2array_globals[current_link] = "";
  276.  
  277.  
  278. $rss2array_globals[inside_item] = false;
  279.  
  280. }
  281.  
  282. elseif($name == "RSS"){
  283.  
  284. $rss2array_globals[inside_rss] = false;
  285.  
  286. }
  287.  
  288. elseif($name == "RDF:RDF"){
  289.  
  290. $rss2array_globals[inside_rdf] = false;
  291.  
  292. }
  293.  
  294. elseif($name == "CHANNEL"){
  295.  
  296. $rss2array_globals[channel][title] = trim($rss2array_globals[channel_title]);
  297.  
  298. $rss2array_globals[inside_channel] = false;
  299.  
  300. }
  301.  
  302. elseif($name == "IMAGE"){
  303.  
  304. $rss2array_globals[inside_image] = false;
  305.  
  306. }
  307.  
  308. }
  309.  
  310. ?>


a zapozyczytłem go ze stronki http://www.rssmix.com/rss2array-parser/
nospor
1) wywal ten skrypt bo do bani jest. pluje noticami jak glupi smile.gif

2) Masz tu przerobke z uwzglednieniem pubDate, ktorej "nie widzisz" (a tak na marginesie: no comments)
  1. <?php
  2. //session_start();
  3. include('debug.inc.php');
  4.  
  5. global $rss2array_globals;
  6.  
  7. #
  8. # fetch_feed
  9. #
  10.  
  11. function rss2array($url){
  12.  
  13. global $rss2array_globals;
  14.  
  15. #
  16. # empty our global array
  17. #
  18.  
  19. $rss2array_globals = array();
  20.  
  21. #
  22. # if the URL looks ok
  23. #
  24.  
  25. if(preg_match("/^http://([^/]+)(.*)$/", $url, $matches)){
  26.  
  27. $host = $matches[1];
  28. $uri = $matches[2];
  29.  
  30. $request = "GET $uri HTTP/1.0rn";
  31. $request .= "Host: $hostrn";
  32. $request .= "User-Agent: RSSMix/0.1 <a href="http://www.rssmix.comrn";" target="_blank">http://www.rssmix.comrn";
  33. $request .= "Connection: closernrn";
  34.  
  35. #
  36. # open the connection
  37. #
  38.  
  39. if($http = fsockopen($host, 80, $errno, $errstr, 5)){
  40.  
  41. #
  42. # make the request
  43. #
  44.  
  45. fwrite($http, $request);
  46.  
  47. #
  48. # read in for max 5 seconds
  49. #
  50.  
  51. $timeout = time() + 5;
  52.  
  53. while(time() < $timeout && !feof($http)) {
  54.  
  55. $response .= fgets($http, 4096);
  56.  
  57. }
  58.  
  59. #
  60. # split on two newlines
  61. #
  62.  
  63. list($header, $xml) = preg_split("/r?nr?n/", $response, 2);
  64.  
  65. #
  66. # get the status
  67. #
  68.  
  69. if(preg_match("/^HTTP/[0-9.]+s+(d+)s+/", $header, $matches)){
  70.  
  71. $status = $matches[1];
  72.  
  73. #
  74. # if 200 OK
  75. #
  76.  
  77. if($status == 200){
  78.  
  79. #
  80. # create the parser
  81. #
  82.  
  83. $xml_parser = xml_parser_create();
  84.  
  85. xml_set_element_handler($xml_parser, "startElement", "endElement");
  86. xml_set_character_data_handler($xml_parser, "characterData");
  87.  
  88. #
  89. # parse!
  90. #
  91.  
  92. xml_parse($xml_parser, trim($xml), true) or $rss2array_globals[errors][] = xml_error_string(xml_get_error_code($xml_parser)) . " at line " . xml_get_current_line_number($xml_parser);
  93.  
  94. #
  95. # free parser
  96. #
  97.  
  98. xml_parser_free($xml_parser);
  99.  
  100. }
  101.  
  102. else {
  103.  
  104. $rss2array_globals[errors][] = "Can't get feed: HTTP status code $status";
  105.  
  106. }
  107.  
  108. }
  109.  
  110. #
  111. # Can't get status from header
  112. #
  113.  
  114. else {
  115.  
  116. $rss2array_globals[errors][] = "Can't get status from header";
  117.  
  118. }
  119.  
  120. }
  121.  
  122. #
  123. # Can't connect to host
  124. #
  125.  
  126. else {
  127.  
  128. $rss2array_globals[errors][] = "Can't connect to $host";
  129.  
  130. }
  131.  
  132. }
  133.  
  134. #
  135. # Feed url looks wrong
  136. #
  137.  
  138. else {
  139.  
  140. $rss2array_globals[errors][] = "Invalid url: $url";
  141.  
  142. }
  143.  
  144. #
  145. # unset all the working vars
  146. #
  147.  
  148. unset($rss2array_globals[channel_title]);
  149.  
  150. unset($rss2array_globals[inside_rdf]);
  151. unset($rss2array_globals[inside_rss]);
  152. unset($rss2array_globals[inside_channel]);
  153. unset($rss2array_globals[inside_item]);
  154. unset($rss2array_globals[current_tag]);
  155. unset($rss2array_globals[current_title]);
  156. unset($rss2array_globals[current_link]);
  157. unset($rss2array_globals[current_description]);
  158. unset($rss2array_globals[current_pubDate]);
  159.  
  160. return $rss2array_globals;
  161.  
  162. }
  163.  
  164. #
  165. # this function will be called everytime a tag starts
  166. #
  167.  
  168. function startElement($parser, $name, $attrs){
  169.  
  170. global $rss2array_globals;
  171.  
  172. $rss2array_globals[current_tag] = $name;
  173.  
  174. if($name == "RSS"){
  175.  
  176. $rss2array_globals[inside_rss] = true;
  177.  
  178. }
  179.  
  180. elseif($name == "RDF:RDF"){
  181.  
  182. $rss2array_globals[inside_rdf] = true;
  183.  
  184. }
  185.  
  186. elseif($name == "CHANNEL"){
  187.  
  188. $rss2array_globals[inside_channel] = true;
  189. $rss2array_globals[channel_title] = "";
  190.  
  191. }
  192.  
  193. elseif(($rss2array_globals[inside_rss] and $rss2array_globals[inside_channel]) or $rss2array_globals[inside_rdf]){
  194.  
  195. if($name == "ITEM"){
  196.  
  197. $rss2array_globals[inside_item] = true;
  198.  
  199. }
  200.  
  201. elseif($name == "IMAGE"){
  202.  
  203. $rss2array_globals[inside_image] = true;
  204.  
  205. }
  206.  
  207. }
  208.  
  209. }
  210.  
  211. #
  212. # this function will be called everytime there is a string between two tags
  213. #
  214.  
  215. function characterData($parser, $data){
  216.  
  217. global $rss2array_globals;
  218.  
  219. if($rss2array_globals[inside_item]){
  220.  
  221. switch($rss2array_globals[current_tag]){
  222.  
  223. case "TITLE":
  224. $rss2array_globals[current_title] .= $data;
  225. break;
  226. case "DESCRIPTION":
  227. $rss2array_globals[current_description] .= $data;
  228. break;
  229. case "PUBDATE":
  230. $rss2array_globals[current_pubDate] .= $data;
  231. break;
  232. case "LINK":
  233. $rss2array_globals[current_link] .= $data;
  234. break;
  235.  
  236. }
  237.  
  238. }
  239.  
  240. elseif($rss2array_globals[inside_image]){
  241.  
  242. }
  243.  
  244. elseif($rss2array_globals[inside_channel]){
  245.  
  246. switch($rss2array_globals[current_tag]){
  247.  
  248. case "TITLE":
  249. $rss2array_globals[channel_title] .= $data;
  250. break;
  251.  
  252. }
  253.  
  254. }
  255.  
  256. }
  257.  
  258. #
  259. # this function will be called everytime a tag ends
  260. #
  261.  
  262. function endElement($parser, $name){
  263.  
  264. global $rss2array_globals;
  265.  
  266. #
  267. # end of item, add complete item to array
  268. #
  269.  
  270. if($name == "ITEM"){
  271.  
  272. $rss2array_globals[items][] = array(title => trim($rss2array_globals[current_title]), link => trim($rss2array_globals[current_link]), description => trim($rss2array_globals[current_description]),pubDate => trim($rss2array_globals[current_pubDate]));
  273.  
  274. #
  275. # reset these vars for next loop
  276. #
  277.  
  278. $rss2array_globals[current_title] = "";
  279. $rss2array_globals[current_description] = "";
  280. $rss2array_globals[current_pubDate] = "";
  281. $rss2array_globals[current_link] = "";
  282.  
  283.  
  284. $rss2array_globals[inside_item] = false;
  285.  
  286. }
  287.  
  288. elseif($name == "RSS"){
  289.  
  290. $rss2array_globals[inside_rss] = false;
  291.  
  292. }
  293.  
  294. elseif($name == "RDF:RDF"){
  295.  
  296. $rss2array_globals[inside_rdf] = false;
  297.  
  298. }
  299.  
  300. elseif($name == "CHANNEL"){
  301.  
  302. $rss2array_globals[channel][title] = trim($rss2array_globals[channel_title]);
  303.  
  304. $rss2array_globals[inside_channel] = false;
  305.  
  306. }
  307.  
  308. elseif($name == "IMAGE"){
  309.  
  310. $rss2array_globals[inside_image] = false;
  311.  
  312. }
  313.  
  314. }
  315.  
  316.  
  317. ?>
kroghot
nie no poprostu mistrzostwo świata - bardzo ci dziekuje wielki "+". Brakuje mi tylko daty po polsku i troche skróconej ale już nie wymagam cudu.
Jeszcze raz dziekuje i pozdrawiam smile.gif
nospor
Cytat
Brakuje mi tylko daty po polsku i troche skróconej ale już nie wymagam cudu.
Tu nie trzeba cudu a manuala:
http://pl.php.net/manual/pl/function.strtotime.php
http://pl.php.net/manual/pl/function.date.php

  1. <?php
  2. $zm = date('Y-m-d H:i:s', strtotime('Tue, 03 Apr 2007 08:52:00 +0100'));
  3. echo $zm;
  4. ?>

smile.gif
kroghot
no super, bardzo mi pomogłeś. Tak naprawde to pierwsze raz mam do czynienia z php a wiec sie nie dziw że jestem taka lama smile.gif

ps. nie chce być nachalny a jak jestem to mnie olej ale jak byś miał chwile to proszę pomóż mi z tym overlib-em, bo sobie nie radze. Teraz całkowicie zmieniłem kod a w nowym dokumęcie html działa doskonale

  1. <?php
  2. print "<tr><td><br>" ."***************************************************************" ."</td></tr>";
  3.  
  4. for ($i=0; $i<count($rss_array['items']); $i++)
  5. {
  6. $item =& $rss_array['items'][$i];
  7.  
  8.  
  9.  
  10.  print "<tr><td><b>".$zm = date('Y-m-d H:i:s', strtotime($item['pubDate']))."</b><br>";
  11.  
  12.  print "<b><i><Q onMouseOver=overlib('<center> <a href="". $item['link'] ."" target=blank>" . $item['title'] .
  13.  </center>', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR,
  14.  '#FFFFFF', STATUS, 'Dymek zwykły')
  15.  </a></i></b></td></tr>";
  16.  print "onMouseOut=nd(); style=cursor:hand>". $item['title'] ."</Q>";
  17.  
  18. print "<tr><td>" ."***************************************************************" ."</td></tr>";
  19. }
  20. ?>


No ale i tak jeszcze raz wielkie dzięki smile.gif
pozdrawiam
nospor
Cytat
a jak jestem to mnie olej ale jak byś miał chwile to proszę pomóż mi z tym overlib-em
No ale w czym teraz problem bo nie czaje smile.gif
kroghot
problem polega na tym że nie działa, moj plik wygląda tak:

  1. <?php
  2. require("inc.rss2array.php");
  3. $rss_array = rss2array("http://feeds.feedburner.com/bankier-espi");
  4.  
  5.  
  6. print "<html><head><link rel=stylesheet href=style1.css type=text/css></head><body>
  7. <script language=JavaScript src=overlib.js></script>
  8.  
  9.  
  10.  
  11. <table BORDER=1 WIDTH=100% BGCOLOR=steelblue><center><TR> 
  12. <TD WIDTH=25%><center><A HREF=1.php COLOR=white> 
  13. <FONT COLOR=white><FONT SIZE=+1><b>Info ESPI</b></FONT></a></center></TD>
  14. <TD WIDTH=25%><center><A HREF=2.php>
  15. <FONT COLOR=white><FONT SIZE=+1><b>Gielda</b></FONT></a></center></TD>
  16. <TD WIDTH=25%><center><A HREF=3.php>
  17. <FONT COLOR=white><FONT SIZE=+1><b>Waluty</b></FONT></a></center></TD>
  18. <TD WIDTH=25%><center><A HREF=4.php>
  19. <FONT COLOR=white><FONT SIZE=+1><b>Fundusze</b></FONT></a></center></TD></center></TR>
  20. </table>
  21. <table BORDER=0 WIDTH=100% BGCOLOR=skyblue><tr><td WIDTH=25%>
  22. <FONT COLOR=white><FONT SIZE=+0><b><center>Wiadomoci ze spolek ESPI</center></b></FONT></a></center></td></tr></table>
  23.  
  24.  
  25. <table>";
  26.  
  27.  
  28. print "<tr><td><br>" ."***************************************************************" ."</td></tr>";
  29.  
  30. for ($i=0; $i<count($rss_array['items']); $i++)
  31. {
  32. $item =& $rss_array['items'][$i];
  33.  
  34.  
  35.  
  36.  print "<tr><td><b>".$zm = date('Y-m-d H:i:s', strtotime($item['pubDate']))."</b><br>";
  37.  
  38.  print "<b><i><Q onMouseOver=overlib('<center> <a href="". $item['link'] ."" target=blank>" . $item['title'] .
  39.  </center>', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR,
  40.  '#FFFFFF', STATUS, 'Dymek zwykły')
  41.  </a></i></b></td></tr>";
  42.  print "onMouseOut=nd(); style=cursor:hand>". $item['title'] ."</Q>";
  43.  
  44. print "<tr><td>" ."***************************************************************" ."</td></tr>";
  45. }
  46.  
  47. print "</table></body>";
  48. print "<div id=overDiv style=position:absolute; visibility:hide;></div></html>";
  49. ?>



a efekt jest taki:

  1. onMouseOut=nd(); style=cursor:hand>QUMAK-SEKOM S.A.: Znaczny pakiet akcjionMouseOut=nd(); style=cursor:hand>QUMAK-SEKOM S.A.: Zawarcie znaczącej umowyonMouseOut=nd(); style=cursor:hand>TELFORCEONE S.A.: Informacja o zakończeniu subskrypcji sprzedaży akcji serii BonMouseOut=nd(); style=cursor:hand>IBSYSTEM: Stan posiadania Członka ZarząduonMouseOut=nd(); style=cursor:hand>TELFORCEONE S.A.: Zakup udziałów spółki Teletorium Sp. z o.o.onMouseOut=nd(); style=cursor:hand>TUP: Informacja na temat realizacji umowy dotyczącej Modena Park.onMouseOut=nd(); style=cursor:hand>TELFORCEONE S.A.: Rozstrzygnięcie postępowania sądowegoonMouseOut=nd(); style=cursor:hand>RUCH S.A.: Uchwały powzięte na NWZ RUCH S.A. w dniu 4 kwietnia 2007 r. (po przerwie)onMouseOut=nd(); style=cursor:hand>BUDOPOL: Informacja o transakcji instrumentami finansowymi
  2.  
  3. ***************************************************************
  4. 2007-04-04 20:30:00
  5. QUMAK-SEKOM S.A.: Znaczny pakiet akcji ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  6. ***************************************************************
  7. 2007-04-04 20:30:00
  8. QUMAK-SEKOM S.A.: Zawarcie znaczącej umowy ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  9. ***************************************************************
  10. 2007-04-04 20:22:00
  11. TELFORCEONE S.A.: Informacja o zakończeniu subskrypcji sprzedaży akcji serii B ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  12. ***************************************************************
  13. 2007-04-04 20:22:00
  14. IBSYSTEM: Stan posiadania Członka Zarządu ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  15. ***************************************************************
  16. 2007-04-04 20:22:00
  17. TELFORCEONE S.A.: Zakup udziałów spółki Teletorium Sp. z o.o. ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  18. ***************************************************************
  19. 2007-04-04 20:01:00
  20. TUP: Informacja na temat realizacji umowy dotyczącej Modena Park. ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  21. ***************************************************************
  22. 2007-04-04 20:01:00
  23. TELFORCEONE S.A.: Rozstrzygnięcie postępowania sądowego ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  24. ***************************************************************
  25. 2007-04-04 20:01:00
  26. RUCH S.A.: Uchwały powzięte na NWZ RUCH S.A. w dniu 4 kwietnia 2007 r. (po przerwie) ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  27. ***************************************************************
  28. 2007-04-04 20:01:00
  29. BUDOPOL: Informacja o transakcji instrumentami finansowymi ', RIGHT, FGCOLOR, '#667C94', BGCOLOR, '#00FFFF', TEXTCOLOR, '#FFFFFF', STATUS, 'Dymek zwykły')
  30. ***************************************************************


zmieniłem ten kod w ten sposob ale poprzedni też nie działał - a na zwykłym nowym pliku html overlib działa
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.