<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2enclosuresfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-857096647483323724</atom:id><lastBuildDate>Tue, 01 Nov 2011 06:06:42 +0000</lastBuildDate><category>linux</category><category>ORACLE</category><category>Python</category><category>Croogo</category><category>jQuery</category><category>EXCEL</category><category>mysql</category><category>Scrapers</category><category>Shout Out</category><category>Developer Tool</category><category>Poor Design</category><category>XML</category><category>Tutorial</category><category>JAVASCRIPT</category><category>Pattern</category><category>PHP</category><category>xampp</category><category>captcha</category><category>Joomla</category><category>css</category><category>lampp</category><category>BUG</category><category>cakephp</category><category>Crawlers</category><category>Combination</category><category>simple framework</category><category>Flashdata</category><category>Apache</category><category>Codeigniter</category><category>search4Gold</category><category>plugins</category><title>World of Bauds</title><description>kritik+saran are VERY welcome!</description><link>http://blog.robotekindo.net/</link><managingEditor>noreply@blogger.com (adesst)</managingEditor><generator>Blogger</generator><openSearch:totalResults>45</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/PhpForLife" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="phpforlife" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><itunes:explicit>no</itunes:explicit><itunes:subtitle>kritik+saran are VERY welcome!</itunes:subtitle><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-3329872518713611886</guid><pubDate>Tue, 01 Nov 2011 04:52:00 +0000</pubDate><atom:updated>2011-10-31T23:06:42.426-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">lampp</category><category domain="http://www.blogger.com/atom/ns#">mysql</category><category domain="http://www.blogger.com/atom/ns#">linux</category><category domain="http://www.blogger.com/atom/ns#">xampp</category><title>LAMPP Couldn't start MySQL!</title><description>Today i've experienced that MySQL of XAMPP 1.7.7 (Linux) couldn't be started.&lt;br /&gt;I am using F14 64bit, after several duckduckgo and google finally a light.&lt;br /&gt;Here is the how to:&lt;br /&gt;&lt;pre&gt;1. chown -Rf myself.mygroup /opt/lampp/var/mysql&lt;br /&gt;(**note that your lampp installation path may be vary,&lt;br /&gt;   to keep it simple i use the default)&lt;br /&gt;&lt;br /&gt;2. edit the /opt/lampp/etc/my.cnf&lt;br /&gt;[mysqld]&lt;br /&gt;user = nobody&lt;br /&gt;to&lt;br /&gt;user = myself&lt;br /&gt;&lt;br /&gt;*) modify myself and mygroup to your linux username and group&lt;br /&gt;&lt;/pre&gt;Thats it, run the mysql, /opt/lampp/lampp startmysql and hopefully it will start with&lt;br /&gt;any problem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-3329872518713611886?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2011/10/lampp-couldnt-start-mysql.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-4474010479547554824</guid><pubDate>Thu, 06 Jan 2011 14:18:00 +0000</pubDate><atom:updated>2011-01-06T06:20:43.178-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">cakephp</category><category domain="http://www.blogger.com/atom/ns#">plugins</category><category domain="http://www.blogger.com/atom/ns#">css</category><category domain="http://www.blogger.com/atom/ns#">Croogo</category><title>CakePHP Croogo Plugins CSS.</title><description>I had solved how to load plugin css in Croogo CMS.&lt;br /&gt;Simply add these,&lt;br /&gt;&lt;br /&gt;in app/plugin/&lt;b&gt;myplugin&lt;/b&gt;/views/helpers/&lt;b&gt;myplugin.php&lt;/b&gt;&lt;br /&gt;&lt;pre&gt;public function beforeRender() {&lt;br /&gt;  if($this-&amp;gt;Layout-&amp;gt;View !== false)&lt;br /&gt;  {&lt;br /&gt; $this-&amp;gt;Layout-&amp;gt;View-&amp;gt;addScript($this-&amp;gt;Html-&amp;gt;css('/myplugin/css/myplugin'));&lt;br /&gt;  }&lt;br /&gt;}&lt;/pre&gt;and in app/plugin/&lt;b&gt;myplugin&lt;/b&gt;/config/myplugin_bootstrap.php&lt;br /&gt;make sure you have declared&lt;br /&gt;&lt;br /&gt;// As in Croogo documentation &lt;br /&gt;// Home → Wiki → Developers → Plugins → Hooks &lt;br /&gt;// To hook your plugin's ExampleHelper &lt;br /&gt;// (at app/plugins/example/views/helpers/example.php) &lt;br /&gt;// in ALL controllers:&lt;br /&gt;Croogo::hookHelper('*', 'Myplugin.Myplugin');&lt;br /&gt;&lt;br /&gt;Hope it helps, happy baking.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-4474010479547554824?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2011/01/cakephp-croogo-plugins-css.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-1973027535277333502</guid><pubDate>Wed, 05 Jan 2011 05:05:00 +0000</pubDate><atom:updated>2011-01-04T22:49:17.721-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">captcha</category><category domain="http://www.blogger.com/atom/ns#">cakephp</category><title>CakePHP Captcha component with Securimage</title><description>I had made some changes so the component could work with cakePhp 1.3,&lt;br /&gt;or at least it works in my application. The original article is &lt;br /&gt;&lt;a href="http://bakery.cakephp.org/articles/debuggeddesigns/2009/03/09/captcha-component-with-securimage"&gt;here&lt;/a&gt;, &lt;a href="http://www.phpcaptcha.org/download/"&gt;download&lt;/a&gt; the latest and the &lt;a href="https://bitbucket.org/adesst/cakephp-securimage/downloads/cakephp-secureimage.zip"&gt;code&lt;/a&gt; i have modified.&lt;br /&gt;Make sure you have:&lt;br /&gt;&lt;br /&gt;1. Copied the component file into your app/controllers/components.&lt;br /&gt;2. Copied the view file into your app/views/element/&lt;br /&gt;3. To use "captcha_code" field form input.&lt;br /&gt;&lt;br /&gt;You could "diff" to see what changes i had made in the code,&lt;br /&gt;specially the component file. Hope it helps.&lt;br /&gt;&lt;br /&gt;Happy baking.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-1973027535277333502?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2011/01/captcha-component-with-securimage.html</link><author>noreply@blogger.com (adesst)</author><thr:total>5</thr:total><enclosure url="https://bitbucket.org/adesst/cakephp-securimage/downloads/cakephp-secureimage.zip" length="1210771" type="application/zip" /><media:content url="https://bitbucket.org/adesst/cakephp-securimage/downloads/cakephp-secureimage.zip" fileSize="1210771" type="application/zip" /><itunes:explicit>no</itunes:explicit><itunes:subtitle>I had made some changes so the component could work with cakePhp 1.3, or at least it works in my application. The original article is here, download the latest and the code i have modified. Make sure you have: 1. Copied the component file into your app/co</itunes:subtitle><itunes:author>noreply@blogger.com (adesst)</itunes:author><itunes:summary>I had made some changes so the component could work with cakePhp 1.3, or at least it works in my application. The original article is here, download the latest and the code i have modified. Make sure you have: 1. Copied the component file into your app/controllers/components. 2. Copied the view file into your app/views/element/ 3. To use "captcha_code" field form input. You could "diff" to see what changes i had made in the code, specially the component file. Hope it helps. Happy baking.</itunes:summary><itunes:keywords>captcha, cakephp</itunes:keywords></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-7245932453892080659</guid><pubDate>Sat, 26 Jun 2010 11:49:00 +0000</pubDate><atom:updated>2010-06-26T23:24:52.340-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Codeigniter</category><category domain="http://www.blogger.com/atom/ns#">BUG</category><title>Codeigniter Language Class Bug!</title><description>Saya sedang membangun web site yg support 2 bahasa.&lt;br /&gt;Alhasil, sempat dibuat frustasi oleh CI. Setelah &lt;br /&gt;setengah hari berkonsultasi ke google dan forum &lt;br /&gt;hasil nya nihil. Kira2 begini masalah nya:&lt;br /&gt;&lt;pre&gt;1. ./system/application/config/config.php&lt;br /&gt;  $language = "indonesia"; # default indonesia&lt;br /&gt;  &lt;br /&gt;2. ./system/application/config/autoload.php&lt;br /&gt;  $language = array('caption');&lt;br /&gt;  &lt;br /&gt;3. ./system/application/language/english/caption_lang.php&lt;br /&gt;  $lang['caption_welcome'] = 'Welcome';&lt;br /&gt;  &lt;br /&gt;4. ./system/application/language/indonesia/caption_lang.php&lt;br /&gt;  $lang['caption_welcome'] = 'Selamat datang';&lt;br /&gt;  &lt;br /&gt;5. ./system/application/controllers/welcome.php&lt;br /&gt;  $this-&amp;gt;load-&amp;gt;library('config');&lt;br /&gt;  $this-&amp;gt;config-&amp;gt;set_item('language','english');&lt;br /&gt;  $this-&amp;gt;lang-&amp;gt;load('caption');&lt;br /&gt;  &lt;br /&gt;  echo  $this-&amp;gt;lang-&amp;gt;line('caption_welcome');&lt;br /&gt;  &lt;br /&gt;Expected Result:&lt;br /&gt;Welcome&lt;br /&gt;&lt;br /&gt;Actual Result:&lt;br /&gt;Selamat datang&lt;br /&gt;&lt;br /&gt;Fixes:&lt;br /&gt;create a file Language.php into your ./system/application/library&lt;br /&gt;&lt;br /&gt;&amp;lt;?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');&lt;br /&gt;/**&lt;br /&gt; * CodeIgniter&lt;br /&gt; *&lt;br /&gt; * An open source application development framework for PHP 4.3.2 or newer&lt;br /&gt; *&lt;br /&gt; * @package    CodeIgniter&lt;br /&gt; * @author    ExpressionEngine Dev Team&lt;br /&gt; * @copyright  Copyright (c) 2008 - 2009, EllisLab, Inc.&lt;br /&gt; * @license    http://codeigniter.com/user_guide/license.html&lt;br /&gt; * @link    http://codeigniter.com&lt;br /&gt; * @since    Version 1.0&lt;br /&gt; * @filesource&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;// ------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt; * Language Class&lt;br /&gt; *&lt;br /&gt; * @package    CodeIgniter&lt;br /&gt; * @subpackage  Libraries&lt;br /&gt; * @category  Language&lt;br /&gt; * @author    ExpressionEngine Dev Team&lt;br /&gt; * @link    http://codeigniter.com/user_guide/libraries/language.html&lt;br /&gt; */&lt;br /&gt;class CI_Language {&lt;br /&gt;&lt;br /&gt;  var $language         = array();&lt;br /&gt;  var $is_loaded        = array();&lt;br /&gt;  var $current_language = '';&lt;br /&gt;  var $mode             = 'Replacement';&lt;br /&gt;&lt;br /&gt;  /**&lt;br /&gt;   * Constructor&lt;br /&gt;   *&lt;br /&gt;   * @access  public&lt;br /&gt;   */&lt;br /&gt;  function CI_Language()&lt;br /&gt;  {&lt;br /&gt;    log_message('debug', "Replacement of Language Class Initialized");&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  // --------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  /**&lt;br /&gt;   * Load a language file&lt;br /&gt;   *&lt;br /&gt;   * @access  public&lt;br /&gt;   * @param  mixed  the name of the language file to be loaded. Can be an array&lt;br /&gt;   * @param  string  the language (english, etc.)&lt;br /&gt;   * @return  mixed&lt;br /&gt;   */&lt;br /&gt;  function load($langfile = '', $idiom = '', $return = FALSE)&lt;br /&gt;  {&lt;br /&gt;    $langfile = str_replace(EXT, '', str_replace('_lang.', '', $langfile)).'_lang'.EXT;&lt;br /&gt;&lt;br /&gt;    if (in_array($langfile, $this-&amp;gt;is_loaded, TRUE))&lt;br /&gt;    {&lt;br /&gt;      if($this-&amp;gt;current_language == '' ||&lt;br /&gt;         $this-&amp;gt;current_language == $idiom){&lt;br /&gt;&lt;br /&gt;        return;&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    if ($idiom == '')&lt;br /&gt;    {&lt;br /&gt;      $CI =&amp; get_instance();&lt;br /&gt;      $deft_lang = $CI-&amp;gt;config-&amp;gt;item('language');&lt;br /&gt;      $idiom = ($deft_lang == '') ? 'english' : $deft_lang;&lt;br /&gt;    }else{&lt;br /&gt;&lt;br /&gt;      if($this-&amp;gt;current_language != $idiom){&lt;br /&gt;&lt;br /&gt;        $this-&amp;gt;is_loaded = array();&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    $this-&amp;gt;current_language = $idiom;&lt;br /&gt;&lt;br /&gt;    // Determine where the language file is and load it&lt;br /&gt;    if (file_exists(APPPATH.'language/'.$idiom.'/'.$langfile))&lt;br /&gt;    {&lt;br /&gt;      include(APPPATH.'language/'.$idiom.'/'.$langfile);&lt;br /&gt;    }&lt;br /&gt;    else&lt;br /&gt;    {&lt;br /&gt;      if (file_exists(BASEPATH.'language/'.$idiom.'/'.$langfile))&lt;br /&gt;      {&lt;br /&gt;        include(BASEPATH.'language/'.$idiom.'/'.$langfile);&lt;br /&gt;      }&lt;br /&gt;      else&lt;br /&gt;      {&lt;br /&gt;        show_error('Unable to load the requested language file: language/'.$idiom.'/'.$langfile);&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    if ( ! isset($lang))&lt;br /&gt;    {&lt;br /&gt;      log_message('error', 'Language file contains no data: language/'.$idiom.'/'.$langfile);&lt;br /&gt;      return;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    if ($return == TRUE)&lt;br /&gt;    {&lt;br /&gt;      return $lang;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    $this-&amp;gt;is_loaded[] = $langfile;&lt;br /&gt;    $this-&amp;gt;language = array_merge($this-&amp;gt;language, $lang);&lt;br /&gt;    unset($lang);&lt;br /&gt;&lt;br /&gt;    log_message('debug', 'Language file loaded: language/'.$idiom.'/'.$langfile);&lt;br /&gt;    return TRUE;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  // --------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;  /**&lt;br /&gt;   * Fetch a single line of text from the language array&lt;br /&gt;   *&lt;br /&gt;   * @access  public&lt;br /&gt;   * @param  string  $line   the language line&lt;br /&gt;   * @return  string&lt;br /&gt;   */&lt;br /&gt;  function line($line = '')&lt;br /&gt;  {&lt;br /&gt;    $line = ($line == '' OR ! isset($this-&amp;gt;language[$line])) ? FALSE : $this-&amp;gt;language[$line];&lt;br /&gt;    return $line;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;// END Language Class&lt;br /&gt;&lt;br /&gt;/* End of file Language.php */&lt;br /&gt;/* Location: ./system/application/libraries/Language.php */&lt;/pre&gt;Komentar: Library native saya replace, jadi tidak ada core hack.&lt;br /&gt;perhatikan, saya menambahkan var $current_language yg penggunaannya&lt;br /&gt;cukup desktriptif. Lalu saya menambahkan pengecekan di in_array()&lt;br /&gt;dan ada peng-reset-an &lt;br /&gt;&lt;pre&gt;...&lt;br /&gt;if($this-&gt;current_language != $idiom){&lt;br /&gt;&lt;br /&gt;  $this-&gt;is_loaded = array();&lt;br /&gt;}&lt;br /&gt;...&lt;/pre&gt;utk memastikan ketika terjadi penggantian bahasa, var $lang&lt;br /&gt;yg telah di cache ter-reset. Semoga membantu.&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-7245932453892080659?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/06/codeigniter-language-class-bug.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-763455188157169990</guid><pubDate>Sat, 05 Jun 2010 08:34:00 +0000</pubDate><atom:updated>2010-06-05T01:39:55.133-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Crawlers</category><category domain="http://www.blogger.com/atom/ns#">Scrapers</category><category domain="http://www.blogger.com/atom/ns#">Python</category><title>Python, Scrapy Installation Step-by-step</title><description>Wahh... kok mainnya sekarang python? Hahhaha&lt;br /&gt;sangat berbisa! Anyway di artikel ini gw&lt;br /&gt;mau bagiin caranya install makhluk yg satu ini.&lt;br /&gt;Sebelumnya apaan sehh itu Scrapy? Gampangnya&lt;br /&gt;light framework utk web crawler! Utk apa tuh&lt;br /&gt;crawler? crawler atau spider crawler biasanya &lt;br /&gt;digunakan utk mengumpulkan informasi dari suatu&lt;br /&gt;web site, entah itu link nya atau content nya.&lt;br /&gt;&lt;br /&gt;Informasi ini nanti nya bisa diolah sedemikian &lt;br /&gt;rupa utk keperluan tertentu. Misalkan utk statistik&lt;br /&gt;penggunaan kata yg di mana akan dibobotkan dan &lt;br /&gt;dijadikan misalnya utk data penyusun "tag clouds".&lt;br /&gt;Ok, gw akan tunjukkin gimana cara install nya di &lt;br /&gt;windows.&lt;br /&gt;&lt;br /&gt;1. install python dari sini unduh nya &lt;a href="http://www.python.org/download/"&gt;http://www.python.org/download/&lt;/a&gt;,&lt;br /&gt;   gw seh pake nya python2.6 run .exe atau .msi nya&lt;br /&gt;2. &lt;a href="http://twistedmatrix.com/trac/wiki/Downloads"&gt;Twisted for windows&lt;/a&gt;&lt;br /&gt;   unduh dan run .msi nya&lt;br /&gt;3. &lt;a href="http://pypi.python.org/pypi/zope.interface#download"&gt;Zope.interface&lt;/a&gt;&lt;br /&gt;   nah yg ini butuh penjelasan lbh lanjut, pastikan download source nya.&lt;br /&gt;   Setelah itu unzip lalu ketik ini di command line "python setup.py install"&lt;br /&gt;4. &lt;a href="http://users.skynet.be/sbi/libxml-python/"&gt;libxml2 for windows&lt;/a&gt;&lt;br /&gt;   unduh dan run .msi nya&lt;br /&gt;5. &lt;a href="http://sourceforge.net/project/showfiles.php?group_id=31249"&gt;PyOpenSSL for Windows&lt;/a&gt;&lt;br /&gt;   unduh dan run .msi nya&lt;br /&gt;6. &lt;a href="http://scrapy.org/releases/0.8/Scrapy-0.8.win32.exe"&gt;Scrapy-0.8.win32.exe&lt;/a&gt;&lt;br /&gt;   unduh dan run .msi nya&lt;br /&gt;7. &lt;a href="http://scrapy.org/releases/0.8/Scrapy-0.8.tar.gz"&gt;Scrapy-0.8 source&lt;/a&gt;&lt;br /&gt;   unduh, unzip dan run ini di command line "python setup.py install"&lt;br /&gt;8. masih di dalam direktori hasil unzip source Scrapy, buka direktori example scripts,&lt;br /&gt;   lalu ketik ini "python count_and_follow_links.py http://adesanto-asman.blogspot.com 2"&lt;br /&gt;   atau "python count_and_follow_links.py" nanti akan ada help yg muncul&lt;br /&gt;&lt;br /&gt;Sekedar tambahan, utk file dg extension&lt;br /&gt;".egg" adalah merupakan file yg ter-zip.&lt;br /&gt;Utk unzip nya pakai &lt;a href="http://peak.telecommunity.com/DevCenter/EasyInstall"&gt;easy_install&lt;/a&gt;&lt;br /&gt;Selamat mencoba dan happy crawling.&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-763455188157169990?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/06/python-scrapy-installation-step-by-step.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total><enclosure url="http://scrapy.org/releases/0.8/Scrapy-0.8.win32.exe" length="572587" type="application/x-msdos-program" /><media:content url="http://scrapy.org/releases/0.8/Scrapy-0.8.win32.exe" fileSize="572587" type="application/x-msdos-program" /><itunes:explicit>no</itunes:explicit><itunes:subtitle>Wahh... kok mainnya sekarang python? Hahhaha sangat berbisa! Anyway di artikel ini gw mau bagiin caranya install makhluk yg satu ini. Sebelumnya apaan sehh itu Scrapy? Gampangnya light framework utk web crawler! Utk apa tuh crawler? crawler atau spider cr</itunes:subtitle><itunes:author>noreply@blogger.com (adesst)</itunes:author><itunes:summary>Wahh... kok mainnya sekarang python? Hahhaha sangat berbisa! Anyway di artikel ini gw mau bagiin caranya install makhluk yg satu ini. Sebelumnya apaan sehh itu Scrapy? Gampangnya light framework utk web crawler! Utk apa tuh crawler? crawler atau spider crawler biasanya digunakan utk mengumpulkan informasi dari suatu web site, entah itu link nya atau content nya. Informasi ini nanti nya bisa diolah sedemikian rupa utk keperluan tertentu. Misalkan utk statistik penggunaan kata yg di mana akan dibobotkan dan dijadikan misalnya utk data penyusun "tag clouds". Ok, gw akan tunjukkin gimana cara install nya di windows. 1. install python dari sini unduh nya http://www.python.org/download/, gw seh pake nya python2.6 run .exe atau .msi nya 2. Twisted for windows unduh dan run .msi nya 3. Zope.interface nah yg ini butuh penjelasan lbh lanjut, pastikan download source nya. Setelah itu unzip lalu ketik ini di command line "python setup.py install" 4. libxml2 for windows unduh dan run .msi nya 5. PyOpenSSL for Windows unduh dan run .msi nya 6. Scrapy-0.8.win32.exe unduh dan run .msi nya 7. Scrapy-0.8 source unduh, unzip dan run ini di command line "python setup.py install" 8. masih di dalam direktori hasil unzip source Scrapy, buka direktori example scripts, lalu ketik ini "python count_and_follow_links.py http://adesanto-asman.blogspot.com 2" atau "python count_and_follow_links.py" nanti akan ada help yg muncul Sekedar tambahan, utk file dg extension ".egg" adalah merupakan file yg ter-zip. Utk unzip nya pakai easy_install Selamat mencoba dan happy crawling. Coding for life, coding with ethic.</itunes:summary><itunes:keywords>Crawlers, Scrapers, Python</itunes:keywords></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-4863645397344783654</guid><pubDate>Sat, 05 Jun 2010 03:45:00 +0000</pubDate><atom:updated>2010-06-04T20:48:29.396-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Joomla</category><category domain="http://www.blogger.com/atom/ns#">JAVASCRIPT</category><title>Joomla! Embed Javascript in Article</title><description>Buat sharing aja. Kalau di dalam artikel&lt;br /&gt;dapat di sisipkan Javascript. Caranya:&lt;br /&gt;1. Login di administrator site.&lt;br /&gt;2. Buka artikel manager.&lt;br /&gt;3. Tulis baru atau edit yg sudah ada.&lt;br /&gt;4. Plugin editor akan muncul,&lt;br /&gt;   Klick "html", muncul window utk&lt;br /&gt;   meng-edit Html source.&lt;br /&gt;5. Masukan tag script selayaknya kita&lt;br /&gt;   menyisipkan Javascript.&lt;br /&gt;&lt;pre&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;alert("Hello, i've been embedded in an article!");&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;6. Save atau apply.&lt;br /&gt;7. Buka artikel tersebut melalui&lt;br /&gt;   front page.&lt;br /&gt;8. Ketika artikel selesai load,&lt;br /&gt;   seharus nya alert box akan muncul.&lt;br /&gt;&lt;br /&gt;Semoga membantu. Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-4863645397344783654?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/06/joomla-embed-javascript-in-article.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-7072336031302313769</guid><pubDate>Fri, 28 May 2010 14:25:00 +0000</pubDate><atom:updated>2010-05-28T07:28:00.496-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JAVASCRIPT</category><category domain="http://www.blogger.com/atom/ns#">jQuery</category><title>jQuery Rebind After Ajax Call</title><description>Hampir 2 jam lamanya, gw muter2 di coding &lt;br /&gt;JAVASCRIPT. Bingung kenapa innerHTML yg &lt;br /&gt;di "isi" oleh AJAX yg terdapat sisipan &lt;br /&gt;JAVASCRIPT ga jalan.Nah utk lebih jelas nya &lt;br /&gt;silahkan dicuba code di bawah ini. &lt;br /&gt;Sebelumnya pastikan jQuery sudah&lt;br /&gt;ter-"install" jika belum silahkan download &lt;br /&gt;di sini &lt;strong&gt;&lt;a href="http://code.jquery.com/jquery-1.4.2.min.js"&gt;Download jQuery&lt;/a&gt;&lt;/strong&gt;.&lt;br /&gt;&lt;pre&gt;&amp;lt;!-- file: index.html --&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;  &amp;lt;script type="text/javascript" src="jquery-1.4.2.min.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;  &amp;lt;div id="test1"&amp;gt;&lt;br /&gt;    Mouse over me please&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;  &amp;lt;div id="data-container"&amp;gt;&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;  $('#test1').mouseover(function(){&lt;br /&gt;  &lt;br /&gt;    alert('test1 triggered');&lt;br /&gt;    &lt;br /&gt;    $.post('data.html',function(data){&lt;br /&gt;    &lt;br /&gt;      $('#data-container').html(data);&lt;br /&gt;    });&lt;br /&gt;  });&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&amp;lt;!-- end of: index.html --&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;!-- file: data.html --&amp;gt;&lt;br /&gt;&amp;lt;div id="test2"&amp;gt;Request Complete, try mouse over to trigger alert&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;  $('#test2').mouseover(function(){&lt;br /&gt;  &lt;br /&gt;    alert('test2 triggered');&lt;br /&gt;  });&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;!-- end of: data.html --&amp;gt;&lt;/pre&gt;Humm... aneh kan? Fungsi alert seakan2 tidak&lt;br /&gt;tereksekusi. Nah solusi nya di cuba code &lt;br /&gt;di bawah ini.&lt;br /&gt;&lt;pre&gt;&amp;lt;!-- file: index.html --&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;  &amp;lt;script type="text/javascript" src="jquery-1.4.2.min.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;  &amp;lt;div id="test1"&amp;gt;&lt;br /&gt;    Mouse over me please&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;  &amp;lt;div id="data-container"&amp;gt;&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;  $('#test1').mouseover(function(){&lt;br /&gt;  &lt;br /&gt;    alert('test1 triggered');&lt;br /&gt;    &lt;br /&gt;    $('#data-container').load('data.html',function(data){&lt;br /&gt;    &lt;br /&gt;      // Re-Bind&lt;br /&gt;      $('#test2').mouseover(function(){&lt;br /&gt;  &lt;br /&gt;        alert('test2 triggered');&lt;br /&gt;      });&lt;br /&gt;    });&lt;br /&gt;  });&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&amp;lt;!-- end of: index.html --&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;!-- file: data.html --&amp;gt;&lt;br /&gt;&amp;lt;div id="test2"&amp;gt;Request Complete, try mouse over to trigger alert&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;!-- end of: data.html --&amp;gt;&lt;/pre&gt;Semoga membantu.&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-7072336031302313769?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/05/jquery-rebind-after-ajax-call.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total><enclosure url="http://code.jquery.com/jquery-1.4.2.min.js" length="72174" type="application/x-javascript" /><media:content url="http://code.jquery.com/jquery-1.4.2.min.js" fileSize="72174" type="application/x-javascript" /><itunes:explicit>no</itunes:explicit><itunes:subtitle>Hampir 2 jam lamanya, gw muter2 di coding JAVASCRIPT. Bingung kenapa innerHTML yg di "isi" oleh AJAX yg terdapat sisipan JAVASCRIPT ga jalan.Nah utk lebih jelas nya silahkan dicuba code di bawah ini. Sebelumnya pastikan jQuery sudah ter-"install" jika bel</itunes:subtitle><itunes:author>noreply@blogger.com (adesst)</itunes:author><itunes:summary>Hampir 2 jam lamanya, gw muter2 di coding JAVASCRIPT. Bingung kenapa innerHTML yg di "isi" oleh AJAX yg terdapat sisipan JAVASCRIPT ga jalan.Nah utk lebih jelas nya silahkan dicuba code di bawah ini. Sebelumnya pastikan jQuery sudah ter-"install" jika belum silahkan download di sini Download jQuery. &amp;lt;!-- file: index.html --&amp;gt; &amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &amp;lt;script type="text/javascript" src="jquery-1.4.2.min.js"&amp;gt;&amp;lt;/script&amp;gt; &amp;lt;/head&amp;gt; &amp;lt;body&amp;gt; &amp;lt;div id="test1"&amp;gt; Mouse over me please &amp;lt;/div&amp;gt; &amp;lt;div id="data-container"&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/body&amp;gt; &amp;lt;script type="text/javascript"&amp;gt; $('#test1').mouseover(function(){ alert('test1 triggered'); $.post('data.html',function(data){ $('#data-container').html(data); }); }); &amp;lt;/script&amp;gt; &amp;lt;/html&amp;gt; &amp;lt;!-- end of: index.html --&amp;gt; &amp;lt;!-- file: data.html --&amp;gt; &amp;lt;div id="test2"&amp;gt;Request Complete, try mouse over to trigger alert&amp;lt;/div&amp;gt; &amp;lt;script type="text/javascript"&amp;gt; $('#test2').mouseover(function(){ alert('test2 triggered'); }); &amp;lt;/script&amp;gt; &amp;lt;!-- end of: data.html --&amp;gt;Humm... aneh kan? Fungsi alert seakan2 tidak tereksekusi. Nah solusi nya di cuba code di bawah ini. &amp;lt;!-- file: index.html --&amp;gt; &amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &amp;lt;script type="text/javascript" src="jquery-1.4.2.min.js"&amp;gt;&amp;lt;/script&amp;gt; &amp;lt;/head&amp;gt; &amp;lt;body&amp;gt; &amp;lt;div id="test1"&amp;gt; Mouse over me please &amp;lt;/div&amp;gt; &amp;lt;div id="data-container"&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/body&amp;gt; &amp;lt;script type="text/javascript"&amp;gt; $('#test1').mouseover(function(){ alert('test1 triggered'); $('#data-container').load('data.html',function(data){ // Re-Bind $('#test2').mouseover(function(){ alert('test2 triggered'); }); }); }); &amp;lt;/script&amp;gt; &amp;lt;/html&amp;gt; &amp;lt;!-- end of: index.html --&amp;gt; &amp;lt;!-- file: data.html --&amp;gt; &amp;lt;div id="test2"&amp;gt;Request Complete, try mouse over to trigger alert&amp;lt;/div&amp;gt; &amp;lt;!-- end of: data.html --&amp;gt;Semoga membantu. Coding for life, coding with ethic.</itunes:summary><itunes:keywords>JAVASCRIPT, jQuery</itunes:keywords></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-1820499530828199359</guid><pubDate>Sun, 16 May 2010 00:16:00 +0000</pubDate><atom:updated>2010-05-15T17:50:02.236-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JAVASCRIPT</category><category domain="http://www.blogger.com/atom/ns#">jQuery</category><title>jQuery Simple Modal</title><description>Sudah pernah dengar jQuery? Kalo belum segera ke TKP! &lt;br /&gt;&lt;a href="jquery.com"&gt;jQuery: The Write Less, Do More, JavaScript Library&lt;/a&gt;&lt;br /&gt;Karena web application akan terasa sperti desktop application.&lt;br /&gt;Belum lagi dukungan utk Ajax yg super simple.&lt;br /&gt;Benar2 buat life so easier...&lt;br /&gt;&lt;br /&gt;Nah setelah download tuh jQuery, gw mau bahas neh&lt;br /&gt;tentang modal window. Apa sehh modal window? Kalo yg&lt;br /&gt;pernah megang java pasti tau banget nehh. Modal window&lt;br /&gt;itu adalah dimana user "dipaksa" antar muka&lt;br /&gt;terhadap suatu window saja. Contoh nya, cuba&lt;br /&gt;taruh script ini.&lt;br /&gt;&lt;pre&gt;&amp;lt;script&amp;gt;alert("Native modal");&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;Udah dapet dunk bayangan nya? cuba dehh klik area&lt;br /&gt;lain tapi masih dalam scope browser tsb yahh,&lt;br /&gt;atau parent application nya. Nahh kl udah dapet&lt;br /&gt;gambarannya, skg bagaimana caranya supaya tuh&lt;br /&gt;modal muncul sesuai dg design kita? Kalau&lt;br /&gt;dengan jQuery hanya cukup dg&lt;br /&gt;&lt;pre&gt;$("#element-id").modal();&lt;/pre&gt;&lt;br /&gt;Se-simple itu kah? Lahh judul artikel ini apa?&lt;br /&gt;Simple Modal! hahahahhaha. Ini referensi nya&lt;br /&gt;langsung, &lt;a href="http://komunitasweb.com/2009/03/jquery-modal-box-round-up/" &gt;komunitasweb.com &lt;/a&gt;. Hope you guys enjoy &lt;br /&gt;this article.&lt;br /&gt;&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-1820499530828199359?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/05/jquery-simple-modal.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-243220750139737624</guid><pubDate>Sun, 02 May 2010 02:58:00 +0000</pubDate><atom:updated>2010-05-01T20:04:57.120-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">ORACLE</category><category domain="http://www.blogger.com/atom/ns#">Codeigniter</category><category domain="http://www.blogger.com/atom/ns#">BUG</category><title>Codeigniter Oracle Transaction BUG</title><description>Guys, ini baru ketemuin &lt;strong&gt;BUG&lt;/strong&gt;. Khusus nya&lt;br /&gt;utk Driver Database Oracle, OCI8.&lt;br /&gt;Seharus nya transaksi yg di awali&lt;br /&gt;dg trans_start(TRUE) tidak akan ter-&lt;strong&gt;COMMIT&lt;/strong&gt;.&lt;br /&gt;&lt;pre&gt;$this-&amp;gt;db-&amp;gt;trans_start(TRUE);&lt;br /&gt;$this-&amp;gt;db-&amp;gt;simple_query("insert into test &lt;br /&gt;                              (id,name) &lt;br /&gt;                              values &lt;br /&gt;                              ('1','ade1') ");&lt;br /&gt;$this-&amp;gt;db-&amp;gt;simple_query("insert into test &lt;br /&gt;                              (id,name) &lt;br /&gt;                              values &lt;br /&gt;                              ('1','ade2') ");&lt;br /&gt;$this-&amp;gt;db-&amp;gt;simple_query("insert into test &lt;br /&gt;                              (id,name) &lt;br /&gt;                              values &lt;br /&gt;                              ('1','ade3') ");&lt;br /&gt;$this-&amp;gt;db-&amp;gt;trans_complete();&lt;br /&gt;&lt;br /&gt;Expected result:&lt;br /&gt;rollback&lt;br /&gt;&lt;br /&gt;Actual result:&lt;br /&gt;rollback&lt;/pre&gt;&lt;br /&gt;Semua berjalan lancar, transaksi di rollback.&lt;br /&gt;Lohh mana &lt;strong&gt;BUG&lt;/strong&gt; nya? Nahh cuba sisipkan&lt;br /&gt;&lt;strong&gt;'SELECT'&lt;/strong&gt; query di antara nya :D.&lt;br /&gt;Sudah terlihat &lt;strong&gt;BUG&lt;/strong&gt; nya? Query &lt;strong&gt;'INSERT'&lt;/strong&gt;&lt;br /&gt;sebelum &lt;strong&gt;'SELECT'&lt;/strong&gt; ter-&lt;strong&gt;COMMIT&lt;/strong&gt;. Di mana seharus nya&lt;br /&gt;tidak boleh!!! Ceritanya begini, misalkan&lt;br /&gt;kita ada transaksi seperti ini:&lt;br /&gt;&lt;pre&gt;$this-&amp;gt;db-&amp;gt;trans_start(TRUE);&lt;br /&gt;$this-&amp;gt;db-&amp;gt;simple_query("insert into test &lt;br /&gt;                              (id,name) &lt;br /&gt;                              values &lt;br /&gt;                              ('1','ade1') ");&lt;br /&gt;$this-&amp;gt;db-&amp;gt;simple_query("insert into test &lt;br /&gt;                              (id,name) &lt;br /&gt;                              values &lt;br /&gt;                              ('1','ade2') ");&lt;br /&gt;$result = $this-&amp;gt;db-&amp;gt;query("select * from test");&lt;br /&gt;$this-&amp;gt;db-&amp;gt;simple_query("insert into test &lt;br /&gt;                              (id,name) &lt;br /&gt;                              values &lt;br /&gt;                              ('1','ade3') ");&lt;br /&gt;$this-&amp;gt;db-&amp;gt;trans_complete();&lt;br /&gt;&lt;br /&gt;Expected result:&lt;br /&gt;rollback&lt;br /&gt;&lt;br /&gt;Actual result:&lt;br /&gt;2 rows inserted&lt;/pre&gt;&lt;br /&gt;Nah setelah saya telusurin driver nya.&lt;br /&gt;Ternyata &lt;strong&gt;BUG&lt;/strong&gt; nya ada di &lt;br /&gt;/system/database/driver/oci8/oci8_result.php &lt;br /&gt;line : 46 dan 50. Fungsi ociexecute bila hanya terima&lt;br /&gt;1 parameter maka parameter ke 2 nya di set&lt;br /&gt;menjadi OCI_&lt;strong&gt;COMMIT&lt;/strong&gt;_ON_SUCCESS. Kebayangkan?&lt;br /&gt;Jadi seluruh transaksi insert akan ter-&lt;strong&gt;COMMIT&lt;/strong&gt;&lt;br /&gt;walaupun trans_complete belum terpanggil.&lt;br /&gt;&lt;br /&gt;Solusi nya cukup rubah line 46 dan 50,&lt;br /&gt;@ociexecute($this-&gt;stmt_id);&lt;br /&gt;menjadi &lt;br /&gt;@ociexecute($this-&gt;stmt_id, OCI_DEFAULT);&lt;br /&gt;&lt;br /&gt;Di execute lagi query di atas yg ada &lt;strong&gt;'SELECT'&lt;/strong&gt;&lt;br /&gt;query di antaranya dan expected result nya&lt;br /&gt;tercapai. &lt;br /&gt;&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-243220750139737624?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/05/codeigniter-oracle-transaction-bug.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-4999124282703606506</guid><pubDate>Wed, 28 Apr 2010 17:32:00 +0000</pubDate><atom:updated>2010-04-28T10:35:12.880-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><category domain="http://www.blogger.com/atom/ns#">Flashdata</category><category domain="http://www.blogger.com/atom/ns#">Joomla</category><title>Joomla Flashdata</title><description>Artikel ini gw tulis berhubung sdg giat2 nya&lt;br /&gt;menggunakan Joomla utk bbrp project gw.&lt;br /&gt;Begini, ktika menggunakan CI gw dapetin fitur&lt;br /&gt;yg amat sangat membantu, Flashdata.&lt;br /&gt;&lt;br /&gt;Nah pas googling... kok tak kunjung dapet tuh&lt;br /&gt;yg berkaitan dg Flashdata. Buntut2 nya gw liat2&lt;br /&gt;isinya flashdata di CI, trus gw tulis sendiri&lt;br /&gt;utk Joomla. Langsung aja.&lt;br /&gt;&lt;pre&gt;/* buat dir baru di path ini flashdata/ */&lt;br /&gt;/joomla/libraries/flashdata/&lt;br /&gt;&lt;br /&gt;/* tambahkan flashdata.php */&lt;br /&gt;class Flashdata {&lt;br /&gt;&lt;br /&gt;  public  $flashdata_key  = 'flash_';&lt;br /&gt;  public  $userdata       = array();&lt;br /&gt;&lt;br /&gt;  function __construct(){&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  function set_flashdata($newdata = array(), $newval = '')&lt;br /&gt;  {&lt;br /&gt;    if (is_string($newdata))&lt;br /&gt;    {&lt;br /&gt;      $newdata = array($newdata =&amp;gt; $newval);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    if (count($newdata) &amp;gt; 0)&lt;br /&gt;    {&lt;br /&gt;      foreach ($newdata as $key =&amp;gt; $val)&lt;br /&gt;      {&lt;br /&gt;        $flashdata_key = $this-&amp;gt;flashdata_key.$key;&lt;br /&gt;        $this-&amp;gt;set_userdata($flashdata_key, $val);&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  function set_userdata($newdata = array(), $newval = '')&lt;br /&gt;  {&lt;br /&gt;    if (is_string($newdata))&lt;br /&gt;    {&lt;br /&gt;      $newdata = array($newdata =&amp;gt; $newval);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    if (count($newdata) &amp;gt; 0)&lt;br /&gt;    {&lt;br /&gt;      foreach ($newdata as $key =&amp;gt; $val)&lt;br /&gt;      {&lt;br /&gt;        $this-&amp;gt;userdata[$key] = $val;&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    $_SESSION['user_flashdata'] = serialize($this-&amp;gt;userdata);&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  function flashdata($key)&lt;br /&gt;  {&lt;br /&gt;    $flashdata_key = $this-&amp;gt;flashdata_key.$key;&lt;br /&gt;&lt;br /&gt;    $temp          = unserialize($_SESSION['user_flashdata']);&lt;br /&gt;&lt;br /&gt;    $value         = $temp[$flashdata_key];&lt;br /&gt;&lt;br /&gt;    unset($temp[$flashdata_key]);&lt;br /&gt;&lt;br /&gt;    return $value;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Cara penggunaan:&lt;br /&gt;tambah kan external link melalui administrator GUI dari joomla&lt;br /&gt;utk dapat masuk ke component anda.&lt;br /&gt;&lt;br /&gt;Di dalam component&lt;br /&gt;/* /joomla/components/com_komponenku/komponenku.html.php */&lt;br /&gt;class Komponenku_HTML{&lt;br /&gt;&lt;br /&gt;  function execute($task){&lt;br /&gt;  &lt;br /&gt;    switch($task){&lt;br /&gt;      ...&lt;br /&gt;      default:&lt;br /&gt;        &lt;br /&gt;        $flashdata_ku = JFlashdata::flashdata('test');&lt;br /&gt;        &lt;br /&gt;        if(!empty($flashdata_ku)){&lt;br /&gt;        &lt;br /&gt;          echo $flashdata_ku;&lt;br /&gt;        }else{&lt;br /&gt;        &lt;br /&gt;          JFlashdata::set_flashdata('test','Pesan ku');&lt;br /&gt;          header('location : '.JURI::root().'index.php?option=com_komponenku');&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;} &lt;/pre&gt;Nah utk class Flashdata masih jauh dari yg CI.&lt;br /&gt;Tapi dg contoh yg di atas dan gw pribadi gunakan,&lt;br /&gt;sudah memberikan suatu kepuasan. Karena sekali lagi&lt;br /&gt;fitur ini sangat membantu.&lt;br /&gt;&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-4999124282703606506?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/04/joomla-flashdata.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-3034636931822188034</guid><pubDate>Thu, 22 Apr 2010 16:41:00 +0000</pubDate><atom:updated>2010-04-22T09:43:02.866-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">Codeigniter</category><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>Codeigniter The Importance of Flashdata</title><description>Mungkin byk yg belum mengetahui,&lt;br /&gt;bhw CI ada fitur yg amat sangat membantu&lt;br /&gt;dalam status/message handling. Yup! flashdata,&lt;br /&gt;fitur ini sungguh membuat kecanduan hehehhehe.&lt;br /&gt;Masalah nya ampe bela2 in, utk buat di Joomla.&lt;br /&gt;&lt;br /&gt;Sekilas apa itu flashdata. &lt;br /&gt;"Session data that will only be available for the next server request, &lt;br /&gt; and are then automatically cleared. &lt;br /&gt; These can be very useful, &lt;br /&gt; and are typically used for informational or &lt;br /&gt; status messages (for example: "record 2 deleted")."&lt;br /&gt;Cukup deskriptif, B.Ing menjadi keharusan utk programmer.&lt;br /&gt;Ok, lsg ke implementasi nya aja.&lt;br /&gt;&lt;pre&gt;/* controllers/welcome.php */&lt;br /&gt;...&lt;br /&gt;  $this-&amp;gt;session-&amp;gt;set_flashdata('pesan_ku', 'Hello Adesanto');&lt;br /&gt;  $this-&amp;gt;load-&amp;gt;view('welcome');&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;/* views/welcome.html.php */&lt;br /&gt;&amp;lt;?php&lt;br /&gt;echo  '1st message, '.$this-&amp;gt;session-&amp;gt;flashdata('pesan_ku').'&amp;lt;br/&amp;gt;';&lt;br /&gt;echo  '2nd message, '.$this-&amp;gt;session-&amp;gt;flashdata('pesan_ku').'&amp;lt;br/&amp;gt;';&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;Output:&lt;br /&gt;1st message, Hello Adesanto&lt;br /&gt;2nd message,&lt;/pre&gt;Perhatikan setelah pesan "1st message " terdapat data dari flashdata,&lt;br /&gt;tetapi 2nd tidak. Jadi ketika flashdata di panggil maka data terkait&lt;br /&gt;dg key (dlm contoh ini, "pesan_ku") akan lsg terhapus. Fitur ini &lt;br /&gt;sungguh amat sangat berguna ketika anda melakukan insert ke DB&lt;br /&gt;dan setelah itu me-redirect user ke halaman tertentu. Cukup passing&lt;br /&gt;status dari insert ke flashdata dan di tampilkan pesannya di halaman&lt;br /&gt;yg di tuju. Tentunya fitur flashdata ini dapat mempertahankan data&lt;br /&gt;agar tidak lsg terhapus setelah di panggil. Lsg di telusuri aja&lt;br /&gt;user guide dari CI.&lt;br /&gt;&lt;br /&gt;Memang CI sesuai dg motonya, "Lightweight and small footprints".&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-3034636931822188034?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/04/codeigniter-importance-of-flashdata.html</link><author>noreply@blogger.com (adesst)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-118371682280301725</guid><pubDate>Tue, 20 Apr 2010 14:33:00 +0000</pubDate><atom:updated>2010-04-20T07:38:58.988-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">Codeigniter</category><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>Codeigniter No More POP-UP Pains</title><description>Huhh, hampir semua client yg gw pegang selalu&lt;br /&gt;telp dan menanyakan kenapa ini ga jalan, kenapa&lt;br /&gt;itu ga bisa. Buntut2 nya ehh krn pop-up nya di&lt;br /&gt;block ama tuhh browser. Emang sihh jaman nya &lt;br /&gt;pop-up udah lewat, byk an diblock ama browser.&lt;br /&gt;&lt;br /&gt;Karena begitu tinggi nya masalah yg disebabkan&lt;br /&gt;karena pop-up yg ke block. Maka skg gw mau bagiin,&lt;br /&gt;bagaimana supaya kita tidak bergantung pada pop-up&lt;br /&gt;tetapi masih memiliki fitur seperti pop-up.&lt;br /&gt;&lt;br /&gt;Ok, cara ini kita tempuh dg kerjasama CSS, AJAX &lt;br /&gt;dan pasti nya PHP. Kita ga lama2 lagi lsg aja.&lt;br /&gt;Struktur CI gw sperti ini,&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;CI/&lt;br /&gt;  CSS/&lt;br /&gt;    file_css_pop_up.css       &lt;br /&gt;  JAVASCRIPT/&lt;br /&gt;    pop_up_handler.js&lt;br /&gt;  SYSTEM/&lt;br /&gt;    APPLICATION/&lt;br /&gt;      CONTROLLERS/&lt;br /&gt;        welcome.php&lt;br /&gt;      ...&lt;br /&gt;    ...&lt;br /&gt;  ...&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Gw kluarin CSS dan JAVASCRIPT dari folder&lt;br /&gt;system/application krn utk alasan security aja sehh.&lt;br /&gt;Coba aja di cek user guide dari CI, mereka memang &lt;br /&gt;menyarankan itu di luar folder system.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;/* file_css_pop_up.css */&lt;br /&gt;#pop-up{&lt;br /&gt;  &lt;br /&gt;  display         : none;&lt;br /&gt;  overflow        : auto;&lt;br /&gt;  padding-left    : 10px;&lt;br /&gt;  padding-bottom  : 10px;&lt;br /&gt;  background-color: #DDF;&lt;br /&gt;  border          : 1px solid rgb(100,100,225);&lt;br /&gt;  Z-Index         : 24;&lt;br /&gt;  top             : 30%;&lt;br /&gt;  left            : 10%;&lt;br /&gt;  width           : 80%;&lt;br /&gt;  height          : 60%;&lt;br /&gt;  position        : absolute;&lt;br /&gt;}&lt;br /&gt;/* end of css */&lt;br /&gt;&lt;br /&gt;/* pop_up_handler.js */&lt;br /&gt;var GMisc={&lt;br /&gt;&lt;br /&gt;  // _ROOT silahkan di sesuiakan sendiri&lt;br /&gt;  _ROOT                       : 'http://localhost/ci_svc/', &lt;br /&gt;  _DEFAULT_POPUP_ID           : 'pop-up',&lt;br /&gt;  _DEFAULT_POPUP_CONTENT_ID   : 'pop-up-content',&lt;br /&gt;  _VK_ESC_KEY                 : 27,&lt;br /&gt;  _LOADING_TEXT_STATUS        : 'Please wait, loading...',&lt;br /&gt;  &lt;br /&gt;  escKey_kill_popup : function (event,&lt;br /&gt;                                id){&lt;br /&gt;  &lt;br /&gt;    if(event.which){&lt;br /&gt;      &lt;br /&gt;      keynum = event.which;&lt;br /&gt;      &lt;br /&gt;      if(keynum == this._VK_ESC_KEY){&lt;br /&gt;    &lt;br /&gt;        id = document.getElementById(id);&lt;br /&gt;        &lt;br /&gt;        id.style.display  = 'none';&lt;br /&gt;        id.innerHTML      = this._LOADING_TEXT_STATUS;&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;var MiscControllers={&lt;br /&gt;&lt;br /&gt;  set_show_id : function (id_popup, str_mode){&lt;br /&gt;  &lt;br /&gt;    id_popup = document.getElementById(id_popup);&lt;br /&gt;    &lt;br /&gt;    if(str_mode == '1'){&lt;br /&gt;    &lt;br /&gt;      id_popup.style.display = 'block';&lt;br /&gt;    }else{&lt;br /&gt;    &lt;br /&gt;      id_popup.style.display = 'none';&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  set_some_data : function(id_object){&lt;br /&gt;  &lt;br /&gt;    var str_data        = '&lt;b&gt;You could replace this static &lt;br /&gt;                              data with your ajax call or else&lt;/b&gt;';&lt;br /&gt;    id_object           = document.getElementById(id_object);&lt;br /&gt;    id_object.innerHTML = str_data;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;/* end of js */&lt;br /&gt;&lt;br /&gt;/* controllers/welcome.php */&lt;br /&gt;...&lt;br /&gt;  function index(){&lt;br /&gt;    $this-&gt;load-&gt;view('footer');&lt;br /&gt;    $this-&gt;load-&gt;view('includes');&lt;br /&gt;    $this-&gt;load-&gt;view('content');&lt;br /&gt;    $this-&gt;load-&gt;view('footer');&lt;br /&gt;  }&lt;br /&gt;...&lt;br /&gt;/* end of controllers */&lt;br /&gt;&lt;br /&gt;/* view/includes.php */&lt;br /&gt;&lt;br /&gt;&amp;lt;script type="text/javascript" &lt;br /&gt;        src="&amp;lt;?=base_url() ?&amp;gt;javascript/pop_up_handler.js"&amp;gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;link rel="stylesheet" &lt;br /&gt;      type="text/css" &lt;br /&gt;      href="&amp;lt;?=base_url() ?&amp;gt;css/file_css_pop_up.css" /&amp;gt;&lt;br /&gt;&lt;br /&gt;/* end of view */&lt;br /&gt;&lt;br /&gt;/* view/content.php */&lt;br /&gt;&lt;br /&gt;&amp;lt;body onKeyDown='GMisc.escKey_kill_popup(event,&lt;br /&gt;                      GMisc._DEFAULT_POPUP_ID)'&amp;gt;&lt;br /&gt;       &lt;br /&gt;  &amp;lt;div id='content-wrapper'&amp;gt;&lt;br /&gt;    &amp;lt;div id='content'&amp;gt;&lt;br /&gt;      &amp;lt;?php&lt;br /&gt;      // gw ga specified type='submit' &lt;br /&gt;      // krn emg supaya ini button ga submit&lt;br /&gt;      // setelah di klik atau mungkin utk safe &lt;br /&gt;      // di akhir dari JS nya&lt;br /&gt;      // ditambah dg "return false;"&lt;br /&gt;      $button_js         = &lt;br /&gt;        "\" onClick='MiscControllers.set_show_id(&lt;br /&gt;            GMisc._DEFAULT_POPUP_ID, 1);&lt;br /&gt;          MiscControllers.set_some_data(&lt;br /&gt;            GMisc._DEFAULT_POPUP_CONTENT_ID)' \"";&lt;br /&gt;      &lt;br /&gt;      $button_attributes = &lt;br /&gt;        array('name'     =&amp;gt; 'dummy',&lt;br /&gt;              'content'  =&amp;gt; 'Klik gw donk!!!',&lt;br /&gt;              $button_js);&lt;br /&gt;      ?&amp;gt;&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;  &lt;br /&gt;  &amp;lt;div id='pop-up'&amp;gt;&lt;br /&gt;    Press (ESC) to close&lt;br /&gt;    &lt;br /&gt;    &amp;lt;div id='pop-up-content'&amp;gt;&lt;br /&gt;      Please wait, loading...&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;  &lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;  &lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;/* end of view */&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Message "Please wait, loading..." mungkin tidak akan terlihat,&lt;br /&gt;krn proses id_object.innerHTML = ... ini sangat cepat.&lt;br /&gt;Tetapi akan terlihat bila data yg hendak di munculkan bersumber&lt;br /&gt;dari ajax call. Mungkin kalau ada masukan atau komentar silahkan,&lt;br /&gt;jgn ragu. Thx.&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-118371682280301725?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/04/codeigniter-no-more-pop-up-pains.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-2739150345407273712</guid><pubDate>Mon, 19 Apr 2010 03:48:00 +0000</pubDate><atom:updated>2010-04-18T21:27:15.894-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">Codeigniter</category><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>Codeigniter Awkward Form Helper</title><description>Codeigniter awkward form helper &lt;br /&gt;&lt;br /&gt;Bagaimana kabar nya para pembaca yg budiman?&lt;br /&gt;Wuihh prolog yg mantab :D (narsis.net/ON).&lt;br /&gt;Anyway sperti nya klise bukan? Nah persis&lt;br /&gt;seperti yg gw alamin. Di User Guide CI kl&lt;br /&gt;boleh di perhatiin, khusus nya form helper.&lt;br /&gt;&lt;br /&gt;Disana ada tertera byk contoh guide,&lt;br /&gt;dari &amp;lt;form&amp;gt;,&amp;lt;input&amp;gt;...&amp;lt;hidden&amp;gt;.&lt;br /&gt;Yg mau gw garis bawahin adalah ktika&lt;br /&gt;setup "$attributes = array(...);".&lt;br /&gt;Gw cuba utk menambahkan attribut javascript&lt;br /&gt;utk salah satu button,&lt;br /&gt;ehh yg ada malahan &amp;lt;button&amp;gt; -nya di setup&lt;br /&gt;ngawur atau mungkin gw nya yg ngawur yahh?&lt;br /&gt;Ini code yg gw setup dan berikut hasil&lt;br /&gt;html nya.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;i&gt;@test_view.php&lt;/i&gt;&lt;br /&gt;...&lt;br /&gt;$js_grant_button  =&lt;br /&gt;  " onClick= 'MiscControllers.set_show_id(&lt;br /&gt;                GMisc._DEFAULT_POPUP_ID,1);&lt;br /&gt;              Menu_Y3.init_grant_menu(&lt;br /&gt;                GMisc._DEFAULT_POPUP_CONTENT_ID);&lt;br /&gt;              return false;' ";&lt;br /&gt;&lt;br /&gt;$grant_button = array('name'    =&gt;&lt;br /&gt;                        'grant_button',&lt;br /&gt;                      'value'   =&gt;&lt;br /&gt;                        $access-&gt;levelmn,&lt;br /&gt;                      'content' =&gt;&lt;br /&gt;                        'Users',&lt;br /&gt;                      $js_grant_button);&lt;br /&gt;                      &lt;br /&gt;echo  form_button($grant_button);&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;button&lt;br /&gt;   name="grant_button"&lt;br /&gt;   type="button"&lt;br /&gt;   value="3"&lt;br /&gt;   &lt;b&gt;0="&lt;/b&gt; onClick= '&lt;br /&gt;         MiscControllers.set_show_id(&lt;br /&gt;           GMisc._DEFAULT_POPUP_ID,1);&lt;br /&gt;         Menu_Y3.init_grant_menu(&lt;br /&gt;           GMisc._DEFAULT_POPUP_CONTENT_ID);&lt;br /&gt;         return false;' &lt;b&gt;"&lt;/b&gt; &amp;gt;Users&amp;lt;/button&amp;gt;&lt;br /&gt;&lt;i&gt; *Perhatikan 0="..." &lt;/i&gt;                      &lt;br /&gt;&lt;i&gt; **Mohon maklum jika semua di susun ke bawah &lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Aneh bukan? seharus nya kontruksinya benar.&lt;br /&gt;Tapi entah kenapa jadi ngawur, dengan muncul nya&lt;br /&gt;'0=" onClick=..."'. Nah ini solusinya.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;i&gt;@test_view.php&lt;/i&gt;&lt;br /&gt;...&lt;br /&gt;// perhatikan saya menambahkan \" diawal dan sebelum &lt;br /&gt;// akhir daripada "&lt;br /&gt;$js_grant_button  =&lt;br /&gt;  "&lt;b&gt;\"&lt;/b&gt; onClick= 'MiscControllers.set_show_id(&lt;br /&gt;                GMisc._DEFAULT_POPUP_ID,1);&lt;br /&gt;              Menu_Y3.init_grant_menu(&lt;br /&gt;                GMisc._DEFAULT_POPUP_CONTENT_ID);&lt;br /&gt;              return false;' &lt;b&gt;\"&lt;/b&gt;";&lt;br /&gt;&lt;br /&gt;$grant_button = array('name'    =&gt;&lt;br /&gt;                        'grant_button',&lt;br /&gt;                      'value'   =&gt;&lt;br /&gt;                        $access-&gt;levelmn,&lt;br /&gt;                      'content' =&gt;&lt;br /&gt;                        'Users',&lt;br /&gt;                      $js_grant_button);&lt;br /&gt;                      &lt;br /&gt;echo  form_button($grant_button);&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Output&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;button&lt;br /&gt;   name="grant_button"&lt;br /&gt;   type="button"&lt;br /&gt;   value="3"&lt;br /&gt;   &lt;b&gt;0=""&lt;/b&gt;&lt;br /&gt;   onClick= '&lt;br /&gt;     MiscControllers.set_show_id(&lt;br /&gt;       GMisc._DEFAULT_POPUP_ID,1);&lt;br /&gt;     Menu_Y3.init_grant_menu(&lt;br /&gt;       GMisc._DEFAULT_POPUP_CONTENT_ID);&lt;br /&gt;     return false;'&lt;br /&gt;   &lt;b&gt;""&lt;/b&gt; &amp;gt;Users&amp;lt;/button&amp;gt;&lt;br /&gt;&lt;i&gt; *Perhatikan 0="" dan akhir nya ""&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Mungkin ada yg mau kasih masukan silahkan.&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-2739150345407273712?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/04/codeigniter-awkward-form-helper.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-245864096091483933</guid><pubDate>Fri, 16 Apr 2010 16:49:00 +0000</pubDate><atom:updated>2010-04-16T09:50:19.768-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">Combination</category><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>Codeigniter Pass Object through SESSION variable how to</title><description>Codeigniter Can not pass Object through SESSION variable&lt;br /&gt;&lt;br /&gt;Untuk yg kesulitan pass object dari controller ke view,&lt;br /&gt;via session. Ini obat nya,&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;// controller file mu, test1.php&lt;br /&gt;// Location: ./system/application/controllers/test1.php&lt;br /&gt;&lt;?&lt;br /&gt;...&lt;br /&gt;  $buffer = array();&lt;br /&gt;&lt;br /&gt;  $dummy_object       = new stdClass;&lt;br /&gt;  $dummy_object-&gt;name = 'ade1';&lt;br /&gt;  $dummy_object-&gt;id   = 'ADEX1';&lt;br /&gt;&lt;br /&gt;  array_push($buffer, $dummy_object);&lt;br /&gt;&lt;br /&gt;  $dummy_object-&gt;name = 'ade2';&lt;br /&gt;  $dummy_object-&gt;id   = 'ADEX2';&lt;br /&gt;&lt;br /&gt;  array_push($buffer, $dummy_object);&lt;br /&gt;&lt;br /&gt;  /**&lt;br /&gt;   * Kalau passing nya spt ini pasti error&lt;br /&gt;   * can't convert object to string&lt;br /&gt;   *&lt;br /&gt;   * $this-&gt;session-&gt;set_userdata('passed_object', $buffer);&lt;br /&gt;   *&lt;br /&gt;   * Jadi gimana?&lt;br /&gt;   */&lt;br /&gt;&lt;br /&gt;  $this-&gt;session-&gt;set_userdata('passed_object', serialize($buffer));&lt;br /&gt;...&lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;// controller file mu, test2.php&lt;br /&gt;// Location: ./system/application/controllers/test2.php&lt;br /&gt;&lt;?&lt;br /&gt;...&lt;br /&gt; &lt;br /&gt;  /**&lt;br /&gt;   * utk mengambil kembali data nya dlm object tinggal&lt;br /&gt;   * di unserialize :D&lt;br /&gt;   */&lt;br /&gt;  &lt;br /&gt;  $passed_object = $this-&gt;session-&gt;userdata('passed_object', unserialize($buffer));&lt;br /&gt;...&lt;br /&gt;?&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Smoga obat nya ampuh.&lt;br /&gt;&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-245864096091483933?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2010/04/codeigniter-pass-object-through-session_16.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-4687939583849830597</guid><pubDate>Thu, 03 Dec 2009 14:50:00 +0000</pubDate><atom:updated>2009-12-03T06:52:45.953-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">ORACLE</category><title>Oracle Returns Number Type with Comma as Decimal Separator</title><description>Php-er,&lt;br /&gt;&lt;br /&gt;Pernah mengalami atau sdg mengalami Oracle &lt;br /&gt;me-return nilai dari Number Type menjadi string&lt;br /&gt;dan decimal separator nya adl koma? Pastinya&lt;br /&gt;PHP lsg aneh, misalkan&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;“String (4) =&gt;'1,4991'”&lt;br /&gt;Pastinya jika,&lt;br /&gt;$var = 1 + $retString;&lt;br /&gt;&lt;br /&gt;maka output nya,&lt;br /&gt;2&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt; Hasil 2, tidak mengejutkan, krn PHP akan mem-&lt;br /&gt;perlakukan '1,4991' menjadi 1. Nah, solusi nya &lt;br /&gt;bagaimana? Jawabannya ada disini &lt;a href=”http://www.oracle.com/technology/tech/globalization/htdocs/nls_lang%20faq.htm”&gt;Oracle NLS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Semoga membantu...&lt;br /&gt;Coding for life, coding with ethic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-4687939583849830597?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/12/oracle-returns-number-type-with-comma.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-5152869386058381147</guid><pubDate>Thu, 26 Nov 2009 17:14:00 +0000</pubDate><atom:updated>2009-11-26T09:16:17.460-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Apache</category><title>Forcing Apache Case-Insensitive</title><description>Pernah mengalami masalah case-sensitive dlm coding?&lt;br /&gt;Atau migrasi dari platform yg case-insensitive &lt;br /&gt;ke case-sensitive, maka harus periksa seluruh code,&lt;br /&gt;untuk memastikan semua dlm case yg benar? Saya pernah!&lt;br /&gt;Dan sampai saat ini pun terkadang masih mengalaminya.&lt;br /&gt;Saya mengalami ketika project awal mulanya dikerjakan&lt;br /&gt;di Windows, dan skg saya hrs migrasi ke Linux. &lt;br /&gt;&lt;br /&gt;Sungguh menjadi pekerjaan yg banyak. Anyway saya akan&lt;br /&gt;memberikan tips utk menghindari ini. Dg mengaktifkan&lt;br /&gt;mod_speling, agar kesalahan-kesalahan case seperti,&lt;br /&gt;adesanto_php dg Adesanto_Php, dapat diabaikan.&lt;br /&gt;&lt;br /&gt;Caranya, karena utk Windows adalah platform &lt;br /&gt;case-insensitive maka saya hanya akan membahas,&lt;br /&gt;mengaktifkan mod_speling di Linux. Pastikan di folder&lt;br /&gt;apache modules blm ada mod_speling.so. Jikalau sudah&lt;br /&gt;ada maka anda langsung ke step no.7-9.&lt;br /&gt;&lt;div style='overflow : auto;'&gt;&lt;br /&gt;1. Download tar/zip apache2 (source).&lt;br /&gt;2. Unzip/Untar apache2.&lt;br /&gt;3. Masuk ke direktori apache2 yg telah ter-Extract,&lt;br /&gt;   lalu masuk ke direktori modules.&lt;br /&gt;4. Jadilah superuser (root),&lt;br /&gt;   (fedora) # apxs -c mod_speling.c&lt;br /&gt;5. # apxs -i -a -n mod_speling mod_speling.la&lt;br /&gt;6. setelah kompilasi berhasil,&lt;br /&gt;   vi httpd.conf&lt;br /&gt;7. tambahkan ,&lt;br /&gt;   LoadModule mod_speling mod_speling.so&lt;br /&gt;   &lt;br /&gt;   &amp;lt;ifModule&amp;gt;&lt;br /&gt;      CheckCaseOnly on&lt;br /&gt;      ChecSpelling  on&lt;br /&gt;   &amp;lt;/ifModule&amp;gt;&lt;br /&gt;8. restart apache.&lt;br /&gt;9. pastikan module sudah jalan dg ketikan ini di &lt;br /&gt;   shell, &lt;br /&gt;   apache -M&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Setelah semua langkah diatas telah selesai,&lt;br /&gt;saatnya kita test, misalkan ada file adesanto_php&lt;br /&gt;maka cobalah utk memanggil nya dg Adesanto_Php,&lt;br /&gt;langsung dari browser atau code anda. Hal yg harus &lt;br /&gt;diingat, krn ada perbedaan case maka apache akan&lt;br /&gt;mencoba mencari kesamaan yg berarti ada time &lt;br /&gt;overheads. Utk tingkat scale medium ini tidaklah &lt;br /&gt;menjadi masalah. Cek access_log, disana tercatat&lt;br /&gt;ada 2-3 atau lebih request utk filename yg sama&lt;br /&gt;tetapi beda case. Utk informasi lbh lanjut &lt;br /&gt;langsung ke &lt;a href="http://httpd.apache.org/docs/2.2/dso.html"&gt;Apache Documentation&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-5152869386058381147?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/11/forcing-apache-case-insensitive.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-5024969142384918846</guid><pubDate>Wed, 18 Nov 2009 14:09:00 +0000</pubDate><atom:updated>2009-11-18T19:41:33.531-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">EXCEL</category><category domain="http://www.blogger.com/atom/ns#">XML</category><title>PHP-EXCEL-XML</title><description>Reporting dalam Excel form? Kenapa tidak. Saya secara pribadi &lt;br /&gt;udah ngalamin, hasil print out browser yg berantakan, &lt;br /&gt;tidak sama antara 1 sama lain dimana dasar codingnya sama, dsb. &lt;br /&gt;Nah... sempat terpikir gunakan FPDF aja atau TCPDF.&lt;br /&gt;Alhasil, mungkin saya nya yg kurang bisa, &lt;br /&gt;seharian berkutat dan memble juga.&lt;br /&gt;Pada akhir nya saya melirik teknik XML-spreadsheet. &lt;br /&gt;Dimana teknik nya mencakup:&lt;br /&gt;&lt;br /&gt;1. XML-spreadsheet.&lt;br /&gt;2. Force Download.&lt;br /&gt;&lt;br /&gt;Oke, kita bedah satu-satu. XML, humm... &lt;br /&gt;sounds familiar? &lt;br /&gt;Saya akan coba mengenalkan apa itu XML, &lt;br /&gt;melalui link-link ini:&lt;br /&gt;1. &lt;a href="www.w3schools.com/xmL/"&gt;w3school&lt;/a&gt;&lt;br /&gt;2. &lt;a href="www.tizag.com/xmlTutorial/"&gt;tizag&lt;/a&gt;&lt;br /&gt;3. &lt;a href="www.ibm.com/developerworks/library/x-xmlphp1.html"&gt;ibm developerworks&lt;/a&gt;&lt;br /&gt;Bagi pemula jangan melewati bagian ini, untuk &lt;br /&gt;yg expert ada bagus nya utk mengunjungi link-link tsb &lt;br /&gt;utk sekedar review.&lt;br /&gt;&lt;br /&gt;Setelah anda mengunjungi link-link tsb, &lt;br /&gt;buat file excel baru lalu di row 1 anda buat header. &lt;br /&gt;Misalkan: col1 =&gt; Nama, col2 =&gt; Nim, col3=&gt; Nilai.&lt;br /&gt;Setelah itu row 2 anda masukan data, &lt;br /&gt;sesuai dgn kolom. Misalkan: col1 =&gt; Adesanto, &lt;br /&gt;col2 =&gt; 0911090001, col3=&gt; 99 (tidak 100, krn manusia &lt;br /&gt;tak ada yg sempurna). &lt;br /&gt;Lalu File-&gt;"Save As"-&gt;XML-spreadsheet, beri nama &lt;br /&gt;"my-xml-spreadsheet.xml".&lt;br /&gt;&lt;br /&gt;Langkah berikut nya adalah menggunakan editor favorit anda, &lt;br /&gt;untuk membuka "my-xml-spreadsheet.xml". &lt;br /&gt;Saya menganjurkan Notepad++ windows, atau gedit linux, &lt;br /&gt;untuk editor pilihan/rujukan dari saya. &lt;br /&gt;Scroll down hingga anda menemukan tag &lt;br /&gt;&amp;lt;Worksheet ss:Name="Sheet1"&amp;gt; &amp;lt;table ...&amp;gt;. &lt;br /&gt;Perhatian, ss:Name="Sheet1" adalah nama worksheet default &lt;br /&gt;excel/calc, akan tidak sama jika sebelumnya telah me-rename. &lt;br /&gt;Dan interesting part nya, terletak di tag &amp;lt;table ...&amp;gt;. &lt;br /&gt;Buang informasi tambahan dalam table utk mencegah &lt;br /&gt;tidak konsistennya data, sehingga menjadi &amp;lt;table&amp;gt;,&lt;br /&gt;setelah itu di-Save.&lt;br /&gt;&lt;br /&gt;Kita akan membagi "my-xml-spreadsheet.xml" menjadi 3 bagian, &lt;br /&gt;$excelHeader, $excelBody dan $excelFooter. &lt;br /&gt;Lalu masih dari "my-xml-spreadsheet.xml", &lt;br /&gt;copy paste dari awal data hingga akhir tag &amp;lt;/Row&gt; ke 1,&lt;br /&gt;untuk menjadi data utk $excelHeader. &lt;br /&gt;Dan copy paste dari tag &amp;lt;/table&gt; hingga paling akhir &lt;br /&gt;menjadi data $excelFooter. &lt;br /&gt;Data XML:&lt;br /&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;br /&gt;&amp;lt;Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"&lt;br /&gt; xmlns:o="urn:schemas-microsoft-com:office:office"&lt;br /&gt; xmlns:x="urn:schemas-microsoft-com:office:excel"&lt;br /&gt; xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"&lt;br /&gt; xmlns:html="http://www.w3.org/TR/REC-html40"&amp;gt;&lt;br /&gt; &amp;lt;DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"&amp;gt;&lt;br /&gt;  &amp;lt;Author&amp;gt;Adesanto Asman&amp;lt;/Author&amp;gt;&lt;br /&gt;  &amp;lt;LastAuthor&amp;gt;Adesanto Asman&amp;lt;/LastAuthor&amp;gt;&lt;br /&gt;  &amp;lt;Created&amp;gt;2009-11-18T13:37:59Z&amp;lt;/Created&amp;gt;&lt;br /&gt;  &amp;lt;Company&amp;gt;DIGIKREASI INOVASINDO&amp;lt;/Company&amp;gt;&lt;br /&gt;  &amp;lt;Version&amp;gt;10.2625&amp;lt;/Version&amp;gt;&lt;br /&gt; &amp;lt;/DocumentProperties&amp;gt;&lt;br /&gt; &amp;lt;OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"&amp;gt;&lt;br /&gt;  &amp;lt;DownloadComponents/&amp;gt;&lt;br /&gt;  &amp;lt;LocationOfComponents HRef="file:///F:\"/&amp;gt;&lt;br /&gt; &amp;lt;/OfficeDocumentSettings&amp;gt;&lt;br /&gt; &amp;lt;ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"&amp;gt;&lt;br /&gt;  &amp;lt;WindowHeight&amp;gt;7935&amp;lt;/WindowHeight&amp;gt;&lt;br /&gt;  &amp;lt;WindowWidth&amp;gt;19035&amp;lt;/WindowWidth&amp;gt;&lt;br /&gt;  &amp;lt;WindowTopX&amp;gt;0&amp;lt;/WindowTopX&amp;gt;&lt;br /&gt;  &amp;lt;WindowTopY&amp;gt;120&amp;lt;/WindowTopY&amp;gt;&lt;br /&gt;  &amp;lt;ProtectStructure&amp;gt;False&amp;lt;/ProtectStructure&amp;gt;&lt;br /&gt;  &amp;lt;ProtectWindows&amp;gt;False&amp;lt;/ProtectWindows&amp;gt;&lt;br /&gt; &amp;lt;/ExcelWorkbook&amp;gt;&lt;br /&gt; &amp;lt;Styles&amp;gt;&lt;br /&gt;  &amp;lt;Style ss:ID="Default" ss:Name="Normal"&amp;gt;&lt;br /&gt;   &amp;lt;Alignment ss:Vertical="Bottom"/&amp;gt;&lt;br /&gt;   &amp;lt;Borders/&amp;gt;&lt;br /&gt;   &amp;lt;Font/&amp;gt;&lt;br /&gt;   &amp;lt;Interior/&amp;gt;&lt;br /&gt;   &amp;lt;NumberFormat/&amp;gt;&lt;br /&gt;   &amp;lt;Protection/&amp;gt;&lt;br /&gt;  &amp;lt;/Style&amp;gt;&lt;br /&gt;  &amp;lt;Style ss:ID="s23"&amp;gt;&lt;br /&gt;   &amp;lt;Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/&amp;gt;&lt;br /&gt;   &amp;lt;Borders&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;   &amp;lt;/Borders&amp;gt;&lt;br /&gt;   &amp;lt;Font x:Family="Swiss" ss:Bold="1"/&amp;gt;&lt;br /&gt;  &amp;lt;/Style&amp;gt;&lt;br /&gt; &amp;lt;/Styles&amp;gt;&lt;br /&gt; &amp;lt;Worksheet ss:Name="Sheet1"&amp;gt;&lt;br /&gt;  &amp;lt;Table&amp;gt;&lt;br /&gt;   &amp;lt;Column ss:Width="46.5"/&amp;gt;&lt;br /&gt;   &amp;lt;Column ss:Width="52.5"/&amp;gt;&lt;br /&gt;   &amp;lt;Row ss:Height="13.5"&amp;gt;&lt;br /&gt;    &amp;lt;Cell ss:StyleID="s23"&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;Nama&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;    &amp;lt;Cell ss:StyleID="s23"&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;NIM&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;    &amp;lt;Cell ss:StyleID="s23"&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;Nilai&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;   &amp;lt;/Row&amp;gt;&lt;br /&gt;   &amp;lt;Row&amp;gt;&lt;br /&gt;    &amp;lt;Cell&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;Adesanto&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;    &amp;lt;Cell&amp;gt;&amp;lt;Data ss:Type="Number"&amp;gt;911090001&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;    &amp;lt;Cell&amp;gt;&amp;lt;Data ss:Type="Number"&amp;gt;99&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;   &amp;lt;/Row&amp;gt;&lt;br /&gt;  &amp;lt;/Table&amp;gt;&lt;br /&gt; &amp;lt;/Worksheet&amp;gt;&lt;br /&gt;&amp;lt;/Workbook&amp;gt;&lt;br /&gt;&lt;br /&gt;$excelHeader = '&amp;lt;?xml version="1.0"?&amp;gt;&lt;br /&gt;&amp;lt;Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"&lt;br /&gt; xmlns:o="urn:schemas-microsoft-com:office:office"&lt;br /&gt; xmlns:x="urn:schemas-microsoft-com:office:excel"&lt;br /&gt; xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"&lt;br /&gt; xmlns:html="http://www.w3.org/TR/REC-html40"&amp;gt;&lt;br /&gt; &amp;lt;DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"&amp;gt;&lt;br /&gt;  &amp;lt;Author&amp;gt;Adesanto Asman&amp;lt;/Author&amp;gt;&lt;br /&gt;  &amp;lt;LastAuthor&amp;gt;Adesanto Asman&amp;lt;/LastAuthor&amp;gt;&lt;br /&gt;  &amp;lt;Created&amp;gt;2009-11-18T13:37:59Z&amp;lt;/Created&amp;gt;&lt;br /&gt;  &amp;lt;Company&amp;gt;DIGIKREASI INOVASINDO&amp;lt;/Company&amp;gt;&lt;br /&gt;  &amp;lt;Version&amp;gt;10.2625&amp;lt;/Version&amp;gt;&lt;br /&gt; &amp;lt;/DocumentProperties&amp;gt;&lt;br /&gt; &amp;lt;OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"&amp;gt;&lt;br /&gt;  &amp;lt;DownloadComponents/&amp;gt;&lt;br /&gt;  &amp;lt;LocationOfComponents HRef="file:///F:\"/&amp;gt;&lt;br /&gt; &amp;lt;/OfficeDocumentSettings&amp;gt;&lt;br /&gt; &amp;lt;ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"&amp;gt;&lt;br /&gt;  &amp;lt;WindowHeight&amp;gt;7935&amp;lt;/WindowHeight&amp;gt;&lt;br /&gt;  &amp;lt;WindowWidth&amp;gt;19035&amp;lt;/WindowWidth&amp;gt;&lt;br /&gt;  &amp;lt;WindowTopX&amp;gt;0&amp;lt;/WindowTopX&amp;gt;&lt;br /&gt;  &amp;lt;WindowTopY&amp;gt;120&amp;lt;/WindowTopY&amp;gt;&lt;br /&gt;  &amp;lt;ProtectStructure&amp;gt;False&amp;lt;/ProtectStructure&amp;gt;&lt;br /&gt;  &amp;lt;ProtectWindows&amp;gt;False&amp;lt;/ProtectWindows&amp;gt;&lt;br /&gt; &amp;lt;/ExcelWorkbook&amp;gt;&lt;br /&gt; &amp;lt;Styles&amp;gt;&lt;br /&gt;  &amp;lt;Style ss:ID="Default" ss:Name="Normal"&amp;gt;&lt;br /&gt;   &amp;lt;Alignment ss:Vertical="Bottom"/&amp;gt;&lt;br /&gt;   &amp;lt;Borders/&amp;gt;&lt;br /&gt;   &amp;lt;Font/&amp;gt;&lt;br /&gt;   &amp;lt;Interior/&amp;gt;&lt;br /&gt;   &amp;lt;NumberFormat/&amp;gt;&lt;br /&gt;   &amp;lt;Protection/&amp;gt;&lt;br /&gt;  &amp;lt;/Style&amp;gt;&lt;br /&gt;  &amp;lt;Style ss:ID="s23"&amp;gt;&lt;br /&gt;   &amp;lt;Alignment ss:Horizontal="Center" ss:Vertical="Bottom"/&amp;gt;&lt;br /&gt;   &amp;lt;Borders&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;    &amp;lt;Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2"/&amp;gt;&lt;br /&gt;   &amp;lt;/Borders&amp;gt;&lt;br /&gt;   &amp;lt;Font x:Family="Swiss" ss:Bold="1"/&amp;gt;&lt;br /&gt;  &amp;lt;/Style&amp;gt;&lt;br /&gt; &amp;lt;/Styles&amp;gt;&lt;br /&gt; &amp;lt;Worksheet ss:Name="Sheet1"&amp;gt;&lt;br /&gt;  &amp;lt;Table&amp;gt;&lt;br /&gt;   &amp;lt;Column ss:Width="46.5"/&amp;gt;&lt;br /&gt;   &amp;lt;Column ss:Width="52.5"/&amp;gt;&lt;br /&gt;   &amp;lt;Row ss:Height="13.5"&amp;gt;&lt;br /&gt;    &amp;lt;Cell ss:StyleID="s23"&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;Nama&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;    &amp;lt;Cell ss:StyleID="s23"&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;NIM&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;    &amp;lt;Cell ss:StyleID="s23"&amp;gt;&amp;lt;Data ss:Type="String"&amp;gt;Nilai&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;   &amp;lt;/Row&amp;gt;';&lt;br /&gt;&lt;br /&gt;$excelFooter = '&amp;lt;/Table&amp;gt;&lt;br /&gt; &amp;lt;/Worksheet&amp;gt;&lt;br /&gt;&amp;lt;/Workbook&amp;gt;';&lt;br /&gt;&lt;br /&gt;Data yg akan kita tampilkan/sisipkan,&lt;br /&gt; akan kita assign ke $excelBody.&lt;br /&gt;Caranya copy paste dari tag &amp;lt;Row&amp;gt; &lt;br /&gt;hingga &amp;lt;/Row&amp;gt; ke 2, ke dalam coding kita.&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;for($iRow = 0; $iRow &amp;lt; 10; $iRow++){&lt;br /&gt;&lt;br /&gt;  $excelBody = "&amp;lt;Row&amp;gt;&lt;br /&gt;                 &amp;lt;Cell&amp;gt;&amp;lt;Data ss:Type=\"String\"&amp;gt;Adesanto&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;                 &amp;lt;Cell&amp;gt;&amp;lt;Data ss:Type=\"Number\"&amp;gt;911090001&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;                 &amp;lt;Cell&amp;gt;&amp;lt;Data ss:Type=\"Number\"&amp;gt;".$iRow."&amp;lt;/Data&amp;gt;&amp;lt;/Cell&amp;gt;&lt;br /&gt;                &amp;lt;/Row&amp;gt;";&lt;br /&gt;}&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;Ok kita sudah selesai dg file XML kita. &lt;br /&gt;Sekarang user harus diberi kemudahan, utk dapat melihat &lt;br /&gt;hasil dlm bentuk excel format. Cukup taruh &lt;br /&gt;code ini diawal:&lt;br /&gt;&lt;br /&gt;$archiveName = 'php-excel-xml.xml';&lt;br /&gt;$length      = 2000000;      // utk kelengkapan code force download, saya beri value statis&lt;br /&gt;$contentType = "text/plain";&lt;br /&gt;$option      = 'inline';&lt;br /&gt;&lt;br /&gt;header("Pragma: public");&lt;br /&gt;header("Expires: 0");&lt;br /&gt;header("Cache-Control: must-revalidate, post-check=0, pre-check=0");&lt;br /&gt;header("Cache-Control: private",false);&lt;br /&gt;header("Content-Type: application/".$contentType."");&lt;br /&gt;header("Content-Disposition: ".$option."; filename=".basename($archiveName).";" );&lt;br /&gt;header("Content-Transfer-Encoding: binary;");&lt;br /&gt;header("Content-Length: ".$length);&lt;br /&gt;&lt;br /&gt;Disambung dengan&lt;br /&gt;&lt;br /&gt;echo  $excelHeader.&lt;br /&gt;      $excelBody.&lt;br /&gt;      $excelFooter;&lt;br /&gt;&lt;br /&gt;Seharus nya setelah code di execute di browser, &lt;br /&gt;akan muncul pop-up download, &lt;br /&gt;pilih open with: excel, atau, scalc (open office excel).&lt;br /&gt;&lt;br /&gt;Sebagai catatan, ketika kita membentuk $excelBody &lt;br /&gt;pastikan utk meng-"escape" karakter ini, '&amp;' dan '"'. &lt;br /&gt;Khusus karakter tanda kutip 1, ada perlakuan khusus yaitu, &lt;br /&gt;&amp;lt;Data ss:Type="String" x:Ticked="1"&amp;gt;&amp;lt;/Data&amp;gt;&lt;br /&gt;&lt;br /&gt;Happy Coding.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-5024969142384918846?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/11/php-exce-xml.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-6755535858292884138</guid><pubDate>Tue, 03 Nov 2009 04:34:00 +0000</pubDate><atom:updated>2009-11-02T21:11:29.349-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><category domain="http://www.blogger.com/atom/ns#">Developer Tool</category><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>PHP eAccelerator</title><description>Php-er,&lt;br /&gt;&lt;br /&gt;Mau sharing lagi nehh... Skg tentang ph-eaccelerator, wuih stl pake ini, applikasi&lt;br /&gt;jalannya terasa lbh cepat. Link-link ini mungkin bisa menjadi referensi,&lt;br /&gt;1. &lt;a href="http://www.techiecorner.com/111/install-eaccelerator-optimize-php-performance-reduce-server-load/"&gt;http://www.techiecorner.com/111/install-eaccelerator-optimize-php-performance-reduce-server-load/&lt;/a&gt;&lt;br /&gt;2. &lt;a href="http://sakafi.wordpress.com/2008/07/07/installing-eaccelerator-on-linux-machines/"&gt;http://sakafi.wordpress.com/2008/07/07/installing-eaccelerator-on-linux-machines/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Setelah pakai eaccelerator nya jgn lupa di benchmark jadi tau "Gain"nya berapa.&lt;br /&gt;Ini ref nya &lt;a href="http://www.ipersec.com/index.php/2006/05/30/benchmarking-php-accelerators/"&gt;http://www.ipersec.com/index.php/2006/05/30/benchmarking-php-accelerators/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-6755535858292884138?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/11/php-eaccelerator.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-7994741174873678898</guid><pubDate>Sat, 24 Oct 2009 07:01:00 +0000</pubDate><atom:updated>2009-10-24T00:08:38.763-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><title>PHP Linux, log file.</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Kali ini gw mau share ttg pengalaman logging PHP error di linux. Bbrp hari ini gw&lt;br /&gt;terpaksa buta error applikasi gw apa, krn display error di php.ini gw off.&lt;br /&gt;Dan di dlm php.ini gw udah set log_error=On dan &lt;br /&gt;log_file=/usr/local/apache/logs/php_error.log, file php_error.log udah di chmod &lt;br /&gt;jadi 755 pula. Tapi kenapa ga ada yg di log? Nah jawaban dari paman Google adalah&lt;br /&gt;&lt;a href="http://bugs.php.net/bug.php?id=29063"&gt;file php_error.log ga boleh berada di /usr/...&lt;/a&gt; krn hanya root yg bisa modify.&lt;br /&gt;&lt;br /&gt;Jadi solusi nya adalah:&lt;br /&gt;&lt;br /&gt;1. mkdir /home/user/applications/php/logs/&lt;br /&gt;2. echo &gt; /home/user/applications/php/logs/php_error.log&lt;br /&gt;3. rubah log_file=/home/user/applications/php/logs/php_error.log di php.ini&lt;br /&gt;4. restart apache.&lt;br /&gt;&lt;br /&gt;Boomm!!! jalan...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-7994741174873678898?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/10/php-linux-log-file.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-5602613847917437622</guid><pubDate>Sun, 18 Oct 2009 14:36:00 +0000</pubDate><atom:updated>2009-10-18T07:53:18.526-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tutorial</category><title>Reference Magic[2]</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Nah baru ketemu lagi nehh, kasus dimana reference itu jadi kunci utama, &lt;span style="font-style:italic;"&gt;key player&lt;/span&gt;. Kasus nya adalah tampilin stock report,&lt;br /&gt;dimana saya tidak menyimpan beginning balance nya (walaupun ini salah), &lt;br /&gt;saya mengakali nya dengan stock akhir dikurang dengan mutasi dari tanggal hari ini&lt;br /&gt;hingga tanggal sebelum nya. Contoh: 01-01-2009 s/d saat ini,&lt;br /&gt;maka stock saat ini dikurang atau ditambah sesuai dengan kode mutasi, hingga tanggal&lt;br /&gt;01-01-2009, mudah bukan?&lt;br /&gt;&lt;br /&gt;Masalah nya adalah report generator saya mengharuskan data yg ditampilkan seblumnya &lt;br /&gt;harus di array_push. Kebayangkan kalau saya menampilkan data beginning balance &lt;br /&gt;diharuskan utk menghitung terlebih dahulu brp beginning balance nya. Dan catatan &lt;br /&gt;mutasi adalah setelah nya. Terbalik? iya krn rumus kita adalah akhir - mutasi = awal.&lt;br /&gt;Maka solusi nya adalah,&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$data    = array();&lt;br /&gt;$awal    = 0;&lt;br /&gt;$akhir   = $warehouse-&gt;getEndingBalanceOfThis($modelId);&lt;br /&gt;$saatIni = $akhir;&lt;br /&gt;&lt;br /&gt;/* awal */&lt;br /&gt;array_push($data, &lt;span style="font-weight:bold;"&gt;&amp;$awal&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;/* Loop sebyk mutasi */&lt;br /&gt;foreach($mutasiX as $mutasi){&lt;br /&gt;&lt;br /&gt;  if($kodeTransaksi == _MASUK){&lt;br /&gt;&lt;br /&gt;    $saatIni -= $mutasi-&gt;qty;&lt;br /&gt;  }else{&lt;br /&gt;&lt;br /&gt;    $saatIni += $mutasi-&gt;qty;&lt;br /&gt;  }&lt;br /&gt;  array_push($data, $mutasi-&gt;qty);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/* Ending */&lt;br /&gt;array_push($data, $akhir);&lt;br /&gt;&lt;br /&gt;/* maka awal adalah */&lt;br /&gt;$awal = $current;&lt;br /&gt;&lt;br /&gt;Hasil Output:&lt;br /&gt;35 |&lt;-- awal&lt;br /&gt;20 |&lt;br /&gt;35 |&lt;br /&gt;23 | Mutasi&lt;br /&gt;77 |&lt;br /&gt;11 |&lt;br /&gt;102|&lt;-- akhir&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Kondisi diatas akan berbeda jika $awal tidak pass-by-reference,&lt;br /&gt;krn pasti value $awal adalah 0, ini adalah value inisialisasi awal.&lt;br /&gt;Happy coding.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-5602613847917437622?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/10/reference-magic2.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-5792940264711264013</guid><pubDate>Sun, 18 Oct 2009 05:05:00 +0000</pubDate><atom:updated>2009-10-17T22:37:54.214-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Pattern</category><title>Design Pattern</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Mau bagi2 neh ttg yg 1 ini. Pattern/pola, cara yg kita gunakan berulang kali yg membentuk suatu urutan sistematis, pendapat saya pribadi. Pernahkah kita menulis&lt;br /&gt;program yg scr kita tidak sadar kita melakukan dg cara yg sama scr terus menerus,&lt;br /&gt;sampai2 kita bisa buat template nya? Dimana ktika ada project baru kita tinggal&lt;br /&gt;copy paste template nya dan edit bbrp variable dan logikanya dan BOOM!! selesai.&lt;br /&gt;Tinggal testing dan trial&amp;amp;error.&lt;br /&gt;&lt;br /&gt;Begitu pun saya, misalkan contoh yg paling sederhana,&lt;br /&gt;&lt;PRE&gt;&lt;br /&gt;if($variable){&lt;br /&gt;&lt;br /&gt; // XXX...&lt;br /&gt;}else{&lt;br /&gt;&lt;br /&gt; // XXX...&lt;br /&gt;}&lt;br /&gt;&lt;/PRE&gt;&lt;br /&gt;Alangkah mudah dan cepat nya jika saya cukup ketik if maka code yg diatas lsg&lt;br /&gt;keluar. Nah ini kan urusan nya di editor :D, betul, kan contoh...&lt;br /&gt;Kalau dalam coding.&lt;br /&gt;&lt;PRE&gt;&lt;br /&gt;class Transaksi{&lt;br /&gt;&lt;br /&gt; public  $tanggal,&lt;br /&gt;         $noBon,&lt;br /&gt;         $mataUang,&lt;br /&gt;         $kurs,&lt;br /&gt;         $pembuat,&lt;br /&gt;         $pendaftar,&lt;br /&gt;         $penghapus;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;class TransaksiPembelian extends Transaksi{&lt;br /&gt;&lt;br /&gt;  public  $namaSupplier,&lt;br /&gt;          $kodeSupplier,&lt;br /&gt;          $noSuratJalan;&lt;br /&gt;}&lt;br /&gt;&lt;/PRE&gt;&lt;br /&gt;Dari contoh diatas kita sudah menerapkan suatu pola yg dinamakan &lt;span style="font-style: italic;"&gt;Template Method&lt;/span&gt;. Sesuai dengan nama nya template Transaksi akan banyak di gunakan oleh transaksi lainnya, dimana TransaksiPembelian membutuhkan tanggal transaksi, mata uang, kurs dll. Begitupun transaksiPenjualan, jurnal umum, konsinyasi, dll. Sehingga transaksi2 yg spesifik hanya menambahkan kekurangannya saja, contoh disini TransaksiPembelian cukup menambahkan nama dan kode supplier, no surat jalan, dll. Mudah bukan? Dan yg menjadi point nya adalah kita lbh cepat dan&lt;br /&gt;mudah membuat suatu object baru. Mengurangi waktu ketik, dan code kita menjadi lbh&lt;br /&gt;ramping. Saya pribadi suka melihat rentetan code yg pendek ktimbang yg panjang.&lt;br /&gt;&lt;br /&gt;Kebayang kan kalau lihat code yg banyaknya 5000 line (ok lah dg comment juga) dgn code yg banyak nya 200 line dlm 1 file? Upcoming Article is about one-to-many pattern, khusus pola ini 80% ada dalam code saya.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-5792940264711264013?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/10/design-pattern.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-2723358792422678784</guid><pubDate>Sat, 17 Oct 2009 17:11:00 +0000</pubDate><atom:updated>2009-10-17T10:16:50.485-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Developer Tool</category><title>SqlDeveloper</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Dengan ada nya 1 tool ini, pekerjaan yg berhubungan dg DB terasa ringan. Walaupun terkadang loading dan lain sbg nya lambat yg dikarenakan di intepreter oleh java.&lt;br /&gt;Dan MySQL terkadang masih kombinasi dg phpMyAdmin, sisanya postgre, dll, tinggal &lt;br /&gt;download driver utk sqlDeveloper connect jalan.&lt;br /&gt;&lt;br /&gt;Nah utk tambahan aja cuba download &lt;a href="http://www.oracle.com/technology/software/products/sql/index.html"&gt;disini&lt;/a&gt;. Have fun...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-2723358792422678784?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/10/sqldeveloper.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-1038135124760134121</guid><pubDate>Fri, 16 Oct 2009 16:55:00 +0000</pubDate><atom:updated>2009-10-16T19:56:55.627-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>PHP go green</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Hello, lama ga nulis jadi bingung mau nulis apa. Anyway gw lagi kepikiran bagaimana seorang programmer bisa "GO GREEN" juga. Secara pribadi gw ada tips nya:&lt;br /&gt;&lt;br /&gt;1. Perencanaan program baik nya di lakukan diatas kertas dulu sblm berhadapan dgn &lt;br /&gt;   komputer atau laptop.&lt;br /&gt;2. Kertas yg akan dipakai di usahakan semaksimal mungkin cukup menampung semua ide.&lt;br /&gt;3. Mungkin Konsep mind map dan UML dapat membantu sekali.&lt;br /&gt;4. Jika perencanaan ini dilakukan di siang hari, ada baiknya menggunakan penerangan &lt;br /&gt;   dari sinar matahari.&lt;br /&gt;5. Ketika sedang ingin keluar makan siang ada baik nya komputer/laptop di stand-by &lt;br /&gt;   atau kalau cukup memungkinkan di matikan/hybernate.&lt;br /&gt;6. Berhentilah merokok, ngemil &amp; ngopi. Beralihlah ke yg lbh "hijau" misalkan &lt;br /&gt;   yoghurt, susu &amp; teh. Mungkin Biskuit ringan utk yg menderita maag.&lt;br /&gt;7. Sisihkan 10.000 - 30.000 yg dulunya utk membeli rokok (no mean to offense) atau&lt;br /&gt;   dari penghasilan utk membeli tanaman pot, slain utk estetika ruangan/rumah,&lt;br /&gt;   berguna juga sbg penghasil udara bersih dan penahan panasnya paparan sinar &lt;br /&gt;   matahari (sumber nya gw lupa) shg suhu ruangan bs di turunkan 1-2 derajat.&lt;br /&gt;&lt;br /&gt;Sekiranya pembaca ada tambahan silahkan.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-1038135124760134121?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/10/php-go-green.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-6265622086629726749</guid><pubDate>Thu, 25 Jun 2009 17:06:00 +0000</pubDate><atom:updated>2009-06-25T10:19:13.191-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>When You Down</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Yeah masih rentetan dari artikel &lt;span style="font-style:italic;"&gt;"Just 5 Minutes"&lt;/span&gt;. Have you ever felt down? Well I do and yes I am now in this situation.&lt;br /&gt;One Family see me with my job well... I don't know, they just see no future. And my heart says differently. I see future with the thing am doing, coding in PHP. But sometimes people just want to see what they wanted to see and think what they wanted to think.&lt;br /&gt;&lt;br /&gt;They don't see money, indeed, but to me, am investing my time and hard work. And the worst thing is when we have to face the real world, it seems that we are totally lost.&lt;br /&gt;I have just not &lt;span style="font-style:italic;"&gt;there&lt;/span&gt; yet...&lt;br /&gt;&lt;br /&gt;I just wish am still can hold this longer, struggle more, fight more, encouraged more... and in the end they will see that all my hard work and time are not in vain.&lt;br /&gt;Not whissing but trying... Though i feel walking alone... &lt;br /&gt;&lt;br /&gt;At the end of this article i just wanted to say,"Hey great success, money, and prosperity I am coming, prepared yourself to welcome me", thx. &lt;br /&gt;Coding with ethic, coding for life. And yes to live this life you need code, code of life. Not easy as spoken but worth to try.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-6265622086629726749?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/06/when-you-down.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-857096647483323724.post-7267279722430732173</guid><pubDate>Tue, 23 Jun 2009 11:56:00 +0000</pubDate><atom:updated>2009-06-23T05:14:48.528-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Shout Out</category><title>Just 5 Minutes</title><description>PHP-er,&lt;br /&gt;&lt;br /&gt;Hanya 5 menit? Iya hanya 5 menit. Anda pejamkan mata anda dan pikirkan kembali hal-hal positif yg anda pernah raih sebelum nya. Dan lihat perbedaan kemampuan anda. Saya percaya sebelum 5 menit anda sudah kembali sampai ke masa kecil anda.&lt;br /&gt;&lt;br /&gt;Nah pelajaran apa yg anda dapat dalam 5 menit? Mudah dlm 5 menit anda telah mereview betapa anda memiliki potensi yang besar, kemampuan otak utk berpikir cepat krn kejadian yg anda lalui bertahun2 anda dapat review kurang dari 5 menit. Jadi secara kemampuan berpikir anda amat sangat hebat.&lt;br /&gt;&lt;br /&gt;Anda dapat melihat perbedaan dari segi kemampuan dan hal2 yg telah anda raih, ini menandakan tidak ada yg tidak bisa anda lakukan. Dan secara otak anda mampu untuk belajar utk menyelesaikan masalah.&lt;br /&gt;&lt;br /&gt;Anda dapat melihat hal2 positif yg telah anda raih dan capai dalam hidup sampai sekarang, maka dari itu jgn berpikir negatif ttg diri anda. Dan dari semua itu 1 hal yg perlu ditekankan, kenapa kita baru sadar ketika kita pejamkan mata dan mengikuti intruksi singkat ini, yg pada nyatanya tidak perlu sampai 5 menit?&lt;br /&gt;&lt;br /&gt;Itulah kadang kesibukan, kekhawatiran dan kekecewaan menutupi hal2 positif dan indah yg pernah anda raih sebelum nya. Tapi ada yg pernah bertanya kepada saya, pak Ade kenapa ketika saya pejamkan mata saya tidak merasakan, memikirkan dan melihat apapun dibenak saya. Jawab saya, bagus! setidak nya anda telah memulai utk mencoba, maka dari itu anda akan berusaha (setidak nya).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;"Karena lebih baik mencoba dan gagal seumur hidup, daripada diam"&lt;/span&gt;, Anonymous&lt;br /&gt;&lt;br /&gt;Thx, coding with ethics, coding for life&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/857096647483323724-7267279722430732173?l=blog.robotekindo.net' alt='' /&gt;&lt;/div&gt;</description><link>http://blog.robotekindo.net/2009/06/just-5-minutes.html</link><author>noreply@blogger.com (adesst)</author><thr:total>0</thr:total></item><language>en-us</language><media:rating>nonadult</media:rating></channel></rss>

