• 07-09-2012, 13:26:09
    #1
    Bir gayrimenkul projesi için kodladığım ufak bir class. İşinize yarayabilir.

    piyasalar.php
    <?php
    
    class Piyasalar {
    
    	var $temp_xml;
    
    	function __construct(){
    	
    		$this->url = 'http://realtime.paragaranti.com/asp/xml/icpiyasa.asp';
    	
    	}
    	
    	function get_data(){
    	
    		$data = @file_get_contents($this->url);
    		$this->temp_xml = $data;
    	
    	}
    	
    	function parse_data($node = ''){
    	
    		if(strlen($this->temp_xml) < 10) {
    			$this->get_data();
    		}
    
    		$nodes = explode('>', $node);
    
    		$node_count = count($nodes);
    		$data = $this->temp_xml;
    
    
    		for($i=0; $i < $node_count; $i++) {
    		$sme="";
    			if(strpos($nodes[$i], "[") > 1) {
    					$a = strpos($nodes[$i], "[");
    					$nodex = substr($nodes[$i], 0, strlen($nodes[$i]) - ($a-2));
    
    					$sme = substr($nodes[$i], $a+1, 1);
    
    			} else {
    			
    					$nodex = $nodes[$i];
    					
    			}
    
    			$data = explode('<'.$nodex.'>',$data);
    
    			if($sme != "") {
    
    				$data = explode('</'.$nodex.'>',$data[$sme]);
    				
    			} else {
    			
    				$data = explode('</'.$nodex.'>',$data[1]);
    			}
    					
    			$data = $data[0];
    
    		}
    		
    		return $data;
    	
    	}
    
    }
    
    define('P_DOLAR','Dolar');
    define('P_EURO','Euro');
    define('P_STERLIN','Sterlin');
    define('P_GOLD','Altın');
    define('P_IMKB','IMKB');
    
    $Para = new Piyasalar();
    
    ?>
    kullanım şekli;
     <table cellpadding="0" cellspacing="0" width="200">
      <tr>
        <td height="20"><?php echo P_DOLAR; ?></td>
        <td><div align="center"></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[2]>LAST'); ?></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[2]>PERNC'); ?></div></td>
      </tr>
      <tr>
        <td height="20"><?php echo P_EURO; ?></td>
    	<td><div align="center"></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[3]>LAST'); ?></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[3]>PERNC'); ?></div></td>
      </tr>
      <tr>
        <td height="20"><?php echo P_STERLIN; ?></td>
    <td><div align="center"></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[4]>LAST'); ?></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[4]>PERNC'); ?></div></td>
      </tr>
      <tr>
        <td height="20"><?php echo P_GOLD; ?></td>
    <td><div align="center"></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[5]>LAST'); ?></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[5]>PERNC'); ?></div></td>
      </tr>
       <tr>
        <td height="20"><?php echo P_IMKB; ?></td>
    <td><div align="center"></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[1]>LAST'); ?></div></td>
        <td><div align="right"><?php echo $Para->parse_data('ICPIYASA>STOCK[1]>PERNC'); ?></div></td>
      </tr>
    </table>
    demo

    kolay gelsin.
  • 13-10-2012, 23:18:05
    #2
    teşekkürler..
  • 14-10-2012, 03:07:23
    #3
    Rica ederim. Umarım işinizi görmüştür.

    İyi çalışmalar.
  • 14-10-2012, 15:59:57
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    var $url; eklemelisin. $this->url ile çağırıyorsun.
  • 28-10-2012, 23:31:09
    #5
    denedim çalışmadı..
  • 25-11-2012, 02:02:39
    #6
    kodlar çalışıyor halen bir sorun yok. nerede denediniz acaba?
  • 25-11-2012, 02:31:13
    #7
    Merhaba arkadaşlar,

    sistemi sıfırdan yazıp sizle paylaşmak istedim.buyrun kodlar ve uygulamalı örneği

    sınıf kodlarımız ;

    <?php
    	/**
    	*
    	* Garanti İç Piyasa Botu
    	*
    	* @author: saintx (Ogün KARAKUŞ)
    	* @date: 25.11.2012
    	* @web: http://saintx.net/
    	**/
    	
    	class PIYASALAR {
    		/* Class Constant(s) */
    		const URL = 'http://realtime.paragaranti.com/asp/xml/icpiyasa.asp';
    		
    		/* Class Variable(s) */
    		public $xml_data;
    		public $values;
    		
    		/* Class Method(s) */
    		public function __construct() {
    			$this->xml_data = $this->objects_into_array(simplexml_load_string($this->html(PIYASALAR::URL, true, 'ISO-8859-9', 'UTF-8')));
    			$this->values = $this->fetch_xml_data($this->xml_data['STOCK']);
    		}
    		
    		public function objects_into_array($arrObjData, $arrSkipIndices = array())
    		{
    			$arrData = array();
    			if(is_object($arrObjData)) {
    				$arrObjData = get_object_vars($arrObjData);
    			}
    			
    			if (is_array($arrObjData)) {
    				foreach ($arrObjData as $index => $value) {
    					if(is_object($value) || is_array($value)) {
    						$value = $this->objects_into_array($value, $arrSkipIndices);
    					}
    					if(in_array($index, $arrSkipIndices)) {
    						continue;
    					}
    					$arrData[$index] = $value;
    				}
    			}
    			return $arrData;
    		}
    		
    		public function fetch_xml_data($xml_data) {
    			return array(
    				'P_DOLAR' => array(
    					'LAST'  => $xml_data[1]['LAST'],
    					'PERNC' => $xml_data[1]['PERNC']
    				),
    				'P_EURO' => array(
    					'LAST'  => $xml_data[2]['LAST'],
    					'PERNC' => $xml_data[2]['PERNC']
    				),
    				'P_STERLIN' => array(
    					'LAST'  => $xml_data[3]['LAST'],
    					'PERNC' => $xml_data[3]['PERNC']
    				),
    				'P_GOLD' => array(
    					'LAST'  => $xml_data[4]['LAST'],
    					'PERNC' => $xml_data[4]['PERNC']
    				),
    				'P_IMKB' => array(
    					'LAST'  => $xml_data[0]['LAST'],
    					'PERNC' => $xml_data[0]['PERNC']
    				),
    			);
    		}
    		
    		public function html($url, $iconv=false, $iconv_in_charset=null, $iconv_out_charset=null) {
    			return ($iconv) ? iconv($iconv_in_charset, $iconv_out_charset, @file_get_contents($url)) : @file_get_contents($url);
    		}
    	}
    ?>
    kullanımı ;
    <?php
    	$PIYASALAR = new PIYASALAR;
    	
    	echo 'DOLAR => <br />Şuanki alış değeri =>'.$PIYASALAR->values['P_DOLAR']['LAST'].'<br />Yükselme Değeri =>'.$PIYASALAR->values['P_DOLAR']['PERNC'].'<br />';
    ?>
  • 25-11-2012, 12:58:13
    #8
    wordpresste nasıl kullanırız?
  • 26-11-2012, 19:24:00
    #9
    osmaniyeweb adlı üyeden alıntı: mesajı görüntüle
    wordpresste nasıl kullanırız?
    müsait bir vaktimde wordpress için eklenti halinide yapar koyarım.