<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2064884701118401039</id><updated>2024-10-03T13:09:19.900-07:00</updated><category term="php"/><category term="apache"/><category term="api"/><category term="centos"/><category term="ftp"/><category term="mysql"/><category term="ubuntu"/><category term="web application development"/><category term="80"/><category term="PHP scripts are being downloaded instead of being executed"/><category term="SE"/><category term="algorithm"/><category term="apache2"/><category term="banking"/><category term="best practices"/><category term="busy"/><category term="database design"/><category term="dijkstra"/><category term="fake anti-virus"/><category term="file"/><category term="http"/><category term="installation"/><category term="lampp"/><category term="link state"/><category term="linux"/><category term="live security platinum"/><category term="malware attack"/><category term="money transfer"/><category term="nginx installation"/><category term="ondrej"/><category term="php5"/><category term="php5 in nginx"/><category term="php5-cli"/><category term="port"/><category term="programming"/><category term="project management"/><category term="routing"/><category term="server"/><category term="simulation"/><category term="skype"/><category term="software engineering tools"/><category term="software industry"/><category term="text"/><category term="tutorial"/><category term="update"/><category term="version"/><title type='text'>PHP Coding Pro</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>26</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-3055363397014030941</id><published>2015-02-20T01:04:00.001-08:00</published><updated>2015-02-20T01:10:07.782-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apache2"/><category scheme="http://www.blogger.com/atom/ns#" term="ondrej"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="php5"/><category scheme="http://www.blogger.com/atom/ns#" term="php5-cli"/><category scheme="http://www.blogger.com/atom/ns#" term="server"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><category scheme="http://www.blogger.com/atom/ns#" term="update"/><category scheme="http://www.blogger.com/atom/ns#" term="version"/><category scheme="http://www.blogger.com/atom/ns#" term="web application development"/><title type='text'>Update PHP Version to 5.4.37 in Ubuntu 12.04</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
PHP 5.4.37 is not available in Ubuntu 12.04 repositories. You may update your PHP version from some other repositories (PPA).&lt;br /&gt;
&lt;br /&gt;
I am going to use ondrej&#39;s oldstable PPA for updating PHP. You will have to run the following commands to complete the process:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;1. &lt;code&gt;sudo apt-get install python-software-properties&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;code&gt;2. &lt;/code&gt;&lt;code&gt;&lt;code&gt;sudo add-apt-repository ppa:ondrej/php5-oldstable&lt;/code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;code&gt;&lt;code&gt;3. &lt;/code&gt;&lt;/code&gt;&lt;code&gt;&lt;code&gt;&lt;code&gt;sudo apt-get update&lt;/code&gt;&lt;/code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;code&gt;&lt;code&gt;&lt;code&gt;4. &lt;/code&gt;&lt;/code&gt;&lt;/code&gt;&lt;code&gt;sudo apt-get install php5&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;code&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;The latest version of PHP will be installed. &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/3055363397014030941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2015/02/update-php-version-to-5410-in-ubuntu.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3055363397014030941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3055363397014030941'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2015/02/update-php-version-to-5410-in-ubuntu.html' title='Update PHP Version to 5.4.37 in Ubuntu 12.04'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-6062591881136338369</id><published>2013-10-13T06:49:00.000-07:00</published><updated>2013-10-13T06:50:47.741-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="nginx installation"/><category scheme="http://www.blogger.com/atom/ns#" term="PHP scripts are being downloaded instead of being executed"/><category scheme="http://www.blogger.com/atom/ns#" term="php5 in nginx"/><title type='text'>How to Install nginx on Ubuntu for Hosting PHP scripts</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&quot;nginx&quot; is http server developed by &lt;span class=&quot;st&quot;&gt;Igor Sysoev. It became popular because of it&#39;s efficiency for serving static web pages. It&#39;s caching mechanism grabbed web administrators&#39; attraction. PHP scripts can be hosted in nginx server too. Now, I am going discuss how to install nginx on Ubuntu and how to configure to host PHP scripts.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;st&quot;&gt;Installing nginx:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;st&quot;&gt;&lt;code&gt;sudo apt-get install nginx&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;st&quot;&gt;Start nginx server:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;st&quot;&gt;&lt;code&gt;sudo service nginx start&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;Now, you may host your static html pages in nginx. Root directory of server is at:&lt;br /&gt;
&lt;code&gt;/usr/share/nginx/www&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
If you want to host hello.html, you have to copy the &quot;hello.html&quot; file into the root directory and then browse from &quot;http://localhost/hello.html&quot;.&lt;br /&gt;
&lt;br /&gt;
Now install &quot;php5-fpm&quot; for executing PHP scripts:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo apt-get install php5-fpm &lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Now, you have to configure nginx to execute PHP scripts. If you ignore this part, then your hosted php scripts will be downloaded instead of executing.&lt;br /&gt;
&lt;br /&gt;
Open the configuration file:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;sudo nano /etc/nginx/sites-available/default&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Now find the following line:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;index index.html index.htm;&lt;/code&gt;
&lt;br /&gt;
&lt;br /&gt;
Then change as follow:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;index index.php index.html index.htm;&lt;/code&gt;
&lt;br /&gt;
&lt;br /&gt;
Find following line too:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #location ~ \.php$ {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # &amp;nbsp; fastcgi_split_path_info ^(.+\.php)(/.+)$;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # NOTE: You should have &quot;cgi.fix_pathinfo = 0;&quot; in php.ini&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # With php5-cgi alone:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_pass 127.0.0.1:9000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # With php5-fpm:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_pass unix:/var/run/php5-fpm.sock;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # &amp;nbsp; fastcgi_index index.php;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # &amp;nbsp;&amp;nbsp; include fastcgi_params;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #} &lt;br /&gt;
&lt;/code&gt;
&lt;br /&gt;
Then change as follow:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
location ~ \.php$ {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_split_path_info ^(.+\.php)(/.+)$;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # NOTE: You should have &quot;cgi.fix_pathinfo = 0;&quot; in php.ini&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # With php5-cgi alone:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_pass 127.0.0.1:9000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # With php5-fpm:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_pass unix:/var/run/php5-fpm.sock;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_index index.php;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; include fastcgi_params;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/code&gt; &lt;br /&gt;
&lt;br /&gt;
Final updated texts will be as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
# You may add here your&lt;br /&gt;# server {&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;br /&gt;# }&lt;br /&gt;# statements for each of your virtual hosts to this file&lt;br /&gt;&lt;br /&gt;##&lt;br /&gt;# You should look at the following URL&#39;s in order to grasp a solid understanding&lt;br /&gt;# of Nginx configuration files in order to fully unleash the power of Nginx.&lt;br /&gt;# http://wiki.nginx.org/Pitfalls&lt;br /&gt;# http://wiki.nginx.org/QuickStart&lt;br /&gt;# http://wiki.nginx.org/Configuration&lt;br /&gt;#&lt;br /&gt;# Generally, you will want to move this file somewhere, and start with a clean&lt;br /&gt;# file but keep this around for reference. Or just disable in sites-enabled.&lt;br /&gt;#&lt;br /&gt;# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.&lt;br /&gt;##&lt;br /&gt;&lt;br /&gt;server {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #listen&amp;nbsp;&amp;nbsp; 80; ## listen for ipv4; this line is default and implied&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #listen&amp;nbsp;&amp;nbsp; [::]:80 default ipv6only=on; ## listen for ipv6&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; root /usr/share/nginx/www;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; index index.php index.html index.htm;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Make site accessible from http://localhost2/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; server_name localhost;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; location / {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # First attempt to serve request as file, then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # as directory, then fall back to index.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try_files $uri $uri/ /index.html;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # Uncomment to enable naxsi on this location&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # include /etc/nginx/naxsi.rules&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; location /doc/ {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; alias /usr/share/doc/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; autoindex on;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; allow 127.0.0.2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; deny all;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Only for nginx-naxsi : process denied requests&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #location /RequestDenied {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # For example, return an error code&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #return 418;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #error_page 404 /404.html;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # redirect server error pages to the static page /50x.html&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #error_page 500 502 503 504 /50x.html;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #location = /50x.html {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; root /usr/share/nginx/www;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; location ~ \.php$ {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_split_path_info ^(.+\.php)(/.+)$;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # NOTE: You should have &quot;cgi.fix_pathinfo = 0;&quot; in php.ini&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # With php5-cgi alone:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_pass 127.0.0.1:9000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; # With php5-fpm:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_pass unix:/var/run/php5-fpm.sock;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; fastcgi_index index.php;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; include fastcgi_params;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # deny access to .htaccess files, if Apache&#39;s document root&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # concurs with nginx&#39;s one&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #location ~ /\.ht {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp; deny all;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# another virtual host using mix of IP-, name-, and port-based configuration&lt;br /&gt;#&lt;br /&gt;#server {&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; listen 8000;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; listen somename:8080;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; server_name somename alias another.alias;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; root html;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; index index.html index.htm;&lt;br /&gt;#&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; location / {&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try_files $uri $uri/ /index.html;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;#}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# HTTPS server&lt;br /&gt;#&lt;br /&gt;#server {&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; listen 443;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; server_name localhost;&lt;br /&gt;#&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; root html;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; index index.html index.htm;&lt;br /&gt;#&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl on;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl_certificate cert.pem;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl_certificate_key cert.key;&lt;br /&gt;#&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl_session_timeout 5m;&lt;br /&gt;#&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl_protocols SSLv3 TLSv1;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; ssl_prefer_server_ciphers on;&lt;br /&gt;#&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; location / {&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try_files $uri $uri/ /index.html;&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;#}&lt;br /&gt;
&lt;/code&gt;
&lt;br /&gt;
Installation of nginx for hosting PHP scripts is complete.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/6062591881136338369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2013/10/how-to-install-nginx-on-ubuntu-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/6062591881136338369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/6062591881136338369'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2013/10/how-to-install-nginx-on-ubuntu-for.html' title='How to Install nginx on Ubuntu for Hosting PHP scripts'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-7878712205269898370</id><published>2012-12-20T09:45:00.000-08:00</published><updated>2012-12-20T09:49:19.376-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apache"/><category scheme="http://www.blogger.com/atom/ns#" term="api"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><title type='text'>PHP Script Execution Nature, A Problem and Solution</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Do you know that a php script cannot be executed simultaneously on a single server. Even another script which is included with a executing script also becomes unavailable for execution or being included with other script. Usually a php script with complex algorithms and multiple mysql operations takes approximately 0.005 seconds for completing execution. For usual scripting with some mysql operations and an limited amount of users, the execution nature of apache server (PHP) is perfect. But, suppose, if a script has single or multiple API request to remote servers, then it will take some extra seconds to accept the reply. By the mean time other requests will be queued and will be processed while the script becomes free.&lt;br /&gt;
&lt;br /&gt;
Recently, I have created a script which has more than 25 API requests and requires around 1-2 minutes for completing the whole execution. As the script has some dependencies over some universal scripts of my application, so I needed to change something to make the system always accessible for other users. First thing came to mind was to divide the whole execution and run it on multiple execution to make sure it frees the related scripts for other users for some while. I have used a Session Variable ($_SESSION) where I have put all information required for requesting API request. For every execution of the script, now it sends only a single API request, and then frees the script and redirect to the same script for rest of the requests.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/7878712205269898370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/12/php-script-execution-nature-problem-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/7878712205269898370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/7878712205269898370'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/12/php-script-execution-nature-problem-and.html' title='PHP Script Execution Nature, A Problem and Solution'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-3244760599043782478</id><published>2012-10-12T23:53:00.000-07:00</published><updated>2012-10-12T23:53:22.706-07:00</updated><title type='text'>Enable mod_rewrite on apache2 server in Ubuntu</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Open terminal write the following codes:&lt;br /&gt;
&lt;br /&gt;
sudo a2enmod rewrite&lt;br /&gt;
&lt;br /&gt;
sudo gedit /etc/apache2/sites-available/default&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;After executing the second code, a text editor will be open. Find the following code:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;Options Indexes FollowSymLinks MultiViews&lt;br /&gt;
AllowOverride None&lt;br /&gt;
Order allow,deny&lt;br /&gt;
allow from all&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Edit and change like below:&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;Options Indexes FollowSymLinks MultiViews&lt;br /&gt;
AllowOverride all&lt;br /&gt;
Order allow,deny&lt;br /&gt;
allow from all&lt;/code&gt; &lt;br /&gt;
&lt;br /&gt;
Then restart apache&lt;br /&gt;
&lt;br /&gt;
sudo service apache2 restart&lt;br /&gt;
&lt;br /&gt;
-That&#39;s all.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/3244760599043782478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/10/enable-modrewrite-on-apache2-server-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3244760599043782478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3244760599043782478'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/10/enable-modrewrite-on-apache2-server-in.html' title='Enable mod_rewrite on apache2 server in Ubuntu'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-2173141983566609853</id><published>2012-10-12T23:43:00.000-07:00</published><updated>2012-10-12T23:43:03.941-07:00</updated><title type='text'>Increase Maximum Memory Allocation Limit without changing in PHP.INI</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Add the following code in your php code if you want to increase maximum memory allocation for any of your specific script which execute to create or modify bigger graphical or other types of files.&lt;br /&gt;
&lt;br /&gt;
ini_set(&#39;memory_limit&#39;,&#39;800M&#39;);&lt;br /&gt;
&lt;br /&gt;
800M represents 800 megabytes.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/2173141983566609853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/10/increase-maximum-memory-allocation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2173141983566609853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2173141983566609853'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/10/increase-maximum-memory-allocation.html' title='Increase Maximum Memory Allocation Limit without changing in PHP.INI'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-4027079848467553249</id><published>2012-09-12T23:27:00.000-07:00</published><updated>2012-09-12T23:49:23.039-07:00</updated><title type='text'>Need More Execution Time without Changing PHP.INI</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Sometimes it is required to execute multiple commands in a single script that requires more time than usual. We can edit and increase execution time limit from &quot;php.ini&quot; to avoid termination of execution because of outrun of allowed execution time limit. Where increase is only needed for some specific functions or scripts it is unnecessary to change php.ini file. We can easily add more execution time by adding following line before the bigger time consuming functions/codes:&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;methodname&quot;&gt;&lt;b&gt;set_time_limit(120);&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;methodname&quot;&gt;Code displayed above is defining 120 seconds as a limit of execution time.&lt;b&gt; &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/4027079848467553249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/09/simple-tricks-need-more-execution-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/4027079848467553249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/4027079848467553249'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/09/simple-tricks-need-more-execution-time.html' title='Need More Execution Time without Changing PHP.INI'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-7953133727299099508</id><published>2012-08-09T19:46:00.003-07:00</published><updated>2012-08-09T19:47:36.742-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="best practices"/><category scheme="http://www.blogger.com/atom/ns#" term="database design"/><category scheme="http://www.blogger.com/atom/ns#" term="mysql"/><title type='text'>Database Design Best Practices - part 1</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;b&gt;Never create multiple tables for storing similar information.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Suppose, you are going to make an inventory software for a shop where you will need to store purchase, sales and transfer information. You have two choices.&lt;br /&gt;
&lt;br /&gt;
One is to create multiple tables for &quot;purchase&quot;, &quot;sales&quot; and &quot;transfer&quot; information.&lt;br /&gt;
&lt;br /&gt;
Second is to make a common table for every transaction of products for all of the given type of transactions.&lt;br /&gt;
&lt;br /&gt;
Second is better.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Example:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;Bad Practice&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
table: purchase (pur_id, date, order_by)&lt;br /&gt;
table: sales (sales_id, date, order_by)&lt;br /&gt;
table: transfer (tr_id, date, order_by)&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Best Practice&lt;/b&gt;&lt;br /&gt;
table: orders (id, date, order_by, order_type)&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;(Here, bracketed elements are the names of attributes or fields of the table.)&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/7953133727299099508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/08/database-design-best-practices-part-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/7953133727299099508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/7953133727299099508'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/08/database-design-best-practices-part-1.html' title='Database Design Best Practices - part 1'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-2950628193687121273</id><published>2012-08-01T21:36:00.000-07:00</published><updated>2012-08-02T01:35:05.917-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fake anti-virus"/><category scheme="http://www.blogger.com/atom/ns#" term="live security platinum"/><category scheme="http://www.blogger.com/atom/ns#" term="malware attack"/><title type='text'>&quot;Live Security Platinum&quot; Malware Problem and Step by Step Solution</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Recently, I have faced some problem regarding a virus named &quot;Live Security Platinum&quot;. It comes to my pc automatically while browsing unknown websites. It appears as following image at desktop:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpDSvvIh7RxGJIfN_MukOHj2_p-oSKc4mJGQnUm7VoPZsM4KpBSv0s2MjOTzXTEtb_IzPg5ueh3gwaMQv4LnWaEGV3UAkkLmPPF-wzZiZpfrdpsOjldoU1K_0fdTg64jrAdMf1Dq46XXg/s1600/3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;95&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpDSvvIh7RxGJIfN_MukOHj2_p-oSKc4mJGQnUm7VoPZsM4KpBSv0s2MjOTzXTEtb_IzPg5ueh3gwaMQv4LnWaEGV3UAkkLmPPF-wzZiZpfrdpsOjldoU1K_0fdTg64jrAdMf1Dq46XXg/s400/3.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
If you get similar message in your pc, never click on the bubble, not even (x) or settings icon. Wherever you click, it will start a window where you will see a list of infected files of you computer and Live Security Platinum will stop all other executable files and make great damages on them.&lt;br /&gt;
&lt;br /&gt;
If you have done the mistake and clicked on it, just don&#39;t wait, restart you computer as soon as possible. After restart, go to &lt;b&gt;Start&amp;gt;All Programs&amp;gt;Live Security Platinum&lt;/b&gt;(folder, don&#39;t click at it&#39;s executable file) then click right button of your mouse keeping the cursor on Live Security Platinum&#39;s executable file and select &lt;b&gt;&quot;Open File Location&quot;&lt;/b&gt;. Delete all files at that location and then uninstall the software from &lt;b&gt;&quot;Program Files&amp;gt;Programs &amp;amp; Features&quot;. &lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/2950628193687121273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/08/live-security-platinum-malware-problem.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2950628193687121273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2950628193687121273'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/08/live-security-platinum-malware-problem.html' title='&quot;Live Security Platinum&quot; Malware Problem and Step by Step Solution'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpDSvvIh7RxGJIfN_MukOHj2_p-oSKc4mJGQnUm7VoPZsM4KpBSv0s2MjOTzXTEtb_IzPg5ueh3gwaMQv4LnWaEGV3UAkkLmPPF-wzZiZpfrdpsOjldoU1K_0fdTg64jrAdMf1Dq46XXg/s72-c/3.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-1014801940344430032</id><published>2012-08-01T20:20:00.001-07:00</published><updated>2012-08-12T22:36:46.502-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="algorithm"/><category scheme="http://www.blogger.com/atom/ns#" term="dijkstra"/><category scheme="http://www.blogger.com/atom/ns#" term="link state"/><category scheme="http://www.blogger.com/atom/ns#" term="routing"/><category scheme="http://www.blogger.com/atom/ns#" term="simulation"/><title type='text'>Simulation of Link State Routing Algorithm Using PHP</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US;&quot;&gt;Link State is one of the main routing protocols. Purpose of any routing
protocols is to dynamically communicate information about all network paths
used to reach a destination and to select from those paths, the best&lt;i&gt; &lt;/i&gt;path
to reach a destination &lt;a href=&quot;http://www.inetdaemon.com/tutorials/networking/index.shtml&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;network&lt;/span&gt;&lt;/a&gt;.
Link state algorithm selects routing paths with lowest costs that are
calculated using a distance metric iteratively checking them from each node.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US;&quot;&gt;&amp;nbsp;&lt;/span&gt;

&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12.0pt; line-height: 115%; mso-bidi-font-size: 11.0pt;&quot;&gt;A
link-state routing protocol is one of the two main classes of &lt;a href=&quot;http://en.wikipedia.org/wiki/Routing_protocol&quot; title=&quot;Routing protocol&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;routing
protocols&lt;/span&gt;&lt;/a&gt; used in &lt;a href=&quot;http://en.wikipedia.org/wiki/Packet_switching&quot; title=&quot;Packet switching&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;packet
switching&lt;/span&gt;&lt;/a&gt; networks for &lt;a href=&quot;http://en.wikipedia.org/wiki/Computer_communication&quot; title=&quot;Computer communication&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;computer communications&lt;/span&gt;&lt;/a&gt; (the other is the &lt;a href=&quot;http://en.wikipedia.org/wiki/Distance-vector_routing_protocol&quot; title=&quot;Distance-vector routing protocol&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;distance-vector routing protocol&lt;/span&gt;&lt;/a&gt;).
Examples of link-state routing protocols include &lt;a href=&quot;http://en.wikipedia.org/wiki/OSPF&quot; title=&quot;OSPF&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;OSPF&lt;/span&gt;&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/IS-IS&quot; title=&quot;IS-IS&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;IS-IS&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12.0pt; line-height: 115%; mso-bidi-font-size: 11.0pt;&quot;&gt;The
link-state protocol is performed by every switching node in the network (i.e.
nodes that are prepared to forward packets; in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Internet&quot; title=&quot;Internet&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;Internet&lt;/span&gt;&lt;/a&gt;,
these are called &lt;a href=&quot;http://en.wikipedia.org/wiki/Router_%28computing%29&quot; title=&quot;Router (computing)&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;routers&lt;/span&gt;&lt;/a&gt;). The basic concept of link-state
routing is that every node constructs a map of the connectivity to the network,
in the form of a &lt;a href=&quot;http://en.wikipedia.org/wiki/Graph_theory&quot; title=&quot;Graph theory&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;graph&lt;/span&gt;&lt;/a&gt;, showing which nodes are connected to
which other nodes. Each node then independently calculates the next best
logical path from it to every possible destination in the network. The
collection of best paths will then form the node&#39;s &lt;a href=&quot;http://en.wikipedia.org/wiki/Routing_table&quot; title=&quot;Routing table&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;routing table&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12.0pt; line-height: 115%; mso-bidi-font-size: 11.0pt;&quot;&gt;This
contrasts with &lt;a href=&quot;http://en.wikipedia.org/wiki/Distance-vector_routing_protocol&quot; title=&quot;Distance-vector routing protocol&quot;&gt;&lt;span style=&quot;color: windowtext; text-decoration: none; text-underline: none;&quot;&gt;distance-vector routing protocols&lt;/span&gt;&lt;/a&gt;,
which work by having each node share its routing table with its neighbors. In a
link-state protocol the only information passed between nodes is connectivity
related.&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 12.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-bidi-font-size: 11.0pt; mso-bidi-language: AR-SA; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US;&quot;&gt;Link state algorithms
are sometimes characterized informally as each router &#39;telling the world about
its neighbors&#39;.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Pseudo-code
of Link State Algorithm is presented below:&lt;/span&gt;&lt;/div&gt;
&lt;ol start=&quot;1&quot; style=&quot;margin-top: 0in;&quot; type=&quot;1&quot;&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Initialization&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;N’ = u&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;For all nodes v&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;If v is a
     neighbor of u&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Then
     D(v) = c(u, v)&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Else&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;D(v)
     = &lt;/span&gt;&lt;span style=&quot;font-family: Symbol; mso-ascii-font-family: Tahoma; mso-bidi-font-family: Tahoma; mso-char-type: symbol; mso-hansi-font-family: Tahoma; mso-symbol-font-family: Symbol;&quot;&gt;&lt;span style=&quot;mso-char-type: symbol; mso-symbol-font-family: Symbol;&quot;&gt;µ&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Loop&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Find w not in N’ such that D(w) is minimum&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Add w to N’&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Update D(v) for each neighbor v of w and not in N’&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;D(v) =
     min( D(v), D(w)+c(w,r) )&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;/*&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Least path cost to w plus cost from w to v */&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;mso-list: l0 level1 lfo1;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&lt;/span&gt;Until N’=N&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;Link State
algorithm is implemented using PHP with Html and Javascript interface. Below I
am presenting the implementation.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;;&quot;&gt;&lt;iframe height=&quot;800px&quot; src=&quot;http://www.conceptuallyright.com/lab/simulations/linkstate_algorithm&quot; width=&quot;100%&quot;&gt;&lt;/iframe&gt; &lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Download Script:&lt;/b&gt; &lt;a href=&#39;http://dl.dropbox.com/u/47625598/linkstate/index.php&#39;&gt;http://dl.dropbox.com/u/47625598/linkstate/index.php&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/1014801940344430032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/08/simulation-of-link-state-routing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/1014801940344430032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/1014801940344430032'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/08/simulation-of-link-state-routing.html' title='Simulation of Link State Routing Algorithm Using PHP'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-4867708365980249318</id><published>2012-07-11T22:52:00.001-07:00</published><updated>2012-07-11T23:15:32.794-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="80"/><category scheme="http://www.blogger.com/atom/ns#" term="apache"/><category scheme="http://www.blogger.com/atom/ns#" term="busy"/><category scheme="http://www.blogger.com/atom/ns#" term="port"/><category scheme="http://www.blogger.com/atom/ns#" term="skype"/><title type='text'>Apache Conflicts with Skype: Step by Step Solution</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;b&gt;Problem:&lt;/b&gt; &lt;br /&gt;
Apache doesn&#39;t start and shows &quot;Busy&quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;
After installation of WAMP or XAMPP server, sometimes apache doesn&#39;t start. But other services like mysql-server or php are running perfectly. But everytime, it is showing &quot;Busy&quot; as warning and doesn&#39;t start when apache is commanded to &quot;start&quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Reason:&lt;/b&gt;&lt;br /&gt;
Every program uses a different port number to run on computer. Some port numbers are allocated for a specific program. Port number 80 is default for webservers. Apache is webserver and it uses &quot;80&quot; as default port number. If this port is already being used by another program, then it will show an warning &quot;Busy&quot; and cannot be started when apache is commanded to start&lt;b&gt;. &lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Solution:&lt;/b&gt;&lt;br /&gt;
Try to find out the program which is using port number &quot;80&quot; and quit it. Usually &quot;Skype&quot; uses port number 80 as an alternative port. It is possible to make that port available without quitting &quot;Skype&quot;.&lt;br /&gt;
&lt;br /&gt;
From skype toolbar, go to &lt;b&gt;Tools &amp;gt; Options &amp;gt; Advanced Settings &amp;gt; Connection. &lt;/b&gt;Then un-check &lt;b&gt;Use port 80 and 443 as alternatives for incoming connections&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigTodfgwIsjVV5UTkMZY9p9YjpVjHQIllkYE9ZRFNzthRNQX1aNuqyuQWX4XhNTsbg5CzSZNu45WFLXEP5SpOfzK4NRcaY8TF8qDVrca3WHvR7Pu8jfZfM_1-W5ahvFV9mVwaS8q0hK6A/s1600/apache_conflicts_skype.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;271&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigTodfgwIsjVV5UTkMZY9p9YjpVjHQIllkYE9ZRFNzthRNQX1aNuqyuQWX4XhNTsbg5CzSZNu45WFLXEP5SpOfzK4NRcaY8TF8qDVrca3WHvR7Pu8jfZfM_1-W5ahvFV9mVwaS8q0hK6A/s320/apache_conflicts_skype.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/4867708365980249318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/07/apache-conflicts-with-skype.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/4867708365980249318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/4867708365980249318'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/07/apache-conflicts-with-skype.html' title='Apache Conflicts with Skype: Step by Step Solution'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigTodfgwIsjVV5UTkMZY9p9YjpVjHQIllkYE9ZRFNzthRNQX1aNuqyuQWX4XhNTsbg5CzSZNu45WFLXEP5SpOfzK4NRcaY8TF8qDVrca3WHvR7Pu8jfZfM_1-W5ahvFV9mVwaS8q0hK6A/s72-c/apache_conflicts_skype.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-3360849754997644710</id><published>2012-05-04T19:32:00.001-07:00</published><updated>2012-05-04T19:32:24.845-07:00</updated><title type='text'>PHP Coding Pro: Disable Notice of Undefined Variable in WampServer...</title><content type='html'>&lt;a href=&quot;http://phpcodingpro.blogspot.com/2012/05/disable-notice-of-undefined-variable-in.html?spref=bl&quot;&gt;PHP Coding Pro: Disable Notice of Undefined Variable in WampServer...&lt;/a&gt;: Yesterday I had to lose a couple of hours to solve a simple problem for my newly installed wamp server. When I tried to open my projects cr...</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/3360849754997644710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/05/php-coding-pro-disable-notice-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3360849754997644710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3360849754997644710'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/05/php-coding-pro-disable-notice-of.html' title='PHP Coding Pro: Disable Notice of Undefined Variable in WampServer...'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-779684251101055103</id><published>2012-05-04T19:04:00.000-07:00</published><updated>2012-05-04T19:04:51.234-07:00</updated><title type='text'>Disable Notice of Undefined Variable in WampServer</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Yesterday I had to lose a couple of hours to solve a simple problem for my newly installed wamp server. When I tried to open my projects created using PHP in browser, they were looking good except a list of warnings. This warning is being displayed because of use of some variable that were not defined before. It was displaying something like this: &quot;Notice: Undefined Variable in line 60&quot;. As, I cannot edit all of my projects&#39; scripts, so I planned to disable this warning. But, I don&#39;t want to disable the other PHP error messages, only warnings/notices.&lt;br /&gt;
&lt;br /&gt;
Found a simple and easy solution. It can be solved by replacing the line &lt;b&gt;&quot;error_reporting = E_ALL&quot;&lt;/b&gt; by &lt;b&gt;&quot;error_reporting = E_ALL &amp;amp; ~E_NOTICE&quot;&lt;/b&gt; at php.ini (php configuration file). But, after trying to edit a php.ini at &quot;wamp/bin/php&quot; I didn&#39;t see any changes. What happened, after some trial I got that, I am editing the wrong file. I should&#39;ve edited php.ini from &quot;wamp/bin/apache/Apache2.2.21/bin/&quot;. Edited that file and got the result at last. It&#39;s really confusing when there are multiple same files in different subfolders of a same root folder.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/779684251101055103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/05/disable-notice-of-undefined-variable-in.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/779684251101055103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/779684251101055103'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/05/disable-notice-of-undefined-variable-in.html' title='Disable Notice of Undefined Variable in WampServer'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-5100625464895231506</id><published>2012-03-11T06:49:00.008-07:00</published><updated>2012-03-11T10:53:34.359-07:00</updated><title type='text'>Color- Synchronization between html and gd library</title><content type='html'>Is there any differences in color codes in php-gd library and html? When I pick a color and send it to script, it doesn&#39;t look same. I need to find out a procedure to make them synchronized.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Oh, I got a point, #&lt;a target=&quot;_blank&quot; href=&quot;http://www.w3schools.com/tags/ref_color_tryit.asp?hex=F0F8FF&quot; style=&quot;color: rgb(255, 0, 0); background-color: rgb(255, 255, 255); font-family: verdana, helvetica, arial, sans-serif; font-size: 12px; &quot;&gt;#F0F8FF&lt;/a&gt; is a hexa-decimal representation of color, which is widely used in html and supported by all browsers. But, I should use different format of color code except hex which is similar to gd library&#39;s way of color recognition. Usually GD makes color from intensity of green, red and blue. I can also use this same format for html by using rgb($red, $green, $blue) instead of hex. Hope, it will help me.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, I have to think about dynamic use of this format which will come directly from my database. I think, if I use &#39;-&#39; as delimiter then it will be perfect. I will generate html and gd script from the same think as they require by deleting &#39;-&#39; and using the real values. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This way I could solve my problem.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/5100625464895231506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/color-synchronization-between-html-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/5100625464895231506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/5100625464895231506'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/color-synchronization-between-html-and.html' title='Color- Synchronization between html and gd library'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-6143188479250780767</id><published>2012-03-10T05:25:00.014-08:00</published><updated>2012-03-16T10:42:47.284-07:00</updated><title type='text'>FFMPEG-PHP! Made me tired</title><content type='html'>&lt;span&gt;&lt;span style=&quot;font-size: 100%;&quot;&gt;It is almost two weeks, I have started working on something which requires ffmpeg-php extensions. Downloaded some classes, none of them worked, because I was using windows platform, and ffmpeg decoders still don&#39;t like to work with windows. Oh, I have to go back linux again. &lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://amar-linux.blogspot.com/&quot; style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;Sarmed Vai&lt;/a&gt;&lt;span&gt;&lt;span style=&quot;font-size: 100%;&quot;&gt; suggested me to test linux at Oracle VirtualBox. That helped me a lot, because I had to install, re-install and uninstall different distributions of linux, direct installation could make my pc gone-forever.&lt;/span&gt;&lt;/span&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;Ubuntu couldn&#39;t help, it&#39;s not completely perfect for server things, but for personal use, it&#39;s awesome. And there is another version may be exist which is for making a server, but I had no cd of that. Gave up after multiple trial, then downloaded CentOS (again suggested by Sarmed Vai).&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;I had to install apache (httpd), php, mysql etc, and also ffmpeg, I am now going to tell you how I tried to install ffmpeg in CentOS.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;Tried the following commands at terminal:&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;div&gt;cd ~&lt;/div&gt;&lt;div&gt;mkdir ffmpeg&lt;/div&gt;&lt;div&gt;wget http://dfn.dl.sourceforge.net/sourceforge/ffmpeginstall/ffmpeginstall.3.2.1.tar.gz&lt;/div&gt;&lt;div&gt;tar zxf ffmpeginstall.3.2.1.tar.gz&lt;/div&gt;&lt;div&gt;cd ffmpeginstall.3.2.1&lt;/div&gt;&lt;div&gt;./install&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;I saw many things on screen, but don&#39;t know if it is really done. Just tested some functions, but couldn&#39;t see any progress. I quit. I did this procedure for multiple times, and in different distros. Now, I should to wait for a help.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;I think I have to think about windows again. Let me do some search in google, found some posts, but not sure if they can help me. &lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;It didn&#39;t help, followed the complete procedure, but it&#39;s not working. It&#39;s a nightmare for me, I lost lots of hours for doing this, and could not make it, Dhaaaaatt....&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;Thanks to Muntasir Rashid, he just have given me a ffmpeg-php enabled hosting. Just checked a function for making a thumbnail from a video, and wow! it is created successfully. Now, I have to make a video from set of pictures.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;Got another way to install ffmpeg-php in my CentOS server.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;Already did the following procedures:&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;1. Added a file: &quot;/etc/yum.repos.d/dag.repo&quot; with following contents to add a 3rd party yum repository:&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;div&gt;[dag]&lt;/div&gt;&lt;div&gt;name=DAG RPM Repository&lt;/div&gt;&lt;div&gt;baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag&lt;/div&gt;&lt;div&gt;gpgcheck=1&lt;/div&gt;&lt;div&gt;enabled=1&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;2.  Ran following commands:&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;div&gt;rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5&lt;/div&gt;&lt;div&gt;wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt&lt;/div&gt;&lt;div&gt;rpm --import RPM-GPG-KEY.dag.txt&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;3. Tested the setup using the following command:&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;rpm -q gpg-pubkey-*&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;Got some multiple line output like: gpg-pubkey-e8562897-459f07a4&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;4. Then updated &quot;yum&quot; by the command: yum update&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;5. Installed ffmpeg using the command: yum install ffmpeg ffmpeg-devel&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;6. Downloaded and installed ffmpeg-php using the following command:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;div&gt;wget http://sourceforge.net/projects/ffmpeg-php/files/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2/download&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;tar -xjf ffmpeg-php-0.6.0.tbz2&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;cd ffmpeg-php-0.6.0&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. Some geniuses think there is an error in the file &quot;ffmpeg_frame.c&quot;, I replaced all &quot;PIX_FMT_RGBA32&quot; patterned text into &quot;PIX_FMT_RGB32&quot;. Hope, it will work.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. Then I had to configure ffmpeg-php using the following command:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;phpize&lt;/div&gt;&lt;div&gt;./configure &amp;amp;&amp;amp; make&lt;/div&gt;&lt;div&gt;make install&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here, I had to fall in a situation. phpize command doesn&#39;t work. I tried to install php-devel by the command &quot;yum install php-devel&quot; and after it&#39;s installation, &quot;phpize&quot; command worked.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then, I had to add the extension to /etc/php.ini by adding the following line:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;extension=ffmpeg.so&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, I have to check if it really works.&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Alhamdulillah, it works.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/6143188479250780767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/ffmpeg-php-made-me-tired.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/6143188479250780767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/6143188479250780767'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/ffmpeg-php-made-me-tired.html' title='FFMPEG-PHP! Made me tired'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-272269454098517594</id><published>2012-03-10T03:52:00.007-08:00</published><updated>2012-03-10T22:55:42.117-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apache"/><category scheme="http://www.blogger.com/atom/ns#" term="centos"/><category scheme="http://www.blogger.com/atom/ns#" term="http"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><title type='text'>Testing Webserver (httpd) at VirtualBox</title><content type='html'>Now, my challenge is to browse websites hosted in CentOS which is running in a VirtualBox window. Already installed httpd, php, mysql, perl etc. and they are working fine. I could manage to test a script using text based web browser lynx.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, I am going to try from host pc using graphical browser. I&#39;ll have to define a ip address at guest CentOS then try to browse it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Before starting, I have to change network settings of virtual box for CentOS installation. I changed it at virtualBox&amp;gt;Settings&amp;gt;Network&amp;gt;Attached to, choose &quot;Host-only Adapter&quot; then clicked &quot;Ok&quot;. Now it&#39;s ready for doing the rest.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I forgot the way how to change ip, searching, but finding nowhere. What happened!! Better keep searching my notes of my B.Sc networking classes. I don&#39;t know where to find them. Wow, I have found those notes, but they are about Red Hat, I have to make them useful for my current CentOS.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Yeah, I can now browse hosted files from guest pc. Let me tell what I have done:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First, I have checked virtual host-only network ip address of host pc.&lt;/div&gt;&lt;div&gt;Then, I have edited ip address of guest &quot;centos&quot; by the following command prompt codes:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;vi /etc/sysconfig/network-scripts/ifcfg-eth0&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;pressed &quot;i&quot; for inserting text into the script, started from at end of the lines there. Added these following lines:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;BOOTPROTO=static&lt;/div&gt;&lt;div&gt;IPADDR=192.168.56.5&lt;/div&gt;&lt;div&gt;NETMASK=255.255.255.0&lt;/div&gt;&lt;div&gt;GATEWAY=192.168.56.1 &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For your information 192.168.56.1 is the ip address of host-only network card (virtual).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then restarted network by the following command prompt code:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;service network restart&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then, went to my graphical browser at host, and got the default centos-apache page. And also could browse my hosted files.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/272269454098517594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/testing-webserver-httpd-at-virtualbox.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/272269454098517594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/272269454098517594'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/testing-webserver-httpd-at-virtualbox.html' title='Testing Webserver (httpd) at VirtualBox'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-246902213093759425</id><published>2012-03-09T01:37:00.004-08:00</published><updated>2012-03-09T01:48:12.935-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="centos"/><category scheme="http://www.blogger.com/atom/ns#" term="lampp"/><category scheme="http://www.blogger.com/atom/ns#" term="mysql"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><title type='text'>Real approach to install php/mysql on linux-apache web server</title><content type='html'>Hi, I have just found out that working on lampp in linux is not a real approach of working on PHP based software development. Recently, I need to use some multimedia encoder/decoders to compile some of my scripts, but lampp could not help me. We usually use lampp to install the whole working environment fast and in one click, but when we need some extra things to be included with this, it may not help and consume time to start. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I am using CentOS to make  a real web server (for test scripts), it has a nice built in package manager YUM. I have already installed &quot;Apache 2&quot; for creating web server. It was easy and fast, apache (httpd) comes with centOS disks as default. I used the following line to install it. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;yum install httpd&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then, I had to install php, php command line, perl, mysql to make the server ready for lamp development environment. This installation process required Internet connection and I used following line to install the whole thing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;yum install php php-cli mysql&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It automatically searched all dependencies and the mirror from which they will be installed. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I didn&#39;t check the environment yet, but hope, it will help me fine.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/246902213093759425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/real-approach-to-install-phpmysql-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/246902213093759425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/246902213093759425'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/03/real-approach-to-install-phpmysql-on.html' title='Real approach to install php/mysql on linux-apache web server'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-2180854306906365922</id><published>2012-02-28T22:46:00.003-08:00</published><updated>2012-02-28T23:09:53.855-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="centos"/><category scheme="http://www.blogger.com/atom/ns#" term="installation"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Installing XAMPP/LAMPP in Linux</title><content type='html'>&lt;b style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;For Ubuntu:&lt;/b&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;Start Terminal.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;If you have already updated you apt repository then enter write &quot;apt-get install lampp&quot; in terminal and press enter. XAMPP will be installed automatically.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;But, if you don&#39;t have updated apt repository, then write &quot;apt-get update&quot; in terminal and press &quot;Enter&quot;.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;Sometime it becomes difficult to install software from Bangladesh. For solving this problem go to &quot;System Settings&quot; from start menus. Then, go to &quot;Software Sources&quot; from Settings menus. Click &quot;Ubuntu Software&quot; tab. change the source of Download from &quot;Download From&quot; drop-down filed. Choose Main Server to avoid problem of online software installation using &quot;apt-get&quot;. Don&#39;t forget to update apt by writing &quot;apt-get update&quot; at terminal and pressing enter.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; font-weight: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;&lt;b&gt;For CentOS:&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;First check if your &quot;wget&quot; command is installed for the system. If not, login to terminal as root and then write &quot;yum install wget&quot; and press enter. Then press y and enter to approve installation of &quot;wget&quot;.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;Then, download installation file for XAMPP.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;write &quot;&lt;span style=&quot;color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;wget &lt;/span&gt;&lt;a href=&quot;http://www.apachefriends.org/download.php?xampp-linux-1.6.8a.tar.gz&quot; title=&quot;http://www.apachefriends.org/download.php?xampp-linux-1.6.8a.tar.gz&quot; style=&quot;color: rgb(108, 66, 14); text-decoration: none; font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;http://www.apachefriends.org/download.php?xampp-linux-1.6.8a.tar.gz&lt;/a&gt;&quot; and press Enter, installation file will be stored in current file directory.&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;After the download is complete, install XAMPP using the command: &lt;span style=&quot;background-color: rgb(255, 255, 255); color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; &quot;&gt;tar xvfz xampp-linux-1.6.8a.tar.gz -C /opt&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Georgia, serif; font-size: 100%; line-height: normal; &quot;&gt;If you want to start XAMPP at the start of the machine Command the following commands:&lt;/div&gt;&lt;div&gt;&lt;p style=&quot;margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;lvl=`egrep :initdefault: /etc/inittab|cut -d: -f2`&lt;/p&gt;&lt;p style=&quot;margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;cd /etc/rc.d/rc${lvl}.d&lt;/p&gt;&lt;p style=&quot;margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;ln -s /opt/lampp/lampp S99lampp&lt;/p&gt;&lt;p style=&quot;margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;ln -s /opt/lampp/lampp K01lampp&lt;/p&gt;&lt;p style=&quot;margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(73, 73, 73); font-family: Verdana, sans-serif; font-size: 12px; line-height: 20px; text-align: -webkit-auto; background-color: rgb(255, 255, 255); &quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span&gt;&lt;b&gt;Starting, Restarting or Stopping XAMPP Server:&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span&gt;First go to root directory: cd /&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span&gt;Then for starting XAMPP server: opt/lampp/lampp start&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left; margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-family: Georgia, serif; &quot;&gt;for re-starting XAMPP server: opt/lampp/lampp restart&lt;/span&gt; &lt;/p&gt;&lt;p style=&quot;text-align: left; margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; background-color: rgb(255, 255, 255); &quot;&gt;&lt;span style=&quot;font-family: Georgia, serif; &quot;&gt;for starting XAMPP server: opt/lampp/lampp stop&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/2180854306906365922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/02/installing-xampplampp-in-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2180854306906365922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2180854306906365922'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/02/installing-xampplampp-in-linux.html' title='Installing XAMPP/LAMPP in Linux'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-3147879395570410225</id><published>2012-01-24T23:17:00.000-08:00</published><updated>2012-01-24T23:24:40.288-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SE"/><category scheme="http://www.blogger.com/atom/ns#" term="software engineering tools"/><category scheme="http://www.blogger.com/atom/ns#" term="software industry"/><title type='text'>Software Engineering Tools and Their Applications</title><content type='html'>&lt;div&gt;&lt;b&gt;Turbo C++&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Compiler/IDE&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; Turbo C++ was a C++ compiler and integrated development environment and computer language originally from Borland.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; Turbo C++ is used for compiling codes written in C/C++ programming language into binary code.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Java Compiler (javac)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Compiler&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; Java is a compiler developed by Sun Java Corporation. Java is an Object Oriented Programming language.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; Javac is used for compiling codes written in Java programming language.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;GNU Debugger&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Debugger&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; The GNU Debugger, usually called just GDB and named gdb as an executable file, is the standard debugger for the GNU software system.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; It is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, Objective-C, Free Pascal, Fortran, Java and partially others.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Intel Debugger&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Debugger&lt;/div&gt;&lt;div&gt;Description: The Intel Debugger (IDB), developed by Intel Corporation.&lt;/div&gt;&lt;div&gt;Application: Intel Debugger  provides support (at various levels depending on compiler product) for debugging programs written in C, C++, and Fortran.&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;DBG&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type: &lt;/b&gt;Debugger&lt;/div&gt;&lt;div&gt;Description: Open source Debugger.&lt;/div&gt;&lt;div&gt;Application: DBG is used for debugging programs written in PHP programming language.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Concurrent Versions System&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Version Control Software&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; The Concurrent Versions System (CVS), also known as the Concurrent Versioning System.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; CVS is a client-server free software revision control system in the field of software development.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Apache Subversion&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type: &lt;/b&gt;Version Control Software&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; Apache Subversion (often abbreviated SVN, after the command name svn) is a software versioning and a revision control system distributed under a free license.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; Developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly-compatible successor to the widely used Concurrent Versions System (CVS).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Yoxel&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type: &lt;/b&gt;Requirement Analysis Tool&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; ArgoUML is developed by Dzmitry Churbanau during the Google Summer of Code 2007 program.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application: &lt;/b&gt;Yoxel is used for analysis of software requirements. It’s ArgoPDF feature helps to generate report in PDF format.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;OpenPSA&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description: &lt;/b&gt;OpenPSA is a management software package for running consultancies and software companies.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; OpenPSA is used for managing a software development project. It provides product database, hour tracking, invoice tracking, reporting etc. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Netbeans&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; IDE&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; Oracle Corporation developed Netbeans IDE.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; Supports all major programming and markup languages like Java, C/C++, Python, Ruby, PHP, HTML, XML etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Eclipse&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type: &lt;/b&gt;IDE&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; Open source IDE.&lt;/div&gt;&lt;div&gt;Application: Supports all major programming and markup languages like supports C/C++, Java, PHP, COBOL, Ruby etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;ASP.NET MVC Framework&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Framework&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; ASP.NET is a pattern base software development framework.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application:&lt;/b&gt; ASP.NET MVC framework is used for developing scalable softwares in .NET platform.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Zend Framework&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type: &lt;/b&gt;Framework&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; Zend is a pattern base web application development framework developed by PHP Company.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application: &lt;/b&gt;Zend is a MVC framework is used for developing scalable softwares in .PHP platform.&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;AgroADML&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Design&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description: &lt;/b&gt;Software Architecture Design Tool &lt;/div&gt;&lt;div&gt;&lt;b&gt;Application: &lt;/b&gt;ArgoADML is a diagramming tool for graphycally editing architectural descriptions represented in ADML (Architecture Description Markup Language).  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;COCOMO&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Cost Estimation Software&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; The Constructive Cost Model (COCOMO) is an algorithmic software cost estimation model developed by Barry W. Boehm. &lt;/div&gt;&lt;div&gt;&lt;b&gt;Application: &lt;/b&gt;COCOMO is used for estimating cost of a software development project using a basic regression formula with parameters that are derived from historical project data and current project characteristics.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;JIRA&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Type:&lt;/b&gt; Issue/Bug Tracking Software&lt;/div&gt;&lt;div&gt;&lt;b&gt;Description:&lt;/b&gt; JIRA (/ˈdʒɪərə/ jeer-ə)[2] is a proprietary issue tracking product, developed by Atlassian.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Application: &lt;/b&gt;Jira is used for bug tracking, issue tracking, and project management.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;u&gt;Reference&lt;/u&gt;&lt;/div&gt;&lt;div&gt;1. http://wikipedia.com&lt;/div&gt;&lt;div&gt;2. http://tigris.org&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/3147879395570410225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2012/01/software-engineering-tools-and-their.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3147879395570410225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/3147879395570410225'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2012/01/software-engineering-tools-and-their.html' title='Software Engineering Tools and Their Applications'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-4177927159059648922</id><published>2011-12-26T20:29:00.000-08:00</published><updated>2011-12-26T22:22:27.828-08:00</updated><title type='text'>SOAP/WSDL based Banking API</title><content type='html'>Secured banking systems use SOAP/WSDL to communicate third party systems. It&#39;s completely platform independent and secured. This communication uses XML data transfers with secured gateway. cURL library (libcURL) allows PHP developers to develop SOAP transactions features between servers/systems. PHP has a built-in library for SOAP communication. But, nuSOAP is a perfect choice to develop SOAP client/server in PHP.&lt;br /&gt;&lt;br /&gt;Download nuSOAP Library: &lt;a href=&quot;http://sourceforge.net/projects/nusoap/files/latest/download&quot;&gt;Sourceforge&lt;/a&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;font-size:180%;&quot; &gt;SOAP Client Development:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;font-size:130%;&quot; &gt;1. Include nuSOAP library first&lt;/span&gt;&lt;br /&gt;It&#39;s like including a php script to other. If the nuSOAP library is stored in a directory &quot;lib&quot; with the filename &quot;nusoap.php&quot;, then it could be include as follows:&lt;br /&gt;&lt;br /&gt;&lt;textarea style=&quot;width: 387px; height: 57px;&quot;&gt;include(&quot;lib/nusoap.php&quot;); &lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;font-size:130%;&quot; &gt;2. Set Parameters&lt;/span&gt;&lt;br /&gt;It is needed to set required parameters to call a wsdl server to communicate. Developer should give parameters based on the subjected WSDL server&#39;s specific function&#39;s requirement.&lt;br /&gt;&lt;br /&gt;Suppose, developer has intended to communicate with a wsdl &quot;https://webservicetest.webserviceurl.com:5555/.wsdl&quot; and calls a function &quot;testConnection&quot;. &quot;testConnection&quot; function of this wsdl requires parameters &quot;id&quot;, &quot;username&quot; and &quot;password&quot;.&lt;br /&gt;&lt;br /&gt;Save parameters in a variable&lt;br /&gt;&lt;textarea style=&quot;width: 386px; height: 108px;&quot;&gt;$params=array(&#39;credentials&#39;=&amp;gt;array(id=&amp;gt;$id,username=&amp;gt;$user,password=&amp;gt;$pass), &#39;params&#39;=&amp;gt;array(destination_country_code=&amp;gt;$country,destination_currency_code=&amp;gt;$currency)); &lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;font-size:130%;&quot; &gt;3. Certificate Issue&lt;/span&gt;&lt;br /&gt;It also requires specific SSL certificate of .pfx or .p12 format. PHP doesn&#39;t process .pfx formatted, so it is needed to convert it into set of files like &quot;key.pem&quot; and &quot;cert.pem&quot; with a pass phrase &quot;pass&quot; and save them in the same directory of the scripts (saving to same directory is not mandatory). (See how to covert .pfx or .p12 SSL into .pem certificate).&lt;br /&gt;&lt;br /&gt;Better to store certificate and wsdl information into variables.&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$wsdl=&quot;https://webservicetest.webserviceurl.com:5555/.wsdl&quot;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$sslkey = getcwd().&quot;/key.pem&quot;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$sslcert = getcwd().&quot;/cert.pem&quot;;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$passphrase= &quot;pass&quot;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;font-size:130%;&quot; &gt;3. Call soap functions&lt;/span&gt;&lt;br /&gt;Now, it is time to initialize a soap call.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$client = new nusoap_client($wsdlurl, &#39;wsdl&#39;, $proxyhost, $proxyport, $proxyusername, $proxypassword); &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$client-&amp;gt;authtype = &#39;certificate&#39;; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$client-&amp;gt;decode_utf8 = 0; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$client-&amp;gt;soap_defencoding = &#39;UTF-8&#39;; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;$client-&amp;gt;setCredentials(&quot;&quot;,&quot;&quot;,&quot;certificate&quot;,  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                array( &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                             &quot;sslcertfile&quot; =&amp;gt; $sslcert,  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                              &quot;sslkeyfile&quot; =&amp;gt; $sslkey,  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                       &quot;passphrase&quot; =&amp;gt; &quot;pass&quot;,  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                              &quot;verifypeer&quot; =&amp;gt; 0, //OPTIONAL  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                               &quot;verifyhost&quot; =&amp;gt; 0 //OPTIONAL  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                                                       )  &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;                                            );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After initializing, it&#39;s time to call specific function of the wsdl. We are going to call &quot;testConnection&quot; function.&lt;br /&gt;&lt;br /&gt;&lt;textarea style=&quot;width: 383px; height: 61px;&quot;&gt;$result = $client-&amp;gt;call(&quot;testConnection&quot;, $params);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;font-size:130%;&quot; &gt;4. Recieve and use response&lt;/span&gt;&lt;br /&gt;Now the response from the WSDL is stored in $result variable. It&#39;s an array, it&#39;s possible to use information from that array as developer need.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/4177927159059648922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/12/soapwsdl-based-banking-api.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/4177927159059648922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/4177927159059648922'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/12/soapwsdl-based-banking-api.html' title='SOAP/WSDL based Banking API'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-5060130225840106717</id><published>2011-12-02T20:42:00.000-08:00</published><updated>2011-12-02T21:38:18.036-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ftp"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><title type='text'>How to upload a file to ftp directory using PHP</title><content type='html'>For some projects, we need to upload a file into another ftp server. In this post we will show a simple procedure and description about uploading a file to a ftp using PHP. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Prerequisites&lt;/h3&gt;&lt;br /&gt;You should have the ftp locations and credentials. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 1:&lt;/h3&gt;&lt;br /&gt;Start PHP script with tag (&lt;?php ?&gt;)&lt;br /&gt;&lt;textarea cols=&quot;55&quot; cols=&quot;1&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;&lt;?php //codes starts here&gt;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 2:&lt;/h3&gt;&lt;br /&gt;Specify the ftp location in a variable. Location could be a domain like &quot;ftp.domain.com&quot; or also could be a IP address like &quot;121.233.45.12&quot;.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$server=&quot;ftp.domain.com&quot;;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 3:&lt;/h3&gt;&lt;br /&gt;Store user name of ftp server in a variable.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$ftp_user_name=&quot;username&quot;;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 4:&lt;/h3&gt;&lt;br /&gt;Store password of ftp server in a variable.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$ftp_user_pass=&quot;password&quot;;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 5:&lt;/h3&gt;&lt;br /&gt;Store the destination location of the file you want to upload. If you want to store the file into the root directory of the ftp, then just mention the name of uploaded file only. But if you want to upload it to a specific folder then, mention the full path and filename. For example, we will use the &quot;In&quot; directory to upload the file with name &quot;example.txt&quot;. (Remember, if you upload two files with same name, then second one will replace the first file.)&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$dest=&quot;In/example.txt&quot;;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 6:&lt;/h3&gt;&lt;br /&gt;Store the source location in a variable. If you want to upload a file which is located at the directory from where the upload script is located, then mention only the file name. But, if your file is in another directory, then you have to mention the full path with file name. For example, We will upload a file situated in &quot;files/example.txt&quot;. &quot;files&quot; is the name of the directory where &quot;example.txt&quot; file is located.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$source=&quot;files/example.txt&quot;;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 7:&lt;/h3&gt;&lt;br /&gt;Establish the connection, store the information of the connection in a variable. We will use ftp_connect($server) function. As we stored server location in the variable &quot;$server&quot;.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$connection=ftp_connect($server);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 8:&lt;/h3&gt;&lt;br /&gt;Login into the ftp server and store information into a variable.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$login=ftp_login($connection, $ftp_user_name, $ftp_user_pass);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 9:&lt;/h3&gt;&lt;br /&gt;This is portion is not obligatory. But, I always use this line to my code for successful ftp file transfer. I suggest you to add this line to your script.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$login=ftp_pasv($connection, true);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 10:&lt;/h3&gt;&lt;br /&gt;Upload the file now. There are two different format of file to upload. They are &quot;FTP_ASCII&quot; and &quot;FTP_BINARY&quot;. If you upload a text file, any of them you can use based on your text format &quot;ASCII&quot; or &quot;UTF&quot;. But, if you upload a file like &quot;zip&quot; or other, use &quot;FTP_BINARY&quot; format.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$upload=ftp_put($connection, $dest, $source, FTP_ASCII);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 11:&lt;/h3&gt;&lt;br /&gt;Now upload is complete, close the ftp connection if you don&#39;t have any other ftp actions. If you have other tasks with this same ftp server just after the upload of the file, then you should not establish connection again.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;ftp_close($connection);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 12:&lt;/h3&gt;&lt;br /&gt;End the PHP tag.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;?&gt;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;This is a simple tutorial of ftp file upload. But, you have to extend codes based on the requirements of your project. Every steps show lines of a single script.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/5060130225840106717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/12/how-to-upload-file-to-ftp-directory.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/5060130225840106717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/5060130225840106717'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/12/how-to-upload-file-to-ftp-directory.html' title='How to upload a file to ftp directory using PHP'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-8720170989113471843</id><published>2011-12-01T20:03:00.000-08:00</published><updated>2011-12-01T20:58:00.533-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="api"/><category scheme="http://www.blogger.com/atom/ns#" term="file"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="text"/><category scheme="http://www.blogger.com/atom/ns#" term="tutorial"/><title type='text'>How to Create a Text File Using PHP</title><content type='html'>Once, before invention of relational database, file (text) were the only way to save information. Now, it is more easier to develop an Information System using database and database is more suitable than using text file. But, still it is needed to use the file for different purposes. For, example, it is needed for ftp based banking API integration. For some projects programmers need to create rewritable php or xml scripts also, for these purposes, files are used. Now, we are going to see how to create a text file using PHP.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 1:&lt;/h3&gt;&lt;br /&gt;Create a php script file and codes will remain inside php tag. &lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;&lt;?php //start of codes &gt;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 2:&lt;/h3&gt; &lt;br /&gt;Specify your text and save it to a variable. &lt;br /&gt;Suppose, you want to save the text: &quot;Let&#39;s make a text file using php.&quot; Then, store it to a variable.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$text=&quot;Let&#39;s make a text file using php.&quot;;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 3:&lt;/h3&gt;&lt;br /&gt;Create a blank text file with your expected name and extension. For this example, we will create a example.txt file. Syntax of this code is fopen(&quot;file/pathname&quot;,&quot;permission&quot;). If you want to store the text file into your current directory from which the script is running then just give the name of the file. But, if you want to store it to a specific location, then you have to give complete path with the name of the creating file. Suppose, your script is located at &quot;root/scripts/file/&quot;, then with only the name of file will bd created with location: &quot;root/scripts/file/example.txt&quot;, but if you want to store it to root directory then give path like &quot;../../example.txt&quot;. Permissions are usually write/read. If you want to just create the file as read only mode, keep permission &quot;r&quot;. Or, if you want to keep it in write mode, then keep &quot;w&quot; or &quot;r+&quot;. We will keep it &quot;w&quot; (write permission mode) for writing a text into it. And we are going to store the file into the same directory of the script&#39;s location.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;$file = fopen(&quot;example.txt&quot;,&quot;w&quot;); &lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 4:&lt;/h3&gt;&lt;br /&gt;Store the text into the file. Require php syntax for this action is fwrite(&quot;file variable&quot;, &quot;Text/ text variable&quot;). As we have created the file and stored it&#39;s information in $file variable and already stored the text into the variable into $text variable, our syntax will be like fwrite($file,$text);&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;fwrite($file,$text);&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step 5:&lt;/h3&gt;&lt;br /&gt;Close the file and end php tax.&lt;br /&gt;&lt;textarea cols=&quot;55&quot; readonly onclick=&#39;this.focus(); this.select();&#39;&gt;fclose($file); ?&gt;&lt;/textarea&gt;&lt;br /&gt;&lt;br /&gt;This is a simple tutorial of creating a text file. You will need to do extended coding for fulfilling additional requirements of your project. It will be great pleasure of mine, if this tutorial helps you.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/8720170989113471843/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/12/how-to-create-text-file-using-php.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/8720170989113471843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/8720170989113471843'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/12/how-to-create-text-file-using-php.html' title='How to Create a Text File Using PHP'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-808961632525881285</id><published>2011-11-29T00:46:00.000-08:00</published><updated>2011-12-02T21:40:40.154-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="api"/><category scheme="http://www.blogger.com/atom/ns#" term="banking"/><category scheme="http://www.blogger.com/atom/ns#" term="ftp"/><category scheme="http://www.blogger.com/atom/ns#" term="money transfer"/><title type='text'>ftp Based Banking API Integrations</title><content type='html'>Lots of financial organizations use ftp as the mean of money transferring gateway to reduce remittance cost. Usually they have a ftp server to which their clients have different user credential to get access. At least two different directories remain as default in every user&#39;s ftp directory named as &quot;In&quot; and &quot;Out&quot;. Some of these money transferring agencies have their own format of text for getting order of financial activity,  some of them doesn&#39;t have any, but they usually make contact with their client for understanding each other. For executing a money transfer or any other financial activity client should get access to the ftp directory and add a text order file in ftp &quot;In&quot; directory. Companies simultaneously checks every client&#39;s ftp &quot;In&quot; directories for checking new orders manually or automatically and if they find any new file, then they starts to execute the order. &lt;br /&gt;&lt;br /&gt;Every text order file has a portion where it saves the current status of the execution of the order. For a new order client keep the status as &quot;Pending&quot; or &quot;0:Pending&quot;. When the financial organization, to which this order came, receives the order and starts to execute they changes the status as &quot;Processing&quot; or something like that. After the completion of the order, they copy the file and saves it to ftp &quot;Out&quot; directory with status changed to &quot;Successfully transferred&quot; or something like that. &lt;br /&gt;&lt;br /&gt;The client also simultaneously checks the ftp &quot;Out&quot; directory for knowing if the order is completed. They check files manually or by their server&#39;s CRON job of script which automatically checks the ftp directory. When they find a new text file at &quot;Out&quot; directory, they checks relevant order text files name to check which order is completed. Ordered organization usually keeps the name same to the text &quot;order&quot; file when they completes the specific order and save a completion text file to &quot;Out&quot; folder. &lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Please See Also:&lt;/h4&gt;&lt;br /&gt;1. &lt;a href=&quot;http://phpcodingpro.blogspot.com/2011/12/how-to-create-text-file-using-php.html&quot;&gt;How to create Text File using PHP&lt;/a&gt;&lt;br /&gt;2. &lt;a href=&quot;http://phpcodingpro.blogspot.com/2011/12/how-to-upload-file-to-ftp-directory.html&quot;&gt;How to upload a file to ftp directory using PHP&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is the rough procedure of ftp based banking. I will share some codes that is needed to configure a ftp based banking API integration to a client&#39;s system next.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/808961632525881285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/11/ftp-based-banking-api-integrations.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/808961632525881285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/808961632525881285'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/11/ftp-based-banking-api-integrations.html' title='ftp Based Banking API Integrations'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-758787455624344595</id><published>2011-11-28T22:10:00.000-08:00</published><updated>2011-11-29T02:40:00.384-08:00</updated><title type='text'>Use of Object Oriented Programming Style</title><content type='html'>Suppose, you have planned to join a big software development team where multiple programmers are working. Object Oriented Programming style is preferable in this project from you. There are very simple difference between structured programming and object oriented programming.&lt;br /&gt;&lt;br /&gt;In structured programming style, the software have some functions to call for different purposes multiple times. In object oriented programming style, the software also have some functions those are grouped by some objects to call multiple time for different purposes. &lt;br /&gt;&lt;br /&gt;For smaller software with few functions, structured programming is the best for development. It will reduce lines of code and processing time. But for bigger project with multiple programmers and huge number of functions, object oriented programming is must. &lt;br /&gt;&lt;br /&gt;Same function name mustn&#39;t be exist in a same software if it is developed in structured programming way. Programmers have to make sure that the newer function is added with a completely unique name. Repeat of same function name could make the software completely malfunctioned. But in object oriented style of programming, programmers have to make sure that the added new object name is unique for the software, and he have to make sure that the name of a function in a object is unique at it&#39;s parent object only. He can repeat the same name of function in different objects.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/758787455624344595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/11/reason-behind-invention-of-object.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/758787455624344595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/758787455624344595'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/11/reason-behind-invention-of-object.html' title='Use of Object Oriented Programming Style'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-1199882240064751216</id><published>2011-11-19T09:41:00.000-08:00</published><updated>2011-11-19T10:08:42.174-08:00</updated><title type='text'>Experience on Banking API Integration</title><content type='html'>Financial institutes always try to make their system most secured. Banking APIs also need secured environment for development. Just passed a whole month working on some banking API integration work in a system developed in PHP. So, I needed to integrate those APIs using PHP. Most of the banks or money transferring agencies uses webservices for interaction with third parties now-a-days. But, some are still using ftp still now. &lt;br /&gt;&lt;br /&gt;When I got involved with that task, I figured out that, this task is about to impossible for me to complete. I never heard about these things &quot;Webservice&quot;, &quot;WSDL&quot; or &quot;SOAP&quot;. But I was familiar with RPC (Remote Process Call). Thanks to Google, it helped me lot to find articles about these technologies. I started reading from SOAP &amp; WSDL and then studied about available PHP/webservice development tools. That was the first time I used CURL for sending http request over Internet. Slowly assembled required codes for sending a SOAP request and handling the response. Then started work for the assignment. My client wanted to use the service from another International Financial Organization using webservices. Usually admins of webservice server provides the documentation about the standard http request structure and the requirements. It&#39;s easier to work with well-documented systems. That organization required predefined ip address from where the SOAP request comes and a SSL certificate which is provided by the admin. They provided me a .p12 SSL, but PHP cannot handle this format of certificate. PHP supports only .pem format of SSL certificate. I had to convert the .p12 SSL into key.pem and cert.pem with a pass key for key.pem. Then added them with the PHP CURL request codes. But, still it was too time consuming to write xml texts for the request. That time I started to use nuSOAP library which made everything easier to do. It generates xml as the requesting webservice function needs. &lt;br /&gt;&lt;br /&gt;nuSOAP library is the best tools for handling SOAP/WSDL development using PHP. SOAP/WSDL helps different systems to interact each other.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/1199882240064751216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/11/experience-on-banking-api-integration.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/1199882240064751216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/1199882240064751216'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/11/experience-on-banking-api-integration.html' title='Experience on Banking API Integration'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2064884701118401039.post-2288533722390866025</id><published>2011-10-15T09:37:00.000-07:00</published><updated>2011-10-15T10:49:38.525-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="programming"/><category scheme="http://www.blogger.com/atom/ns#" term="project management"/><category scheme="http://www.blogger.com/atom/ns#" term="web application development"/><title type='text'>Make plan first, then write codes</title><content type='html'>A project starts with an idea. And an expert coder knows well how to implement an idea. But writing codes is not the major part of a project. It&#39;s a part and very essential, but before starting this, a coder must pay some time for gathering prerequisites of coding. Programming is not so different than other things of our real life. In everything, everyone makes plan first and then they do it. When someone does something without thinking, he could be failed. In programming like web application development a programmer should pay lots of time for planning. Because it&#39;s easier to make something almost same as one thought and would think in future if there is a good plan before coding.&lt;br /&gt;&lt;br /&gt;There are some phases of planning. Firstly, one should to make sure that he knows everything of the project for which he is going to work. Who is going to use this, what will be it&#39;s use and how will it work, these question&#39;s answers must be known to the coder before he starts coding.&lt;br /&gt;&lt;br /&gt;After the clear view about a project&#39;s user-end structure, then the second phase of planning could be started. Second phase stands on the platform of first phase planning. A programmer needs to make the data structure and design the procedure (algorithm) for the project based on it&#39;s user-end/physical structure. He have to design the database and design the structure of coding based on it&#39;s future potential. Then the final stage &quot;programming/coding&quot; will be started.&lt;br /&gt;&lt;br /&gt;We know, a program is completely untouchable, but as we use these programs everyday as non replaceable materials, we can mention the part of a program which directly interacts with us is physical part of the program. And the part which works behind it, is non-physical part. programmers and database designers usually make the whole non-physical part and the basic gateway of physical part like forms/buttons without any graphical ornaments. And front-end/UI designers make the basic user interface into an amazing look. When the phases of planning are finished then the back-end and front-end development could run simultaneously. After the completion of them differently, there are only a single day left to make the project open for it&#39;s user. &lt;br /&gt;&lt;br /&gt;Developer/coders must not think that the planning period is not the part of his work. Obviously it is a fundamental part of development. Without plan nothing could be developed and usually an expert can make plan so fast, but he shouldn&#39;t end planning period so fast. If he thinks that planning is done, then he should to take two or three days break. Sometimes some extra-ordinary ideas come into his mind during this time. Every project is potential, so, a coder should make it flexible to extend in future. And an ill-planned project could to be restarted to change the whole thing when it is almost completed. So, as experts says, coders should plan first and then write codes.</content><link rel='replies' type='application/atom+xml' href='http://phpcodingpro.blogspot.com/feeds/2288533722390866025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://phpcodingpro.blogspot.com/2011/10/make-plan-first-then-write-codes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2288533722390866025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2064884701118401039/posts/default/2288533722390866025'/><link rel='alternate' type='text/html' href='http://phpcodingpro.blogspot.com/2011/10/make-plan-first-then-write-codes.html' title='Make plan first, then write codes'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/00257368815471905091</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>