<?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: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-8385977364634499957</id><updated>2011-12-22T09:39:33.152-08:00</updated><category term='mobile'/><category term='sandbox'/><category term='Video Streaming'/><category term='Escrow'/><category term='dom'/><category term='javascript'/><category term='Online Escrow'/><category term='php oracle'/><category term='AJAX'/><category term='mysql server'/><category term='Rajesh Bhatia'/><category term='FDS'/><category term='add-remove-elements'/><category term='php6'/><category term='Quick Response Code'/><category term='Scrum Meetings'/><category term='yum'/><category term='excel'/><category term='agile'/><category term='compare'/><category term='remove accent'/><category term='roles'/><category term='centOS'/><category term='QR Code'/><category term='csv'/><category term='float'/><category term='PDT'/><category term='Cross Browser'/><category term='print selected part'/><category term='theme'/><category term='utf-8'/><category term='PHP Unit test'/><category term='XDomainRequest'/><category term='Zend'/><category term='XMLHttp Request'/><category term='scrum team'/><category term='flex'/><category term='wordpress'/><category term='pdf'/><category term='mvc'/><category term='PEAR'/><category term='PHP'/><category term='print'/><category term='Tour de Flex'/><category term='Rajesh'/><category term='php v6'/><category term='scrum'/><category term='text'/><category term='sql'/><category term='DB'/><category term='FFMPEG-PHP'/><category term='Eclipse'/><category term='Date calculations'/><category term='phpmyadmin install'/><category term='MySql'/><category term='magento'/><category term='toad for oracle'/><category term='PHP5'/><category term='FFMPEG'/><category term='MDB2'/><title type='text'>Rajesh's Tech Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.php24.in/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://www.php24.in/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>37</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-7785507643443607583</id><published>2011-12-18T21:38:00.000-08:00</published><updated>2011-12-18T21:38:57.155-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh Bhatia'/><title type='text'>Sequence of execution of SQL querry</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Sequence of execution of SQL querry is discussed below which is so helpful to design a query if you are handling large DB results.&lt;br /&gt;&lt;br /&gt;1. FROM &lt;br /&gt;2. JOIN&lt;br /&gt;3. ON&lt;br /&gt;4. WHERE&lt;br /&gt;5. GROUP BY&lt;br /&gt;6. HAVING&lt;br /&gt;7. SELECT&lt;br /&gt;8. DISTINCT&lt;br /&gt;9. ORDER BY&lt;br /&gt;10. LIMIT (TOP)&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-7785507643443607583?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/7785507643443607583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=7785507643443607583' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7785507643443607583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7785507643443607583'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/12/sequence-of-execution-of-sql-querry.html' title='Sequence of execution of SQL querry'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-6488136159379871507</id><published>2011-12-12T10:38:00.000-08:00</published><updated>2011-12-12T10:38:19.123-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php v6'/><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh Bhatia'/><category scheme='http://www.blogger.com/atom/ns#' term='php6'/><title type='text'>PHP V6</title><content type='html'>PHP V6 is currently available as a developer snapshot, so you can download and try out many of the features and changes listed in this article. Features that have been implemented in the current snapshot are discussed below:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Improved Unicode support&lt;/li&gt;&lt;i&gt;Much improved for PHP V6 is support for Unicode strings in many of the core functions. This new feature has a big impact because it will allow PHP to support a broader set of characters for international support. So, if you're a developer or architect using a different language, such as the Java™ programming language, because it has better internationalization (i18n) support than PHP, it'll be time to take another look at PHP when the support improves.Because you can download and use a developer's version of PHP V6 today, you will see some functions already supporting Unicode strings. For a list of functions that have been tested and verified to handle Unicode&lt;/i&gt;&lt;li&gt;Namespaces&lt;/li&gt;&lt;i&gt;Namespaces are a way of avoiding name collisions between functions and classes without using prefixes in naming conventions that make the names of your methods and classes unreadable. So by using namespaces, you can have class names that someone else might use, but now you don't have to worry about running into any problems. Listing 1 provides an example of a namespace in PHP.You won't have to update or change anything in your code because any PHP code you write that doesn't include namespaces will run just fine. Because the namespaces feature appears to be back-ported to V5.3 of PHP, when it becomes available, you can start to introduce namespaces into your own PHP applications.&lt;/i&gt;&lt;li&gt;Web 2.0 features&lt;/li&gt;&lt;i&gt;Depending on how you use PHP and what your scripts look like now, the language and syntax differences in PHP V6 may or may not affect you as much as the next features, which are those that directly allow you to introduce Web 2.0 features into your PHP application.&lt;/i&gt;&lt;li&gt;SOAP&lt;/li&gt;&lt;i&gt;SOAP is one of the protocols that Web services "speak" and is supported in quite a few other languages, such as the Java programming language and Microsoft&amp;reg; .NET. Although there are other ways to consume and expose Web services, such as Representational State Transfer (REST), SOAP remains a common way of allowing different platforms to have interoperability. In addition to SOAP modules in the PHP Extension and Application Repository (PEAR) library, a SOAP extension to PHP was introduced in V5. This extension wasn't enabled by default, so you have to enable the extension or hope your ISP did. In addition, PEAR packages are available that allow you to build SOAP clients and servers, such as the SOAP package.Unless you change the default, the SOAP extension will be enabled for you in V6. These extensions provide an easy way to implement SOAP clients and SOAP servers, allowing you to build PHP applications that consume and provide Web services.If SOAP extensions are on by default, that means you won't have to configure them in PHP. If you develop PHP applications and publish them to an ISP, you may need to check with your ISP to verify that SOAP extensions will be enabled for you when they upgrade.&lt;/i&gt;&lt;li&gt;XML&lt;/li&gt;&lt;i&gt;As of PHP V5.1, XMLReader and XMLWriter have been part of the core of PHP, which makes it easier for you to work with XML in your PHP applications. Like the SOAP extensions, this can be good news if you use SOAP or XML because PHP V6 will be a better fit for you than V4 out of the box.The XMLWriter and XMLReader are stream-based object-oriented classes that allow you to read and write XML without having to worry about the XML details.&lt;/i&gt;&lt;/ol&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Things removed&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;In addition to having new features, PHP V6 will not have some other functions and features that have been in previous versions. Most of these things, such as register_globals and safe_mode, are widely considered "broken" in current PHP, as they may expose security risks. In an effort to clean up PHP, the functions and features listed in the next section will be removed, or deprecated, from PHP. Opponents of this removal will most likely cite issues with existing scripts breaking after ISPs or enterprises upgrade to PHP V6, but proponents of this cleanup effort will be happy that the PHP team is sewing up some holes and providing a cleaner, safer implementation.&lt;/p&gt;&lt;p&gt;Features that will be removed from the PHP version include:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;magic_quotes&lt;/li&gt;&lt;li&gt;register_globals&lt;/li&gt;&lt;li&gt;register_long_arrays&lt;/li&gt;&lt;li&gt;safe_mode&lt;/li&gt;&lt;/ul&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-6488136159379871507?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/6488136159379871507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=6488136159379871507' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6488136159379871507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6488136159379871507'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/12/php-v6.html' title='PHP V6'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-3146349991705445789</id><published>2011-09-02T00:03:00.000-07:00</published><updated>2011-09-02T00:04:36.849-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh Bhatia'/><title type='text'>Steps to publish the mobile application in Flash Builder 4.5</title><content type='html'>iPhone/iPad&lt;br /&gt;&lt;br /&gt;1) Certificate file having extension “.p12”&lt;br /&gt;2) MOBILEPROVISION File (Provisioning file)&lt;br /&gt;&lt;br /&gt;Android&lt;br /&gt;&lt;br /&gt;1) Certificate file having extension “.p12”&lt;br /&gt;&lt;br /&gt;Steps to release the build for iPhone/iPad:&lt;br /&gt;&lt;br /&gt;1) Select the target in Export Release Build screen.&lt;br /&gt;2) Let we choose only Apple iOS, press next button after browsed the 'Export to Folder' path.&lt;br /&gt;3) Now, we have to browse the 'Certification' to publish the application and with respect to this certificate, we have to browse the 'provisioning file'.&lt;br /&gt;4) Now, we have to enter the password for the 'Certification' that has been given with the Certificate.&lt;br /&gt;&lt;br /&gt;Note: We have to aware about that in the mobile-app.xml and provisioning file the 'PRODUCT ID' should be same. &lt;br /&gt;&lt;br /&gt;After released, there are some steps to put the application into iPhone/iPad from MAC, detail as given below:&lt;br /&gt;&lt;br /&gt;1) When you are done with release, you will get the file .ipa extension and transfer to MAC.&lt;br /&gt;2) Right click on the file and achieve the file. Finally, you will get the .app file that will be compatible for iPhone/iPad.&lt;br /&gt;3) Now, using iTune you can transfer the file into iPhone/iPad.&lt;br /&gt;4) Enjoy the application in iPhone/iPad.&lt;br /&gt;&lt;br /&gt;Steps to release the build for Android:&lt;br /&gt;&lt;br /&gt;1) Select the target in Export Release Build screen.&lt;br /&gt;2) Let we choose only Google Android, press next button after browsed the 'Export to Folder' path.&lt;br /&gt;3) Now, we have to browse the 'Certification' i.e. “.p12” extension.&lt;br /&gt;4) Now, we have to enter the password for the 'Certification' that has been given with the Certificate.&lt;br /&gt;&lt;br /&gt;Note: You can also create your own certificate for Android by click on 'Create' button given with the 'Browse' button.&lt;br /&gt;&lt;br /&gt;After released, there are some steps to put the application into Android, detail as given below:&lt;br /&gt;&lt;br /&gt;1) When you are done with release, you will get the file .apk extension.&lt;br /&gt;2) Now, using Android interface or Android Market you can transfer the file into Android Phone.&lt;br /&gt;3) Enjoy the application in Android.&lt;br /&gt;&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;i. http://www.adobe.com/products/flash-builder/features.html &lt;br /&gt;ii. http://www.adobe.com/devnet/flex/articles/mobile-development-flex-flashbuilder.html&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-3146349991705445789?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/3146349991705445789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=3146349991705445789' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/3146349991705445789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/3146349991705445789'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/09/steps-to-publish-mobile-application-in.html' title='Steps to publish the mobile application in Flash Builder 4.5'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-876950716217159328</id><published>2011-08-29T04:22:00.000-07:00</published><updated>2011-08-29T04:24:20.945-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scrum Meetings'/><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh Bhatia'/><title type='text'>The Sprint Meetings</title><content type='html'>The sprint is the heartbeat of the Scrum cycle. It is bookmarked by sprint planning at&lt;br /&gt;the start and by the sprint review and sprint retrospective at the end. The length of the&lt;br /&gt;sprint is fixed and is never extended. Most Scrum teams choose two, three or four&lt;br /&gt;weeks as their sprint duration. Each day during the sprint the team holds a daily&lt;br /&gt;Scrum meeting. Every meeting in Scrum is strictly time-boxed. This means that is has&lt;br /&gt;a maximum duration. It does not means that it needs to occupy this full time. For a 30&lt;br /&gt;day (or four week) sprint the time boxes for planning 1 &amp; 2, review and retrospective&lt;br /&gt;are set at four hours each. For shorter sprints they should be adjusted in proportion to&lt;br /&gt;the sprint length.&lt;br /&gt;Some key attributes of the meetings are described in the following sections. First,&lt;br /&gt;though, I have collected a few experiences I think are worth sharing.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I find two-week sprints a good length to start with. After three sprints, let the&lt;br /&gt;team re-assess the sprint length.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Teams need three sprints to grasp the new concepts, break down old habits&lt;br /&gt;and start to gel as a team.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Never do sprint planning on a Monday morning. The team is not yet at its&lt;br /&gt;best and it is the most common day for holidays and sickness. Never hold&lt;br /&gt;reviews or retrospectives on a Friday afternoon. The team is tired and&lt;br /&gt;thinking about the weekend. Therefore choose sprint boundaries on&lt;br /&gt;Tuesdays to Thursdays.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Teams running two-week sprints might be tempted to hold all sprint&lt;br /&gt;boundary meetings in one day. In other words, start the day with the review,&lt;br /&gt;then the retrospective; after lunch do sprint planning parts 1 and 2. The&lt;br /&gt;thinking is to get all the meetings out of the way and have 9 full days to do&lt;br /&gt;the work. In my experience there are two problems with this approach:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The team does not get that these meetings are part of the work—in fact&lt;br /&gt;the most important part to get right!&lt;br /&gt;&lt;/li&gt;&lt;li&gt;During the last part of the day—sprint planning 2—the team is brain-dead.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Yet, as always, let the team try it out if they so wish!&lt;/i&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;strong&gt;Sprint Planning - Part 1&lt;/strong&gt;&lt;br /&gt;Part 1 of sprint planning (SP1) is really a detailed requirements workshop. The product&lt;br /&gt;owner presents the set of features he would like and the team asks questions to&lt;br /&gt;understand the requirements in sufficient detail to enable them to commit to delivering&lt;br /&gt;the feature during the sprint. The team alone decides what it can deliver in the sprint,&lt;br /&gt;taking into account the sprint duration, the size and current capabilities of its&lt;br /&gt;members, its definition of DONE, any known holidays or leave days and any actions it&lt;br /&gt;committed to during the retrospective held just prior this meeting.&lt;br /&gt;The product owner must be present during this meeting to lead the team in the right&lt;br /&gt;direction and to answer questions—and they will have many. The ScrumMaster must&lt;br /&gt;ensure that any other stakeholder needed to help the team understand the&lt;br /&gt;requirements is present or on call.&lt;br /&gt;Any new backlog items for inclusion in the current sprint and not previously estimated&lt;br /&gt;will be sized immediately during this meeting. This not, however, an excuse to avoid&lt;br /&gt;grooming the backlog—see below!&lt;br /&gt;At the end of SP1 the team commits to the Product Owner what they believe they can&lt;br /&gt;deliver in the form of running tested features. An experienced team may use historic&lt;br /&gt;velocity as a predictor ('yesterday's weather'). This is known as velocity-based&lt;br /&gt;planning. My recommendation to most teams is to do commitment-based planning.&lt;br /&gt;The backlog items the team has committed to is called the selected product backlog.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sprint Planning - Part 2&lt;/strong&gt;&lt;br /&gt;If part 1 is a requirements workshop, part 2 of sprint planning (SP2) is a design&lt;br /&gt;workshop. In this session the team collaborates to create a high-level design of the&lt;br /&gt;features it has committed to deliver. An outcome of this session is the sprint backlog,&lt;br /&gt;or the list of tasks that the team collectively needs to execute in order to turn the items&lt;br /&gt;in the selected product backlog into running tested features. This set of tasks is called&lt;br /&gt;the sprint backlog and is most often represented on a physical task board.&lt;br /&gt;During SP2 the team may have additional questions regarding the requirements. The&lt;br /&gt;ScrumMaster must ensure that the Product Owner and, if necessary, other&lt;br /&gt;stakeholders are on call to answer them.&lt;br /&gt;Design, as everything else in Agile, is emergent. Also, the meeting is time-boxed. So it&lt;br /&gt;is normal that the team won’t get the design perfectly done in this session and will&lt;br /&gt;discover more tasks during the sprint. This is not a sign that something is wrong. They&lt;br /&gt;will simply grab a post-it note and pen and create more tasks whenever necessary&lt;br /&gt;during the sprint.&lt;br /&gt;&lt;i&gt;You will know that SP2 is working when the team is gathered together&lt;br /&gt;around the white board discussing noisily or even arguing about the 'best' or&lt;br /&gt;'right' way to implement a feature.&lt;/i&gt;&lt;br /&gt;&lt;div align="right"&gt;(Do Better Scrum)&lt;/div&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-876950716217159328?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/876950716217159328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=876950716217159328' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/876950716217159328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/876950716217159328'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/08/sprint-meetings.html' title='The Sprint Meetings'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-4352481224743388874</id><published>2011-08-09T22:05:00.000-07:00</published><updated>2011-08-19T10:58:29.778-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='roles'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum team'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Roles Introduction (SCRUM)</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;The scrum process constitutes various roles and are discussed below:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Roles Introduction&lt;/b&gt;&lt;br /&gt;There is no Project Manager role in Scrum. The responsibilities of the traditional project&lt;br /&gt;manager are divided over the three roles in the Scrum Team:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The Product Owner manages the product (and return on investment)&lt;/li&gt;&lt;li&gt;The ScrumMaster manages the process&lt;/li&gt;&lt;li&gt;The team manages itself.&lt;/li&gt;&lt;/ul&gt;This is challenging to individuals who currently fulfil this role and to managers in&lt;br /&gt;organisations in which they work. Michele Sliger and Stacia Broderick have written a&lt;br /&gt;helpful guide to the transition from Project Manager to Agile Coach [Sliger and&lt;br /&gt;Broderick 2008].&lt;br /&gt;There are no appointed leaders of the Scrum Team beyond the Product Owner and&lt;br /&gt;ScrumMaster; none is required. The need for line managers is reduced, as teams&lt;br /&gt;manage themselves to a great extent. It is not uncommon for 50 team members to&lt;br /&gt;report directly to a single line manager in an organisation that has made the transition&lt;br /&gt;to Agile.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Self-organisation&lt;/b&gt;&lt;br /&gt;Self-organisation does not at all imply a laissez-faire approach; on the contrary, selforganised&lt;br /&gt;teams are highly disciplined. They are given full autonomy and carry&lt;br /&gt;correspondingly greater responsibility for delivery accordance with their own&lt;br /&gt;commitments. They are encouraged to take reasonable risks and to learn through&lt;br /&gt;failure and self-reflection. High trust and high commitment is an automatic outcome of&lt;br /&gt;truly self-organising teams.&lt;br /&gt;Teams new to Scrum will require some encouragement to explore their new, broader&lt;br /&gt;boundaries and to take ownership. They frequently need to overcome strong ‘muscle&lt;br /&gt;memory’ of the poor ways in which they were managed and worked, sometimes for&lt;br /&gt;years.&lt;br /&gt;Self-organisation is not an option in Scrum; it is a core principle. Without this, highperforming&lt;br /&gt;teams will not happen. Caveat emptor!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Product Owner&lt;/b&gt;&lt;br /&gt;The responsibilities of the Product Owner role are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Working on a shared vision&lt;/li&gt;&lt;li&gt;Gathering requirements&lt;/li&gt;&lt;li&gt;Managing and prioritising the Product Backlog&lt;/li&gt;&lt;li&gt;Accepting the software at the end of each iteration&lt;/li&gt;&lt;li&gt;Managing the release plan&lt;/li&gt;&lt;li&gt;The profitability of the project (ROI)&lt;/li&gt;&lt;/ul&gt;Metaphor: The Product Owner is a CEO.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;ScrumMaster&lt;/b&gt;&lt;br /&gt;The responsibilities of the ScrumMaster role are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Empowering and shepherding the team&lt;/li&gt;&lt;li&gt;Removing impediments&lt;/li&gt;&lt;li&gt;Keeping the process moving&lt;/li&gt;&lt;li&gt;Socializing&amp;nbsp;Scrum to the greater organisation&lt;/li&gt;&lt;/ul&gt;Metaphor: The Scrum Master is a facilitator, coach, mentor and bulldozer!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Team&lt;/b&gt;&lt;br /&gt;The responsibilities of the Team or Team Member role are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Estimating size of backlog items&lt;/li&gt;&lt;li&gt;Committing to increments of deliverable software and delivering it&lt;/li&gt;&lt;li&gt;Tracking own progress&lt;/li&gt;&lt;li&gt;Is self-organising—but accountable to the Product Owner for delivering as&lt;br /&gt;promised&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Enjoy Programming!!!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-4352481224743388874?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/4352481224743388874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=4352481224743388874' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4352481224743388874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4352481224743388874'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/08/roles-introduction-scrum.html' title='Roles Introduction (SCRUM)'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-5865031452623057173</id><published>2011-08-04T03:24:00.000-07:00</published><updated>2011-08-04T04:40:21.343-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Escrow'/><category scheme='http://www.blogger.com/atom/ns#' term='Online Escrow'/><title type='text'>Online Escrow Payment Flow Algorithm (Instructions Set)</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;On the basis of analysis to implement Escrow Payments, below is the generic algorithm:&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;b&gt;Online Escrow Payment Flow Algorithm (Instructions Set)&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 1&lt;/u&gt;: Buyer requests for the service* and pay the amount through any payment gateway. There should be commission and/or transaction fees included in the amount, then&lt;br /&gt;Total Amount = Amount to seller + Commission and/or Transaction Fees.&lt;br /&gt;At this moment, the status of escrow process will be "0"(zero).&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 2&lt;/u&gt;: The amount that buyer paid will go to the Escrow* (Admin) account using any specific payment gateway.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 3&lt;/u&gt;: Both the parties (buyer and seller) will be informed (through email and/or any other mean) after successful payment with all required details. The status of this escrow process will be set to "1"  i.e  amount has been paid by the buyer.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 4&lt;/u&gt;: If the payment was not successful, then buyer will be informed about it and escrow status will be set to "-1". Seller may be informed about the initiation of this process and this will depend on the type of service.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 5&lt;/u&gt;: Service will be provided to "Buyer" by the service provider which should follow necessary set terms and conditions which will depend on the type of service.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 6&lt;/u&gt;: The required time slap will be provider to "Buyer" to raise dispute against the payment paid for the service. If dispute arises then this would be the duty of Escrow (Admin) to resolve that dispute and there should be set parameters which will be used to resolve dispute. In this condition "Dispute"  status will set to "1" from "0" and payment will be blocked, "dispute resolution time" will be added to the "Escrow Complete" time.&lt;br /&gt;This whole process will depend on the type of service and several different service specific approaches will come handy.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 7&lt;/u&gt;: If resolution of dispute goes in the favor of buyer then "Dispute" status will be set to "2" else &lt;br /&gt;it will be set to "3".&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 8&lt;/u&gt;: Dispute should be resolved in the set interval of time i.e “dispute resolution time”. After this set interval of time, check “Dispute status”. If its value is “2”, then transfer amount back to buyer account after deducting commission and/or transaction fees else transfer set amount to the account of service provider.&lt;br /&gt;Now set escrow process status to “2” i.e Escrow complete.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;State – 9&lt;/u&gt;: If all goes well and there is no any dispute, after completion of “Escrow Complete” time, transfer set amount to the account of seller and set escrow process status to “2” i.e Escrow complete.&lt;br /&gt;&lt;br /&gt;&lt;div align="right"&gt;(Rajesh Bhatia)&lt;/div&gt;&lt;br /&gt;Enjoy Programming!!! &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-5865031452623057173?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/5865031452623057173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=5865031452623057173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/5865031452623057173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/5865031452623057173'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/08/online-escrow-payment-flow-algorithm.html' title='Online Escrow Payment Flow Algorithm (Instructions Set)'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-8302031473825309417</id><published>2011-07-22T03:16:00.000-07:00</published><updated>2011-07-22T03:47:34.303-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Manifesto for Agile Software Development</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;We are uncovering better ways of developing software by doing it and helping others&lt;br /&gt;do it. Through this work we have come to value:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Individuals and interactions over processes and tools&lt;/li&gt;&lt;li&gt;Working software over comprehensive documentation&lt;/li&gt;&lt;li&gt;Customer collaboration over contract negotiation&lt;/li&gt;&lt;li&gt;Responding to change over following a plan&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;That is, while there is value in the items on the right, we value the items on the left&lt;br /&gt;more.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Principles behind the Agile Manifesto&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. Our highest priority is to satisfy the customer through early and continuous delivery&lt;br /&gt;of valuable software.&lt;br /&gt;2. Welcome changing requirements, even late in development. Agile processes&lt;br /&gt;harness change for the customer's competitive advantage.&lt;br /&gt;3. Deliver working software frequently, from a couple of weeks to a couple of months,&lt;br /&gt;with a preference to the shorter timescale.&lt;br /&gt;4. Business people and developers must work together daily throughout the project.&lt;br /&gt;5. Build projects around motivated individuals. Give them the environment and&lt;br /&gt;support they need, and trust them to get the job done.&lt;br /&gt;6. The most efficient and effective method of conveying information to and within a&lt;br /&gt;development team is face-to-face conversation.&lt;br /&gt;7. Working software is the primary measure of progress.&lt;br /&gt;8. Agile processes promote sustainable development. The sponsors, developers, and&lt;br /&gt;users should be able to maintain a constant pace indefinitely.&lt;br /&gt;9. Continuous attention to technical excellence and good design enhances agility.&lt;br /&gt;10. Simplicity—the art of maximizing the amount of work not done—is essential.&lt;br /&gt;11. The best architectures, requirements, and designs emerge from self-organizing&lt;br /&gt;teams.&lt;br /&gt;12. At regular intervals, the team reflects on how to become more effective, then tunes&lt;br /&gt;and adjusts its behavior accordingly.&lt;br /&gt;&lt;div align="right"&gt;Highsmith (2001) &lt;/div&gt;&lt;br/&gt;&lt;br /&gt;Enjoy Programming!!!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-8302031473825309417?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/8302031473825309417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=8302031473825309417' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8302031473825309417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8302031473825309417'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/07/manifesto-for-agile-software.html' title='Manifesto for Agile Software Development'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-6917757751207367686</id><published>2011-04-15T04:52:00.000-07:00</published><updated>2011-04-15T05:58:44.660-07:00</updated><title type='text'>Key points if you are following Agile Software Development</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Key points if you are following Agile Software Development&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;“More working hours” doesn't  necessarily mean "more effective work".&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;Be adaptable to new changes (if they are billable :)) and  let positive energy flow with your blood i.e "Don't worry be  happy".&lt;br /&gt;&lt;br /&gt;&amp;nbsp;Enjoy Programming!!! &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-6917757751207367686?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/6917757751207367686/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=6917757751207367686' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6917757751207367686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6917757751207367686'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/04/key-points-if-you-are-following-agile.html' title='Key points if you are following Agile Software Development'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-217507372620667129</id><published>2011-01-06T05:04:00.001-08:00</published><updated>2011-01-07T06:10:38.939-08:00</updated><title type='text'>Case Study on the optimization of server set up for Magento</title><content type='html'>Hello All:&lt;br /&gt;&lt;br /&gt;I just found really nice pdf document on the optimization of server set up for Magento which can be downloaded using URL http://www.magentocommerce.com/whitepaper/.&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-217507372620667129?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/217507372620667129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=217507372620667129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/217507372620667129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/217507372620667129'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/01/case-study-on-optimization-of-server.html' title='Case Study on the optimization of server set up for Magento'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-3918567467835816270</id><published>2011-01-06T03:12:00.000-08:00</published><updated>2011-01-06T03:17:08.846-08:00</updated><title type='text'>Note on Magento Cache</title><content type='html'>It may be required to disable the built-in Magento cache (that is&lt;br /&gt;enabled after installation by default) during active development, but please make sure that&lt;br /&gt;caching is enabled on production sites as disabled cache makes the store frontend 5-6 times&lt;br /&gt;slower and less responsive under load.&lt;br /&gt;&lt;br /&gt;On the use of php accelerator:&lt;br /&gt;&lt;br /&gt;The APC cache backend improves the results, which are 2-3 times better than the&lt;br /&gt;default filesystem cache backend. The memcached cache backend shows 10-15% better results&lt;br /&gt;than APC. And from the tests of Magento team, the eAccelerator cache backend shows the best results which are&lt;br /&gt;5-10% faster than memcached.&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-3918567467835816270?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/3918567467835816270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=3918567467835816270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/3918567467835816270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/3918567467835816270'/><link rel='alternate' type='text/html' href='http://www.php24.in/2011/01/note-on-magento-cache.html' title='Note on Magento Cache'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-2393471007808101222</id><published>2010-11-26T03:30:00.000-08:00</published><updated>2010-11-26T03:36:04.700-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mvc'/><category scheme='http://www.blogger.com/atom/ns#' term='magento'/><title type='text'>Magento MVC  Architecture</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_gtDO539eBgk/TO-bj1NqiMI/AAAAAAAAAGg/-eoGqn-PiGA/s1600/mvc_magento.PNG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 271px;" src="http://3.bp.blogspot.com/_gtDO539eBgk/TO-bj1NqiMI/AAAAAAAAAGg/-eoGqn-PiGA/s320/mvc_magento.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5543820706198489282" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-2393471007808101222?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/2393471007808101222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=2393471007808101222' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/2393471007808101222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/2393471007808101222'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/11/magento-mvc-architecture.html' title='Magento MVC  Architecture'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_gtDO539eBgk/TO-bj1NqiMI/AAAAAAAAAGg/-eoGqn-PiGA/s72-c/mvc_magento.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-819319125615382662</id><published>2010-11-17T03:44:00.000-08:00</published><updated>2010-11-17T03:50:27.121-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='centOS'/><category scheme='http://www.blogger.com/atom/ns#' term='phpmyadmin install'/><category scheme='http://www.blogger.com/atom/ns#' term='yum'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql server'/><title type='text'>Installation of mysql, required php libraries and phpmyadmin at centOS</title><content type='html'>Here are the steps which I have followed:&lt;br /&gt;&lt;br /&gt;/*************************************************commands***************************/&lt;br /&gt; yum install mysql-server mysql&lt;br /&gt;To start mysql server type the following command:&lt;br /&gt; chkconfig mysqld on&lt;br /&gt;/etc/init.d/mysqld start&lt;br /&gt;Type the following command to setup a password for root user:&lt;br /&gt; mysqladmin -u root password NEWPASSWORD&lt;br /&gt;Test mysql connectivity&lt;br /&gt;&lt;br /&gt;Type the following command to connect to MySQL server:&lt;br /&gt;$ mysql -u root -p&lt;br /&gt;/************************************************* end commands***************************/&lt;br /&gt;&lt;br /&gt;/************** required commands for phpmyadmin**************************/&lt;br /&gt;rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt&lt;br /&gt;cd /tmp&lt;br /&gt;wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm&lt;br /&gt;rpm -ivh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm&lt;br /&gt;yum install php-mysql php-mbstring php-mcrypt phpmyadmin&lt;br /&gt;/************** required commands**************************/&lt;br /&gt;/**** changess to access phpmyadmin from not just localhost***/&lt;br /&gt;Run command "mysql_secure_installation"&lt;br /&gt;vi /etc/httpd/conf.d/phpmyadmin.conf&lt;br /&gt;Comment as:&lt;br /&gt;#&lt;br /&gt;#  Web application to manage MySQL&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;#&amp;lt;Directory "/usr/share/phpmyadmin"&amp;gt;&lt;br /&gt;#  Order Deny,Allow&lt;br /&gt;#  Deny from all&lt;br /&gt;#  Allow from 127.0.0.1&lt;br /&gt;#&amp;lt;/Directory&amp;gt;&lt;br /&gt;&lt;br /&gt;Alias /phpmyadmin /usr/share/phpmyadmin&lt;br /&gt;Alias /phpMyAdmin /usr/share/phpmyadmin&lt;br /&gt;Alias /mysqladmin /usr/share/phpmyadmin&lt;br /&gt;&lt;br /&gt;Edit phpmyadmin config&lt;br /&gt;vi /usr/share/phpmyadmin/config.inc.php&lt;br /&gt;/* Authentication type */&lt;br /&gt;$cfg['Servers'][$i]['auth_type'] = 'http';&lt;br /&gt;Then we create the system startup links for Apache and start it:&lt;br /&gt;&lt;br /&gt;chkconfig --levels 235 httpd on&lt;br /&gt;/etc/init.d/httpd start&lt;br /&gt;&lt;br /&gt;/**** end changess to access phpmyadmin from not just localhost***/&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-819319125615382662?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/819319125615382662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=819319125615382662' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/819319125615382662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/819319125615382662'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/11/installation-of-mysql-required-php.html' title='Installation of mysql, required php libraries and phpmyadmin at centOS'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-938060077063195492</id><published>2010-10-15T03:51:00.000-07:00</published><updated>2010-10-15T04:06:09.171-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='print'/><category scheme='http://www.blogger.com/atom/ns#' term='print selected part'/><title type='text'>Printing selected portion of the page</title><content type='html'>Jquery plugin:&lt;br /&gt;// Create a jquery plugin that prints the given element.&lt;br /&gt;jQuery.fn.print = function(sitePath,titleUsed){&lt;br /&gt; // NOTE: We are trimming the jQuery collection down to the&lt;br /&gt; // first element in the collection.&lt;br /&gt; if (this.size() &amp;gt; 1){&lt;br /&gt;  this.eq( 0 ).print();&lt;br /&gt;  return;&lt;br /&gt; } else if (!this.size()){&lt;br /&gt;  return;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt; // ASSERT: At this point, we know that the current jQuery&lt;br /&gt; // collection (as defined by THIS), contains only one&lt;br /&gt; // printable element.&lt;br /&gt; &lt;br /&gt; // Create a random name for the print frame.&lt;br /&gt; var strFrameName = ("printer-" + (new Date()).getTime());&lt;br /&gt; &lt;br /&gt; // Create an iFrame with the new name.&lt;br /&gt; var jFrame = $( "&amp;lt;iframe name='" + strFrameName + "'&amp;gt;" );&lt;br /&gt; &lt;br /&gt; // Hide the frame (sort of) and attach to the body.&lt;br /&gt; jFrame&lt;br /&gt;  .css( "width", "1px" )&lt;br /&gt;  .css( "height", "1px" )&lt;br /&gt;  .css( "position", "absolute" )&lt;br /&gt;  .css( "left", "-9999px" )&lt;br /&gt;  .appendTo( $( "body:first" ) )&lt;br /&gt; ;&lt;br /&gt; &lt;br /&gt; // Get a FRAMES reference to the new frame.&lt;br /&gt; var objFrame = window.frames[ strFrameName ];&lt;br /&gt; &lt;br /&gt; // Get a reference to the DOM in the new frame.&lt;br /&gt; var objDoc = objFrame.document;&lt;br /&gt; &lt;br /&gt; // Grab all the style tags and copy to the new&lt;br /&gt; // document so that we capture look and feel of&lt;br /&gt; // the current document.&lt;br /&gt; &lt;br /&gt; // Create a temp document DIV to hold the style tags.&lt;br /&gt; // This is the only way I could find to get the style&lt;br /&gt; var cssLink = '&amp;lt;link rel="stylesheet" type="text/css" href="'+sitePath+'jprint.css" media="print"/&amp;gt;';&lt;br /&gt; &lt;br /&gt; // Write the HTML for the document. In this, we will&lt;br /&gt; // write out the HTML of the current element.&lt;br /&gt; objDoc.open();&lt;br /&gt; objDoc.write( "&amp;lt;!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"&amp;gt;" );&lt;br /&gt; objDoc.write( "&amp;lt;html&amp;gt;" );&lt;br /&gt; objDoc.write( "&amp;lt;body&amp;gt;" );&lt;br /&gt; objDoc.write( "&amp;lt;head&amp;gt;" );&lt;br /&gt; objDoc.write( "&amp;lt;title&amp;gt;" );&lt;br /&gt; objDoc.write(titleUsed);&lt;br /&gt; objDoc.write( "&amp;lt;/title&amp;gt;" );&lt;br /&gt; objDoc.write(cssLink);&lt;br /&gt; objDoc.write( "&amp;lt;/head&amp;gt;" );&lt;br /&gt; alert(this.html());&lt;br /&gt; objDoc.write( this.html() );&lt;br /&gt; objDoc.write( "&amp;lt;/body&amp;gt;" );&lt;br /&gt; objDoc.write( "&amp;lt;/html&amp;gt;" );&lt;br /&gt; objDoc.close();&lt;br /&gt; &lt;br /&gt; // Print the document.&lt;br /&gt; objFrame.focus();&lt;br /&gt; objFrame.print();&lt;br /&gt; &lt;br /&gt; // Have the frame remove itself in about a minute so that&lt;br /&gt; // we don't build up too many of these frames.&lt;br /&gt; setTimeout(&lt;br /&gt;  function(){&lt;br /&gt;   jFrame.remove();&lt;br /&gt;  },&lt;br /&gt;  (60 * 1000)&lt;br /&gt;  );&lt;br /&gt;}&lt;br /&gt;/********************************************************************/&lt;br /&gt;jprint.css&lt;br /&gt;&lt;br /&gt;body{&lt;br /&gt; padding:0px;&lt;br /&gt; margin:0px;&lt;br /&gt; font:normal 12pt Arial, Helvetica, sans-serif;&lt;br /&gt; background: #FFFFFF;&lt;br /&gt; color: #000000;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt;.printable {&lt;br /&gt;  padding: 10px 10px 10px 10px ;&lt;br /&gt; }&lt;br /&gt; img{&lt;br /&gt; background-color: #E0E0E0 ;&lt;br /&gt; border: 1px solid #666666 ;&lt;br /&gt; padding: 5px 5px 5px 5px ;&lt;br /&gt;}&lt;br /&gt;table{&lt;br /&gt; width:99%;&lt;br /&gt; border:#9e9e9e solid 1px;&lt;br /&gt; margin:0 0 5px 0;&lt;br /&gt; font:normal 13px Arial, Helvetica, sans-serif;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt;table th{&lt;br /&gt; padding:10px 8px 12px 8px;&lt;br /&gt; text-align:left;&lt;br /&gt; background-color:#FAFAFA;&lt;br /&gt; &lt;br /&gt; }&lt;br /&gt;table td{&lt;br /&gt; padding:8px;&lt;br /&gt; text-align:left;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt;table tr{&lt;br /&gt; background-color:#f2f2f2;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt;table tr.alternet{&lt;br /&gt; background-color:#e0e0e0;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt;table td.Heading{&lt;br /&gt; height:35px;&lt;br /&gt; padding:0px 0 0 10px;&lt;br /&gt; border-bottom:#9e9e9e solid 1px;&lt;br /&gt; font:normal 15px Arial, Helvetica, sans-serif;&lt;br /&gt; color:#fff;&lt;br /&gt; }&lt;br /&gt;a:link, a:visited {&lt;br /&gt; color: #000000;&lt;br /&gt; background: transparent;&lt;br /&gt; font-weight: bold;&lt;br /&gt; text-decoration: none;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;/****************************************************************/&lt;br /&gt;Usage &lt;br /&gt;&lt;br /&gt;$(document).ready(function(){&lt;br /&gt;&lt;br /&gt;        // When the document is ready, initialize the link so&lt;br /&gt;  // that when it is clicked, the printable area of the&lt;br /&gt;  // page will print.&lt;br /&gt;  $(function(){&lt;br /&gt;    // Hook up the print link.&lt;br /&gt;   $( "a#print_icon" )&lt;br /&gt;    .attr( "href", "javascript:void( 0 )" )&lt;br /&gt;    .click(&lt;br /&gt;     function(){&lt;br /&gt;     // Print the DIV.&lt;br /&gt;     //@param1 - site URL&lt;br /&gt;     //@param2 - Title of the page&lt;br /&gt;     $( ".printable" ).print('&amp;lt;?php echo SITE_HTTP_URL;?&amp;gt;','Invoices');&lt;br /&gt;       // Cancel click event.&lt;br /&gt;      return( false );&lt;br /&gt;     }&lt;br /&gt;    );&lt;br /&gt;   });&lt;br /&gt; });&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-938060077063195492?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/938060077063195492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=938060077063195492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/938060077063195492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/938060077063195492'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/10/printing-selected-portion-of-page.html' title='Printing selected portion of the page'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-1263705584629351354</id><published>2010-10-15T03:50:00.000-07:00</published><updated>2010-10-15T03:51:17.523-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='toad for oracle'/><title type='text'>PHP – Oracle</title><content type='html'>Initial requirement:&lt;br /&gt;OCI8 module must be installed to use oracle database&lt;br /&gt;Client to access database:&lt;br /&gt;1. “Toad for Oracle” is the best option to access oracle database with “11.2.0” oracle client. You will need to install oracle client first from the oracle distribution CD and then Toad software will automatically detect oracle client.&lt;br /&gt;2. Another option is default SQL*Plus&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-1263705584629351354?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/1263705584629351354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=1263705584629351354' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1263705584629351354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1263705584629351354'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/10/php-oracle.html' title='PHP – Oracle'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-1693364716044872811</id><published>2010-06-18T00:41:00.000-07:00</published><updated>2010-06-18T01:38:15.902-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FFMPEG-PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='FFMPEG'/><category scheme='http://www.blogger.com/atom/ns#' term='Video Streaming'/><title type='text'>FFMPEG installation for Fedora11 and useful information to dive in video streaming using PHP</title><content type='html'>FFMPEG installation for Fedora11 and useful information to dive in video streaming using PHP:&lt;br /&gt;1. Open the command prompt (terminal) window&lt;br /&gt;2. Run the Su command if not log in as admin (root)&lt;br /&gt;I. Su (Enter)&lt;br /&gt;II. Enter root password&lt;br /&gt;3.  Run the command:  yum install ffmpeg ffmpeg-devel&lt;br /&gt;4. To check what audio/video formats are supported&lt;br /&gt;I. Run the command: ffmpeg -formats &gt; ffmpeg-format.txt&lt;br /&gt;II. Open the ffmpeg-formats.txt to see the ooutput&lt;br /&gt;D means decode&lt;br /&gt;E means encode&lt;br /&gt;V means video &lt;br /&gt;A means audio&lt;br /&gt;T = Truncated&lt;br /&gt;5. Install FFMPEG-PHP Extension&lt;br /&gt;I. FFmpeg-php is a very good extension and wrapper for PHP which can pull useful information about video through API interface. Inorder to install it you will need to download the source file and then compile and install extension in your server. You can download the source tarball : http://ffmpeg-php.sourceforge.net/&lt;br /&gt;II. tar -xjf ffmpeg-php-X.x.x.tbz2&lt;br /&gt;III. cd ffmpeg-php-X.x.x/&lt;br /&gt;IV. phpize&lt;br /&gt;Common Errors&lt;br /&gt;I. If you get command not found error for phpize, then you will need to do yum install php-devel&lt;br /&gt;II. If you get error like "ffmpeg headers not found" while configuring the source.&lt;br /&gt;configure: error: ffmpeg headers not found. Make sure ffmpeg is compiled as shared libraries using the --enable-shared option&lt;br /&gt;then it means you need to copy libraries to ffmpeg folder itself. &lt;br /&gt;To Fix: &lt;br /&gt;V. cp /usr/include/ffmpeg/lib*/* /usr/include/ffmpeg/&lt;br /&gt;VI. ./configure&lt;br /&gt;VII.  make&lt;br /&gt;VIII. make install&lt;br /&gt;6. Editing php.ini (For me, path is etc/php.ini)&lt;br /&gt;Put the below two lines at the end of the php.ini file&lt;br /&gt;[ffmpeg]&lt;br /&gt;extension=ffmpeg.so&lt;br /&gt;7. You can check the installation by running php script &lt;br /&gt;&lt;?php &lt;br /&gt;phpinfo();&lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;Reference Links:&lt;br /&gt;1. http://www.mysql-apache-php.com/ffmpeg-install.htm&lt;br /&gt;2. http://ffmpeg-php.sourceforge.net/&lt;br /&gt;3. http://www.lampadmins.com/f9/ffmpeg-shared-libraries-header-files-663/&lt;br /&gt;Useful Links:&lt;br /&gt;1. http://vexxhost.com/blog/2006/12/20/what-ffmpeg-php-can-do-and-how-to-use-the-most-out-of-it/&lt;br /&gt;2. http://www.phpclasses.org/package/3747-PHP-Manipulate-and-convert-videos-with-ffmpeg-program.html&lt;br /&gt;3. http://howto-pages.org/ffmpeg/&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-1693364716044872811?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/1693364716044872811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=1693364716044872811' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1693364716044872811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1693364716044872811'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/06/ffmpeg-installation-for-fedora11-and.html' title='FFMPEG installation for Fedora11 and useful information to dive in video streaming using PHP'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-7640241171731041094</id><published>2010-04-29T22:18:00.000-07:00</published><updated>2010-04-29T22:20:26.473-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='FDS'/><title type='text'>Flex Data Services and PHP</title><content type='html'>I really find this article helpful to start flex with PHP.&lt;br /&gt;&lt;br /&gt;Have a look into it:&lt;br /&gt;&lt;br /&gt;http://www.adobe.com/devnet/flex/articles/flex_php_architecture.html&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-7640241171731041094?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/7640241171731041094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=7640241171731041094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7640241171731041094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7640241171731041094'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/04/flex-data-services-and-php.html' title='Flex Data Services and PHP'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-8621977512189895745</id><published>2010-04-12T22:23:00.000-07:00</published><updated>2010-04-12T22:27:00.853-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='float'/><category scheme='http://www.blogger.com/atom/ns#' term='compare'/><title type='text'>Comparing floating point numbers</title><content type='html'>How to compare floating point numbers.&lt;br /&gt;&lt;br /&gt;I found this URL really nice if we are in need to compare floating point numbers:&lt;br /&gt;&lt;br /&gt;http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-8621977512189895745?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/8621977512189895745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=8621977512189895745' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8621977512189895745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8621977512189895745'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/04/comparing-floating-point-numbers.html' title='Comparing floating point numbers'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-4977523661402729796</id><published>2010-03-26T08:20:00.000-07:00</published><updated>2010-03-26T08:24:49.177-07:00</updated><title type='text'>Server migration of Magento</title><content type='html'>1. Take the back of backup of old database (backup/data.sql).&lt;br /&gt;2. Take the backup of your Themes/Templates (app/design/frontend), Skins, Images (media), local.xml (app/etc/loca.xml) and Custom Modules folders.&lt;br /&gt;3. Change your current directory to magento ((/var/www/html/magento).&lt;br /&gt;4. Change permissions for some of the directories of magento folder.&lt;br /&gt;i. mv php.ini.sample php.ini&lt;br /&gt;ii. chmod o+w var var/.htaccess app/etc&lt;br /&gt;iii. chmod -R o+w media&lt;br /&gt;5. Place the backup of old database (backup/data.sql).&lt;br /&gt;6. mysql -hDBHOST -uDBUSER -pDBPASS DBNAME &lt; backup/data.sql&lt;br /&gt;7. Run magento installer and follow the installation steps.&lt;br /&gt;&lt;br /&gt;8. Replace the backup of Themes/Templates (app/design/frontend), Skins, Images (media) and Custom Modules folders.&lt;br /&gt;&lt;br /&gt;9. Update &lt;br /&gt;You need to edit a few things in the database if your changing domain names or if you’re using a test server that’s just an IP address. Using PHPMyAdmin, Navicat or something similar, connect to the database. Table core_config_data has rows that need to be changed and updated with the new url. For a single store installation you need to just update: &lt;br /&gt;path:                       value:&lt;br /&gt;web/unsecure/base_url       http://[you_domain_here]/&lt;br /&gt;web/secure/base_url         https://[your_secure_domain_here]/&lt;br /&gt;With multiple stores you need also change: &lt;br /&gt;path:                          value:&lt;br /&gt;web/unsecure/base_url          http://[you_domain_here]/&lt;br /&gt;web/secure/base_url            https://[your_secure_domain_here]/&lt;br /&gt;web/unsecure/base_link_url     http://[your_domain_here]/&lt;br /&gt;web/unsecure/base_skin_url     http://[your_domain_here]/skin/&lt;br /&gt;web/unsecure/base_media_url    http://[your_domain_here]/media/&lt;br /&gt;web/unsecure/base_js_url       http://[your_domain_here]/js/&lt;br /&gt;web/secure/base_link_url       https://[your_secure_domain_here]/&lt;br /&gt;web/secure/base_skin_url       https://[your_secure_domain_here]/skin/&lt;br /&gt;web/secure/base_media_url      https://[your_secure_domain_here]/media/&lt;br /&gt;web/secure/base_js_url         https://[your_secure_domain_here]/js/&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-4977523661402729796?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/4977523661402729796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=4977523661402729796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4977523661402729796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4977523661402729796'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/03/server-migration-of-magento.html' title='Server migration of Magento'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-2275380224650888835</id><published>2010-03-17T11:24:00.000-07:00</published><updated>2010-03-17T11:27:31.775-07:00</updated><title type='text'>WAP Redirect</title><content type='html'>Recently I add a new class for WAP redirection in php classes . It's link is &lt;a href="http://www.phpclasses.org/browse/package/6060.html"&gt;http://www.phpclasses.org/browse/package/6060.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This class can be used to redirect mobile phone users.&lt;br /&gt;&lt;br /&gt;It can check the user agent string sent by the user browser and redirect to different URLs depending on the type of device that is use to access the current page.&lt;br /&gt;&lt;br /&gt;Currently it can redirect to different URLs depending on whether the user device is an iPhone, a PlayStation or another device that supports WML.&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-2275380224650888835?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/2275380224650888835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=2275380224650888835' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/2275380224650888835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/2275380224650888835'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/03/wap-redirect.html' title='WAP Redirect'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-4192896007923212801</id><published>2010-02-17T10:44:00.000-08:00</published><updated>2010-02-17T10:50:49.393-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Quick Response Code'/><category scheme='http://www.blogger.com/atom/ns#' term='QR Code'/><title type='text'>QR (Quick Response) Code</title><content type='html'>Abstract from the Wikipedia&lt;br /&gt;&lt;br /&gt;"A QR Code is a matrix code (or two-dimensional bar code) created by Japanese corporation Denso-Wave in 1994. The "QR" is derived from "Quick Response", as the creator intended the code to allow its contents to be decoded at high speed.&lt;br /&gt;&lt;br /&gt;QR Codes are common in Japan, where they are currently the most popular type of two dimensional codes. Moreover, most current Japanese mobile phones can read this code with their camera."&lt;br /&gt;&lt;br /&gt;As a web developer, I see it's heavily use in implementations of the cloud systems.&lt;br /&gt;Recently, I used this for one of my client from US. I expect it's support shortly in India too.&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-4192896007923212801?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/4192896007923212801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=4192896007923212801' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4192896007923212801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4192896007923212801'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/02/qr-quick-response-code.html' title='QR (Quick Response) Code'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-7812284930429465187</id><published>2010-01-21T08:09:00.000-08:00</published><updated>2010-01-21T08:19:01.068-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='csv'/><category scheme='http://www.blogger.com/atom/ns#' term='utf-8'/><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><title type='text'>How to write UTF-8 data in csv</title><content type='html'>I was facing problem in writing UTF-8 data (Espanol) in CSV.&lt;br /&gt;Below is the solution in PHP:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$data = "Plan du site,jusqu'à 80 %,économiser";&lt;br /&gt;$data = mb_convert_encoding( $data, 'UTF-16LE', 'UTF-8');&lt;br /&gt;$filename = "data.csv";&lt;br /&gt;//and then add a couple of extra magic bytes before the data: &lt;br /&gt;$data = chr(255).chr(254).$data;&lt;br /&gt;//Then send your headers and the data. $filename should be something meaningful ending in .csv. I suggest including a random number or timestamp to defeat caching.&lt;br /&gt;$size = strlen($data);&lt;br /&gt;header("Content-type: application/vnd.ms-excel; charset=UTF-16LE");&lt;br /&gt;header("Content-Disposition: attachment; filename=\"$filename\"");&lt;br /&gt;header("Content-Length: $size");&lt;br /&gt;echo $data; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-7812284930429465187?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/7812284930429465187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=7812284930429465187' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7812284930429465187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7812284930429465187'/><link rel='alternate' type='text/html' href='http://www.php24.in/2010/01/how-to-write-utf-8-data-in-csv.html' title='How to write UTF-8 data in csv'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-8459639260562988527</id><published>2009-11-10T20:55:00.000-08:00</published><updated>2009-11-10T21:00:33.760-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='text'/><category scheme='http://www.blogger.com/atom/ns#' term='pdf'/><title type='text'>How will you extract text from PDF</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Option 1:&lt;/span&gt;&lt;br /&gt;The best solution AFAIK is to use xpdf :&lt;br /&gt;http://www.foolabs.com/xpdf/download.html&lt;br /&gt;&lt;br /&gt;under linux just do :&lt;br /&gt;apt-get install xpdf-utils&lt;br /&gt;command line : pdftotext&lt;br /&gt;&lt;br /&gt;Then in php you execute the command and get back the text.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Option 2:&lt;/span&gt;&lt;br /&gt;http://www.pdflib.com/products/tet/&lt;br /&gt;&lt;br /&gt;It has a compiled library that you call within your PHP code which eliminates the need to call command line executables and parse the result.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Option 3:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Use Zend Framework&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-8459639260562988527?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/8459639260562988527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=8459639260562988527' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8459639260562988527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8459639260562988527'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/11/how-will-you-extract-text-from-pdf.html' title='How will you extract text from PDF'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-8636833075910516411</id><published>2009-10-31T23:53:00.000-07:00</published><updated>2009-10-31T23:57:16.722-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wordpress'/><category scheme='http://www.blogger.com/atom/ns#' term='sandbox'/><category scheme='http://www.blogger.com/atom/ns#' term='theme'/><title type='text'>Easiest way to make new theme for Wordpress</title><content type='html'>The easiest way I found to make a new theme for Wordpres is by using theme &lt;a href="http://www.plaintxt.org/themes/sandbox/"&gt;sandbox&lt;/a&gt;  .&lt;br /&gt;&lt;br /&gt;Simply install this theme, and customize it according to your requirement, use your css and make changes in template files.&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;br /&gt;&lt;input id="gwProxy" type="hidden"&gt;&lt;!--Session data--&gt;&lt;input onclick="jsCall();" id="jsProxy" type="hidden"&gt;&lt;div id="refHTML"&gt;&lt;/div&gt;&lt;input id="gwProxy" type="hidden"&gt;&lt;!--Session data--&gt;&lt;input onclick="jsCall();" id="jsProxy" type="hidden"&gt;&lt;div id="refHTML"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-8636833075910516411?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/8636833075910516411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=8636833075910516411' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8636833075910516411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8636833075910516411'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/10/easiest-way-to-make-new-theme-for.html' title='Easiest way to make new theme for Wordpress'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-7809447702973709418</id><published>2009-08-30T23:13:00.000-07:00</published><updated>2009-08-30T23:20:25.846-07:00</updated><title type='text'>Checkout PHP6</title><content type='html'>Willing to taste PHP6,&lt;br /&gt;&lt;br /&gt;Checkout this link&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.linux-mag.com/cache/7433/1.html"&gt;http://www.linux-mag.com/cache/7433/1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-7809447702973709418?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/7809447702973709418/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=7809447702973709418' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7809447702973709418'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7809447702973709418'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/08/checkout-php6.html' title='Checkout PHP6'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-4921548261148346032</id><published>2009-08-19T00:06:00.000-07:00</published><updated>2009-08-19T00:16:04.224-07:00</updated><title type='text'>MySql storage requirements</title><content type='html'>Hello friends,&lt;br /&gt;&lt;br /&gt;Recently I needed to understand the storage requirements for the data types available in Mysql for Social Networking Site.&lt;br /&gt;I found this link really useful....&lt;br /&gt;&lt;br /&gt;&lt;a href="http://dev.mysql.com/doc/refman/5.1/en/storage-requirements.html"&gt;http://dev.mysql.com/doc/refman/5.1/en/storage-requirements.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-4921548261148346032?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/4921548261148346032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=4921548261148346032' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4921548261148346032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4921548261148346032'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/08/mysql-storage-requirements.html' title='MySql storage requirements'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-3588411411538063478</id><published>2009-08-06T08:26:00.000-07:00</published><updated>2009-08-06T08:32:46.398-07:00</updated><title type='text'>PHPBB3 Integration</title><content type='html'>Hello friends&lt;br /&gt;&lt;br /&gt;I have just worked on PHPBB3 integration for the social networking site. I used the oops for this and build a single class which contains all functions needed for integration.&lt;br /&gt;&lt;br /&gt;I have posted that class file and an example file in "phpclasses.org". Below is the link:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.phpclasses.org/browse/package/5472.html"&gt;http://www.phpclasses.org/browse/package/5472.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-3588411411538063478?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/3588411411538063478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=3588411411538063478' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/3588411411538063478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/3588411411538063478'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/08/phpbb3-integration.html' title='PHPBB3 Integration'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-4931142345213903685</id><published>2009-06-23T21:26:00.000-07:00</published><updated>2009-06-23T21:32:38.447-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='remove accent'/><title type='text'>Remove accents(replace special entites with normalized characters)</title><content type='html'>function removeaccents($string)&lt;br /&gt;{&lt;br /&gt;return strtr($string,&lt;br /&gt;"ŠŒŽšœžŸ¥µÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝß&lt;br /&gt;àáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿ",&lt;br /&gt;"SOZsozYYuAAAAAAACEEEEIIIIDNOOOOOOUUUUYsaaaaaaaceeeeiiiionoooooouuuuyy");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-4931142345213903685?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/4931142345213903685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=4931142345213903685' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4931142345213903685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4931142345213903685'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/06/remove-accentsreplace-special-entites.html' title='Remove accents(replace special entites with normalized characters)'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-1832915685266805742</id><published>2009-05-14T10:39:00.000-07:00</published><updated>2009-05-14T10:42:47.564-07:00</updated><title type='text'>Multilingual Site using PEAR</title><content type='html'>Hello Friends&lt;br /&gt;Below is the link to an article where you you can learn to create Multilingual site using PEAR &lt;br /&gt;&lt;a herf="http://devzone.zend.com/article/4469-Adding-Multi-Language-Support-to-Web-Applications-with-PHP-and-PEAR"&gt;http://devzone.zend.com/article/4469-Adding-Multi-Language-Support-to-Web-Applications-with-PHP-and-PEAR&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-1832915685266805742?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/1832915685266805742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=1832915685266805742' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1832915685266805742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1832915685266805742'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/05/multilingual-site-using-pear.html' title='Multilingual Site using PEAR'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-5743583570054751592</id><published>2009-03-27T06:00:00.000-07:00</published><updated>2009-03-27T06:16:31.610-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySql'/><category scheme='http://www.blogger.com/atom/ns#' term='Date calculations'/><title type='text'>Date(Age calculations) using SQL(MySql)</title><content type='html'>Hello Friends&lt;br /&gt;&lt;br /&gt;Below is the link to the URL which contains nice calculations for getting date:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://dev.mysql.com/doc/refman/5.0/en/date-calculations.html"&gt;http://dev.mysql.com/doc/refman/5.0/en/date-calculations.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-5743583570054751592?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/5743583570054751592/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=5743583570054751592' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/5743583570054751592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/5743583570054751592'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/03/dateage-calculations-using-sqlmysql.html' title='Date(Age calculations) using SQL(MySql)'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-6880221567736487355</id><published>2009-03-20T08:25:00.000-07:00</published><updated>2009-03-23T02:39:48.189-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='dom'/><category scheme='http://www.blogger.com/atom/ns#' term='add-remove-elements'/><title type='text'>Addinng new elements in form at run time using DOM</title><content type='html'>Hello Friends&lt;br /&gt;&lt;br /&gt;I was stuck with the problem for adding form elements at run time which needed to submit content without using AJAX&lt;br /&gt;&lt;br /&gt;Then I read an article from the following link&lt;br /&gt;Its really a nice article, if you wish to play with the code or wanna to learn how to write beautiful code in javascript, go through this article.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dustindiaz.com/add-remove-elements-reprise/"&gt;http://www.dustindiaz.com/add-remove-elements-reprise/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-6880221567736487355?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/6880221567736487355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=6880221567736487355' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6880221567736487355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6880221567736487355'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/03/addinng-new-elements-in-form-at-run.html' title='Addinng new elements in form at run time using DOM'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-1669512355336430303</id><published>2009-02-25T08:51:00.000-08:00</published><updated>2009-02-25T08:58:59.882-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh'/><category scheme='http://www.blogger.com/atom/ns#' term='Zend'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='PDT'/><title type='text'>PHP Development tool for Linux</title><content type='html'>From last some months I was looking for better PHP Development tool for Linux. Then I come to know about "Eclipse PHP Development Tools" from the Zend's monthly newsletter. Its really a good tool to hang out with programming in PHP.&lt;br /&gt;Link for this tool on Zend is &lt;a href="http://www.zend.com/en/community/pdt"&gt;http://www.zend.com/en/community/pdt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-1669512355336430303?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/1669512355336430303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=1669512355336430303' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1669512355336430303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/1669512355336430303'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/02/php-development-tool-for-linux.html' title='PHP Development tool for Linux'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-7590679230192953119</id><published>2009-02-14T08:24:00.000-08:00</published><updated>2009-03-30T04:50:18.676-07:00</updated><title type='text'>Open source</title><content type='html'>Some words I read from the magento guy(his name is Moshe) "I would love to change the world, but they won’t give me the source code."&lt;br /&gt;Enjoy programming !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-7590679230192953119?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/7590679230192953119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=7590679230192953119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7590679230192953119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/7590679230192953119'/><link rel='alternate' type='text/html' href='http://www.php24.in/2009/02/open-source.html' title='Open source'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-4004823887557509805</id><published>2008-12-21T10:28:00.000-08:00</published><updated>2008-12-21T11:12:06.286-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh'/><category scheme='http://www.blogger.com/atom/ns#' term='Tour de Flex'/><title type='text'>Kick Start to Flex</title><content type='html'>Hello Friends&lt;br /&gt;&lt;br /&gt;We programmers love to play with the logic, but before we need to learn "ABC" to produce "Rocket Science"  :), below are some links to give kick start to flex.&lt;br /&gt;&lt;br /&gt;1. &lt;a href="http://www.adobe.com/devnet/flex/videotraining/" target="_blank"&gt;Video Training&lt;/a&gt;&lt;br /&gt;2. &lt;a href="http://www.noupe.com/adobe/flex-developers-toolbox-free-components-themes-and-tutorials.html" target="_blank"&gt; Tour De Flex and help&lt;/a&gt;&lt;br /&gt;3. &lt;a href="http://www.adobe.com/devnet/ajax/" target="_blank"&gt;AJAX&lt;/a&gt;( For those who love to think in javascript(AJAX))&lt;br /&gt;&lt;br /&gt;Enjoy Programming&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-4004823887557509805?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/4004823887557509805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=4004823887557509805' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4004823887557509805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/4004823887557509805'/><link rel='alternate' type='text/html' href='http://www.php24.in/2008/12/kick-start-to-flex.html' title='Kick Start to Flex'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-2145043736313155846</id><published>2008-11-02T07:34:00.000-08:00</published><updated>2009-01-06T10:32:47.218-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cross Browser'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX'/><category scheme='http://www.blogger.com/atom/ns#' term='XMLHttp Request'/><category scheme='http://www.blogger.com/atom/ns#' term='XDomainRequest'/><title type='text'>Cross Browser AJAX Request</title><content type='html'>As we know IE8 will use new object for AJAX, below I am defining the new function for AJAX request, its helpful for me. May be for you also......... &lt;br /&gt;&lt;br /&gt;function ajaxRequest(){&lt;br /&gt; var activexmodes=["Msxml2.XMLHTTP", "Microsoft.XMLHTTP"] //activeX versions to check for in IE&lt;br /&gt;if(window.XDomainRequest){// for ie8+&lt;br /&gt; try{&lt;br /&gt;  return new XDomainRequest(); &lt;br /&gt; }&lt;br /&gt; catch(e){&lt;br /&gt;  //suppress error&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt; else if (window.ActiveXObject){ //Test for support for ActiveXObject in IE first (as XMLHttpRequest in IE7 is broken)&lt;br /&gt;  for (var i=0; i&amp;lt;activexmodes.length; i++){&lt;br /&gt;   try{&lt;br /&gt;    return new ActiveXObject(activexmodes[i])&lt;br /&gt;   }&lt;br /&gt;   catch(e){&lt;br /&gt;    //suppress error&lt;br /&gt;   }&lt;br /&gt;  }&lt;br /&gt; }&lt;br /&gt; else if (window.XMLHttpRequest) // if Mozilla, Safari etc&lt;br /&gt;  return new XMLHttpRequest()&lt;br /&gt; else&lt;br /&gt;  return false&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-2145043736313155846?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/2145043736313155846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=2145043736313155846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/2145043736313155846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/2145043736313155846'/><link rel='alternate' type='text/html' href='http://www.php24.in/2008/11/cross-browse-ajax-request.html' title='Cross Browser AJAX Request'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-650253275146126830</id><published>2008-09-27T06:01:00.000-07:00</published><updated>2008-09-30T23:16:25.996-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh'/><category scheme='http://www.blogger.com/atom/ns#' term='MDB2'/><category scheme='http://www.blogger.com/atom/ns#' term='PEAR'/><title type='text'>Another Example with MDB2</title><content type='html'>First I would like to suggest about the use of this package . That would be useful only when you are developing application from start. Its all about your journey of programming from your first step to the last step. Recently I came to the use of database  other than MySql with PHP.&lt;br /&gt;How many databases you know?&lt;br /&gt;What else, every database have different way for connection, different function, different way to perform DB tasks. MDB2 package is really a good way to work with different databases. Sometimes our application need logic beyond the power of existing database, then what will you do? Will you change your database? Then what about all the classes or files that you have built to handle data!!!!&lt;br /&gt;&lt;br /&gt;MDB2 is the package which gives you the facility to tackle this problem. Install the driver for that particular DB using PEAR command and change the name of driver in your database file. What else, now use the power of your new database.&lt;br /&gt;Following is the simple example of that:&lt;br /&gt;// Use the details of your database at the place of given dummy values :)&lt;br /&gt;$db_driver="mysql"; // only need to change the db driver if other need to be used&lt;br /&gt;$user="user;&lt;br /&gt;$password="password";&lt;br /&gt;$host="host";&lt;br /&gt;$database_name="database_name";&lt;br /&gt;$url=$db_driver."://".$user.":".$password."@".$host."/".$database_name;&lt;br /&gt;require_once("MDB2.php");&lt;br /&gt;$con = MDB2::factory($url);&lt;br /&gt;if(PEAR::isError($con)) {&lt;br /&gt;   die("Error while connecting : " . $congetMessage());}&lt;br /&gt;else{echo "Connection is done"."&lt;br /&gt;";}&lt;br /&gt;$sql = "SELECT * FROM users";&lt;br /&gt;$resultset = $con-&gt;query($sql);if(PEAR::isError($resultset))&lt;br /&gt;{    die('Failed to issue query, error message : ' . $resultset-&gt;getMessage());}&lt;br /&gt;while($row = $resultset-&gt;fetchRow(MDB2_FETCHMODE_ASSOC))&lt;br /&gt;{foreach($row as $field =&gt; $value)&lt;br /&gt;{       echo "$field / $value \n";}}?&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-650253275146126830?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/650253275146126830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=650253275146126830' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/650253275146126830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/650253275146126830'/><link rel='alternate' type='text/html' href='http://www.php24.in/2008/09/another-example-with-mdb2.html' title='Another Example with MDB2'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-8119872515511622552</id><published>2008-09-21T20:59:00.000-07:00</published><updated>2008-09-21T21:18:28.877-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh'/><category scheme='http://www.blogger.com/atom/ns#' term='PEAR'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP5'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP Unit test'/><title type='text'>Another Example for PHP Unit test Using PEAR</title><content type='html'>//ini_set('include_path','.:/root/PEAR'); Don't forget to set include_path where PEAR is installed in php.ini file or in .htacess for Apache server or explicitly in your coding&lt;br /&gt;&lt;br /&gt;require_once 'PHPUnit/Framework.php';&lt;br /&gt;require_once "PHPUnit/Framework/TestSuite.php";&lt;br /&gt;require_once "PHPUnit/TextUI/TestRunner.php";&lt;br /&gt;class ArrayTest extends PHPUnit_Framework_TestCase&lt;br /&gt;{&lt;br /&gt;   public function testNewArrayIsEmpty()&lt;br /&gt;   {&lt;br /&gt;       // Create the Array fixture.&lt;br /&gt;       $fixture = array();&lt;br /&gt;&lt;br /&gt;       // Assert that the size of the Array fixture is 0.&lt;br /&gt;assertEquals(1, sizeof($fixture));&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$suite = new PHPUnit_Framework_TestSuite();&lt;br /&gt;$suite-&gt;addTest(new&lt;br /&gt;&lt;br /&gt;ArrayTest('testNewArrayIsEmpty'));&lt;br /&gt;&lt;br /&gt;PHPUnit_TextUI_TestRunner::run($suite);&lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;"FYI, you have to create your own test cases according to your code and you will use classes and methods provided by PEAR's PHPUnit Package."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-8119872515511622552?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/8119872515511622552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=8119872515511622552' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8119872515511622552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/8119872515511622552'/><link rel='alternate' type='text/html' href='http://www.php24.in/2008/09/another-example-for-php-unit-test-using.html' title='Another Example for PHP Unit test Using PEAR'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8385977364634499957.post-6837001914280059909</id><published>2008-09-19T12:40:00.000-07:00</published><updated>2008-09-20T00:15:31.593-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB'/><category scheme='http://www.blogger.com/atom/ns#' term='Rajesh'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='PEAR'/><title type='text'>Introduction to PEAR</title><content type='html'>PEAR, the PHP Extension and Application Repository, is a bountiful resource for any PHP developer. Within its confines lie the tools that you need to do your job more quickly and efficiently. You need to be able to quickly assess and determine which PEAR package is the right one for the task you are up against. Then you need to know the API and see some examples of how to best use it.&lt;br /&gt;Now PHP is continuously moving towards its heights. If you love oops, you will love PHP5 and of course PEAR.&lt;br /&gt;I am giving the simple example of using PEAR::DB package:&lt;br /&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal  {mso-style-parent:"";  margin:0in;  margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:12.0pt;  font-family:"Times New Roman";  mso-fareast-font-family:"Times New Roman";} code  {font-family:"Courier New";  mso-ascii-font-family:"Courier New";  mso-fareast-font-family:"Times New Roman";  mso-hansi-font-family:"Courier New";  mso-bidi-font-family:"Courier New";} pre  {margin:0in;  margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:10.0pt;  font-family:"Courier New";  mso-fareast-font-family:"Times New Roman";} @page Section1  {size:8.5in 11.0in;  margin:1.0in 1.25in 1.0in 1.25in;  mso-header-margin:.5in;  mso-footer-margin:.5in;  mso-paper-source:0;} div.Section1  {page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-parent:"";  mso-padding-alt:0in 5.4pt 0in 5.4pt;  mso-para-margin:0in;  mso-para-margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:10.0pt;  font-family:"Times New Roman";  mso-ansi-language:#0400;  mso-fareast-language:#0400;  mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;&lt;pre&gt;&lt;code&gt;&lt;/code&gt;&lt;/pre&gt;&lt;span id="intelliTxt"&gt;&lt;pre&gt;&lt;code&gt; &lt;?php&lt;br /&gt;// Include the pear class&lt;br /&gt;require_once("DB.php");&lt;br /&gt;$dsn=array(&lt;br /&gt;&lt;/code&gt;&lt;span id="intelliTxt"&gt;&lt;pre&gt;&lt;code&gt;'phptype'  =&gt;&lt;/code&gt;'mysql',&lt;br /&gt;&lt;/pre&gt;&lt;/span&gt;&lt;code&gt;'hostspec' =&gt; 'localhost',&lt;br /&gt;'database' =&gt; 'test_db',&lt;br /&gt;'username' =&gt; 'test_user',&lt;br /&gt;'password' =&gt; 'test_password'&lt;br /&gt;);&lt;br /&gt;$dbh = DB::connect($dsn);&lt;br /&gt;&lt;br /&gt;$stmt = "SELECT id, name FROM examples ORDER BY id";&lt;br /&gt;$result = $dbh-&gt;simpleQuery($stmt, DB_FETCHMODE_ASSOC);&lt;br /&gt;if ($dbh-&gt;numRows($result) &gt; 0) {&lt;br /&gt;$data = (object) $dbh-&gt;fetchRow($result, DB_FETCHMODE_ASSOC);&lt;br /&gt;echo "id   =&gt; $data-&gt;id&lt;br /&gt;\n";&lt;br /&gt;echo "name =&gt; $data-&gt;name&lt;br /&gt;\n";&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;Using that package, we don't need to think of the database server we are using, we only need to pass an array as shown above to the static function connect(), it will make connection to the database server that can be &lt;span id="intelliTxt"&gt; MySQL, PostgreSQL, and Oracle.&lt;br /&gt;&lt;br /&gt;To use PEAR, you have to install PEAR. To install PEAR and know about available packages, the URL is &lt;a href="http://www.pear.php.net/"&gt;pear.php.net&lt;/a&gt;&lt;br /&gt;We will continue with these series, till then enjoy and live programming.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8385977364634499957-6837001914280059909?l=www.php24.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.php24.in/feeds/6837001914280059909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8385977364634499957&amp;postID=6837001914280059909' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6837001914280059909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8385977364634499957/posts/default/6837001914280059909'/><link rel='alternate' type='text/html' href='http://www.php24.in/2008/09/introduction-to-pear.html' title='Introduction to PEAR'/><author><name>Rajesh Bhatia</name><uri>http://www.blogger.com/profile/15445597487354950984</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://4.bp.blogspot.com/_gtDO539eBgk/TVFwVJs4eaI/AAAAAAAAAGw/Q9ijEf6Kb7Y/s220/me.JPG'/></author><thr:total>0</thr:total></entry></feed>
