Kurzovi listok

Máte problém, hľadáte niečo? Opýtajte sa a poradíme...

Moderátor: Moderators

Užívateľov profilový obrázok
Marek Adamec
Medium Star
Medium Star
Príspevky: 246
Dátum registrácie: Pi Dec 28, 2007 7:58 pm
Bydlisko: Dubnica nad Váhom
Kontaktovať užívateľa:

Kurzovi listok

Príspevok od užívateľa Marek Adamec » Ne Mar 08, 2009 3:18 am

vytvoril som si kurzovi listok na php stranke http://www.navrchol.sk/kurz/kurz.php len teraz neviem ako ho vlozim na web http://www.navrchol.sk/index.php?id=59 namiesto kurzoveho listku webnovin...

dutch
PHP Support
PHP Support
Príspevky: 122
Dátum registrácie: So Dec 17, 2005 11:40 pm
Bydlisko: Mladá Boleslav
Kontaktovať užívateľa:

Re: Kurzovi listok

Príspevok od užívateľa dutch » Ne Mar 08, 2009 1:49 pm

No za predpokladu, ze ten tvuj listek neni jenom ciste html, proc proste neudelas novy snippet a nepripojis si ho do templaty?
Eto v1 - konečně ;) | Když se dva perou, třetí tam hodí granát...

Užívateľov profilový obrázok
_rasel^
ETOMITE Admin
ETOMITE Admin
Príspevky: 1122
Dátum registrácie: Ut Sep 20, 2005 1:03 am
Bydlisko: Košice (SR)
Kontaktovať užívateľa:

Re: Kurzovi listok

Príspevok od užívateľa _rasel^ » Ne Mar 08, 2009 2:39 pm

Ďalším riešením by bolo hodiť kurzový lístok do iframu, čo je najjednoduchšie riešenie, ale najviac zverské... takže to hneď v počiatku radšej zavrhneme. Čiže, tak ako hovorí dutch. Súbor kurz.php bude treba trošku upraviť, hodiť ako snippet a potom použitie v Etomite bude v pohode. Môžeš sem postnúť obsah toho súboru a pozriem sa nato (stačí dúfať, že je to php script, ktorý si ťahá aktuálny kurzový lístok).
..:: Etomite CMS → Rulezzz !.!.!. ::..

Užívateľov profilový obrázok
Marek Adamec
Medium Star
Medium Star
Príspevky: 246
Dátum registrácie: Pi Dec 28, 2007 7:58 pm
Bydlisko: Dubnica nad Váhom
Kontaktovať užívateľa:

Re: Kurzovi listok

Príspevok od užívateľa Marek Adamec » Ne Mar 08, 2009 3:58 pm

cez iframe to ide ale je to trochu posunute najlepsie by bolo to riesenie cez snipett. potreboval by som aby to malo sirku 150 px aby mi to voslo do sekcie dom menu...

tu je cely kod, a stahuje aktualne kurzy z ECB:

Kód: Vybrať všetko


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html> 
<head> 
<title>Kurzy mien</title> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
<style> 
   .currency { 
      font-family: Arial, sans-serif; 
      font-size: 12px; 
      background-color: #fff; 
   } 
   .currency .odd { 
      background-color: #fff; 
   } 
</style> 
</head> 
<body> 
<?php 
   function get_content($url) 
   { 
      $ch = curl_init(); 

      curl_setopt ($ch, CURLOPT_URL, $url); 
      curl_setopt ($ch, CURLOPT_HEADER, 0); 

      ob_start(); 

      curl_exec ($ch); 
      curl_close ($ch); 
      $string = ob_get_contents(); 

      ob_end_clean(); 

      return $string; 
   } 

   $currencies = array( 
      'USD' => array('flag' => 'http://www.navrchol.sk/kurz/usd.gif', 'country' => 'USA'), 
      'GBP' => array('flag' => 'http://www.navrchol.sk/kurz/gbp.gif', 'country' => 'Veľka Britania'), 
      'PLN' => array('flag' => 'http://www.navrchol.sk/kurz/pln.gif', 'country' => 'Poľsko'), 
      'HUF' => array('flag' => 'http://www.navrchol.sk/kurz/huf.gif', 'country' => 'Maďarsko'), 
      'JPY' => array('flag' => 'http://www.navrchol.sk/kurz/jpy.gif', 'country' => 'Japonsko'),
      'AUD' => array('flag' => 'http://www.navrchol.sk/kurz/aud.gif', 'country' => 'Austrália'),
      'DKK' => array('flag' => 'http://www.navrchol.sk/kurz/dkk.gif', 'country' => 'Dánsko'),
      'CAN' => array('flag' => 'http://www.navrchol.sk/kurz/can.gif', 'country' => 'Kanada'),
      'NOK' => array('flag' => 'http://www.navrchol.sk/kurz/nok.gif', 'country' => 'Nórsko'),
      'CHF' => array('flag' => 'http://www.navrchol.sk/kurz/chf.gif', 'country' => 'Švajčiarsko'),
      'SEK' => array('flag' => 'http://www.navrchol.sk/kurz/sek.gif', 'country' => 'Švédsko'),
      'EEK' => array('flag' => 'http://www.navrchol.sk/kurz/eek.gif', 'country' => 'Estónsko'),
      'LTL' => array('flag' => 'http://www.navrchol.sk/kurz/ltl.gif', 'country' => 'Lotyšsko'),
      'BGN' => array('flag' => 'http://www.navrchol.sk/kurz/bgn.gif', 'country' => 'Bulharsko'),
      'RON' => array('flag' => 'http://www.navrchol.sk/kurz/ron.gif', 'country' => 'Rumunsko'),     
      'CZK' => array('flag' => 'http://www.navrchol.sk/kurz/czk.gif', 'country' => 'Česko') 
   ); 

   function xml_vypis($xml) 
   { 
      global $currencies; 
       
      $i = 0; 
      $flag = ""; 
      $country = ""; 
      $vsetko = "<table class='currency'>\n"; 
      foreach($xml->Cube->Cube->Cube as $Nazov) { 
         $currency = (string)$Nazov['currency']; 

         if (isset($currencies[$currency])) { 
            $vsetko .= "<tr class='" . ($i & 1 == 1 ? 'odd' : '') . "'>  <td><img src='" . $currencies[$currency]['flag'] . "'></td> <td>1&euro;</td> <td></td><td></td>  <td>" . $Nazov['rate'] . "</td><td>" . $currency . "</td></tr>\n"; 
         } 

         $i++; 
      } 
      $vsetko .= "</table>\n"; 
      return $vsetko; 
   } 

   #usage: 
   $content = get_content("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml"); 

   $xml = simplexml_load_string($content); 

   utf8_decode($xml); 
   $vypis = xml_vypis($xml); 
   echo "".$vypis; 


   
?> 
</body> 
</html>

Naposledy upravil/-a Marek Adamec v Ne Mar 08, 2009 5:50 pm, upravené celkom 1 krát.

dutch
PHP Support
PHP Support
Príspevky: 122
Dátum registrácie: So Dec 17, 2005 11:40 pm
Bydlisko: Mladá Boleslav
Kontaktovať užívateľa:

Re: Kurzovi listok

Príspevok od užívateľa dutch » Ne Mar 08, 2009 5:32 pm

No tak nejdriv jsem se jal prepisovani toho kodu do snippetu, ale to se mi nejak nevedlo. Takze jsem se rozhodl vyuzit svuj stary snippet Wrapper a udelat to pres nej, jenze... Kdovi proc mi to nechce fungovat ve verzich 1.0 a vyssich, 0.6.x je OK - porovnejte ;) v1.1 & v0.6.1

snippet Wrapper je zde:

Kód: Vybrať všetko

###
#  Snippet: Wrapper
#  Autor: Jarda Travnicek | info(@)j-t.cz
#  Verze: 1.0a [2007-02-13]
#  Syntaxe: [[Wrapper?url=adresa-pro-zobrazeni]]
#    funkcnost odzkousena pouze u Eto v0.6.x
###

$curl_handle = curl_init(); /* inicializujeme novou curl session */
curl_setopt($curl_handle, CURLOPT_URL, $url); /* nastavime parametry curl session, CURLOPT_URL je URL, kterou chceme stáhnout */
curl_setopt($curl_handle, CURLOPT_POST, 1); /* parametry budeme predavat POSTem, takze nastavime 1 */
/*curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "");*/ /* pokud chceme poslat dalsi parametry, nastavime zde */
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1); /* pozadujeme vraceni vysledku, takze opet 1 */
$content = curl_exec($curl_handle); /* vse je nastaveno, zavedeme curl session se vsemi parametry, toto nam vrati obsah pozadavku v html */
curl_close($curl_handle); /* po uspesnem zavedeni curl session taky zavreme */

$result = $content; /* todle neni nutne, ale nevadi :) */

/* z toho, co nam vratil curl, vyluxujeme pouze obsah mezi <body></body> */
preg_match("/
				<\s*body
					(?:
						\s[^>]*
					)?
					\s*>
				(.*)
				<\s*\/\s*body\s*>
			/isx",
			$result,
			$body
			);

$body = @ $body[1];

/* pokud se neshoduji znakove sady, prevedeme je */
#$body = iconv('CP1250', 'UTF-8', $body);

return $body;
Obe verze jsou na php5, takze se to shoduje s tim, co mas ty (cim dal vic me ta 5 zacina stvat :o )
Eto v1 - konečně ;) | Když se dva perou, třetí tam hodí granát...

Napísať odpoveď