Awesome PHPXperts Seminar 2009.. Overview OpenSource Ecommerce Application – Magento

Recently an Awesome PHPXperts Seminar,2009  had been held at BRAC University , Dhaka .PHPXperts is one of the largest community in Bangladesh. At that seminar lot of programmers were present under a roof. And the presentation topic was the “Current development trends.” And I have an opportunity to speech on that seminar. Thanks Hasin bhai and other moderators to give this opportunity.

I am sharing my present slide at slide share.

In my presentation, my intension is to know the basic ecommerce features and the tools to make an ecommerce solution. For the tools I have described the mostly popular and idely used 4 open source solutions.

They are oscomemrce, zencart, virtumart and magento. And share with little with all the features ,pros and corns of those ecommerce . And finally I have give the idea about current ecommerce application trends  which is magento .

After that presentation I found that lots of peoples are interested about the ecommerce solution. And I just want to say that I am very sorry for those who raise hands but they do not get the chance to ask questions. Because of our shortage of time. But I will be glad if you contact with me to know anything or  any suggestion  .:)


Managing Manufacturers, Vendors, and Product Categories with Joomla! E-Commerce VirtueMart

 Once the configurations for a VirtueMart store are set, our next step is to build our product catalog for the store and manage that catalog. In the catalog management functions, there are several tasks including managing manufacturers, vendors, and products.This article is extracted from the “Joomla! E-Commerce with VirtueMart” book. In this article by Suhreed Sarkar, we are going to learn about these. On completion of this article, you will be able to:

  • Manage manufacturers and vendors
  • Manage the product categories

{literal}We are going to add and edit a lot of information for manufacturers, vendors, and product categories. Actually, in this article, our VirtueMart shop will really take shape with products we want to sell.

Catalogue management

The product catalog for an online shop comprises of the products we sell in the shop. Whatever products we want to sell should be added to this product catalog first. Once products are added to the catalog, customers can browse the products and decide to buy whatever they need. Therefore, managing the catalog is one of the primary tasks of the shop owner.

Products that we add to the catalog need to be organized to help customers easily find the right products. In VirtueMart, customers can sort the products by product categories and manufacturers. Therefore, before adding products to the catalog, we will look into managing manufacturers and product categories.

Managing manufacturers

In VirtueMart, whenever we add a product to the catalog, we also need to assign a manufacturer for that product. In reality, every product has a manufacturer, and for better management of the shop, we should be able to find products by their manufacturer. Therefore, first step will be to identify the manufacturers and enter their information in VirtueMart store. We can also categorize the manufactures as publishers, software developers, and so on.

Adding a manufacturer category

There is a default manufacturer category for use in VirtueMart. We can use that default category for creating a manufacturer. However, when we are selling large number of products from a large number of manufacturers, classifying them into categories will be convenient for managing the manufacturers.

For adding a manufacturer, in the VirtueMart administration panel, click on Manufacturer | Add Manufacturer Category. This shows Manufacturer Category Form:

In the Manufacturer Category Form, provide information for the Category Name and the Category Description fields. Once these are provided, click the Save icon in the toolbar to save the manufacturer category. In the same process, you can add as many categories as you want.

Adding a manufacturer

For adding a manufacturer, in the VirtueMart administration panel, select Manufacturer | Add Manufacturer. This shows Add Information screen:

In the Add Information screen, type the manufacturer’s name, their URL, email address, and a brief description. In the Manufacturer Category field, select the category. The drop-down list will show the manufacturer categories you created earlier. Once all the information is provided in this screen, click the Save icon in the toolbar to save the manufacturer information.

Listing the manufacturer categories

Once you have added the manufacturer categories, you can view the list of manufacturer categories by selecting Manufacturer | List Manufacturer Categories. This shows Manufacturer Category List screen:

In the Manufacturer Category List screen, you will see all manufacturer categories you have created. From this screen, you can add a new category by clicking the New icon in the toolbar. Similarly, you can remove a category by clicking on the trash icon in Remove column, or by selecting the categories and clicking the Remove icon in the toolbar. You can edit a category by clicking on the category name.

To view the list of manufacturers, click on the Manufacturer List link in the Manufacturers column, or select Manufacturer | List Manufacturers. This shows Manufacturer List screen displaying all manufacturers you have added:

From the Manufacturer List screen, you can create a new manufacturer, remove one or more manufacturers, and edit any manufacturer. For editing a manufacturer, click on the manufacturer’s name or the Update link in Admin column. This will bring up the Add Information screen again. You can also create a new manufacturer by clicking the New icon in the toolbar.

From the Manufacturer Category List screen, you may think that clicking on the Manufacturer List link against each category will display the manufacturers added to that category only. Ideally, this should be the case. However, until VirtueMart 1.1.2, it shows the list of manufacturers from all the categories. We hope this will be fixed in the upcoming releases of VirtueMart.

Managing vendors

The idea of multiple vendors is something what you can see on Different vendors add their products to sell, when the order is placed, the store notifies the vendor to fulfill the order. The main store usually gets a commission from the vendor for each sell made through the store. However, VirtueMart’s vendors feature is still in its infancy and does not yet function properly. You can add multiple vendors in VirtueMart, and assign products to the vendors. However, adding vendors has no effect on selling any product on the VirtueMart store, except when applying different vendor-specific tax rates and shopper groups. At the moment, it also helps to identify products from different vendors. In the following sections, you will see how to add and manage vendors.

Vendor category

Like manufacturers, you can also create vendor categories. For creating vendor categories, go to Vendor | Add Vendor Category. This displays Vendor Category Form:

In the Vendor Category Form, type the name of the category and its description. Then click the Save icon in the toolbar. You can add as many categories as you want.

Before trying to add vendor categories, first plan how you are going to categorize your vendors (for example, based on the product they sell or their location). Have a full category tree on hand and then start creating categories.

Adding vendor

Once you have created the necessary vendor categories, you can proceed to adding vendors. For adding vendors, click on Vendor | Add Vendor. This displays the Add Information screen:

Note that there is a warning sign at the top of Add Information screen. It warns you about using the vendor feature as it is in the ‘Alpha’ or pre-mature stage. Also note that we have used Simple Layout for displaying it. If you try adding a vendor from Extended Layout, you will open up an edit screen for existing vendor information, which you already added during the initial configuration of the shop. Up until VirtueMart 1.1.2, a bug has been encountered and which will hopefully be fixed in future releases when it crosses ‘Alpha’ stage.

The Add Information screen shows three tabs: Store, Store Information, and Contact Information.

From the Store tab, add the vendor’s store name, company name, logo, web site URL, minimum purchase order value, and minimum amount for free shipping. You can also configure the currency symbol, decimal points, decimal symbol, thousand separator, positive format, and negative format.

In the Store Information tab (seen in the previous screenshot), you can add the address of the store, city, state/province/region, zip/postal code, phone, currency and vendor category. The vendor categories you have created earlier will be available in Vendor Category drop-down list.

In the Contact Information tab (seen in the previous screenshot), you can set the contact details of the vendor, such as name, title, phone, fax, email. You can also add a brief description of the vendor which will be displayed in the vendor details page in the store. Type a brief description in the Description rich-text editing box. In the Terms of Service rich-text editing box, provide terms of service applicable for that vendor.

Once information in all the three tabs are provided, click the Save icon in the toolbar to add the vendor.

Joomla! E-Commerce with VirtueMart
Joomla! E-Commerce with VirtueMart
  • Build feature-rich online stores with Joomla! 1.0/1.5 and VirtueMart 1.1.x
  • Build your own e-commerce web site from scratch by adding features step-by-step to an example e-commerce web site
  • Configure the shop, build product catalogues, configure user registration settings for VirtueMart to take orders from around the world
  • Manage customers, orders, and a variety of currencies to provide the best customer service
  • Handle shipping in all situations and deal with sales tax rules
  • Covers customization of site look and feel and localization of VirtueMart

Managing vendors and categories

Managing vendor categories is easy. You can manage the vendor categories from Vendor | List Vendor Categories. This shows Vendor Category List screen:

In the Vendor Category List screen, you can see all available categories. You can add a new category by clicking on the New icon in the toolbar. Similarly, you can delete any category by clicking the trash icon in the Remove column. For editing a category, click on the name of the category in the Category Name column. Clicking on the List link will show the vendors in that category.

You can view the list of vendors from the Vendor | List Vendors. This shows the Vendor List screen (seen below). Like the Vendor Category List screen, you can create a new vendor by clicking on the New icon in the toolbar. You can also delete a vendor by clicking on the trash icon in the Remove column. For editing a vendor, click on the vendor name link in the Vendor Name column.

As the vendor feature is still in a pre-mature stage, some of the links don’t behave as intended. For example, clicking the List link doesn’t show the list of vendors in that category. Instead, it shows all of the vendors. These could be fixed through editing some of the .php  files specific to this functionality.

Managing product categories

Products in a shop are categorized for easy searching and for the convenience of the customers. Therefore, when you are planning your shop, also plan how you are going to categorize the products you sell. For our store example, we will divide the products into the following categories: Books, CDs, DVDs, Accessories, Souvenir, and Coupons. Additional sub-categories will be under these categories.

Building a well planned category tree, and adding products to the appropriate categories, is one of the best practices for catalog management. In VirtueMart, you can use multiple product categories which can be nested. Before trying to add product categories, you should also prepare the images to be used for each category.

Adding product categories

You can add product categories from Products | Add Category. This shows Category Information screen:

The Category Information screen has two tabs: Category Information and Images. In the Category Information tab, configure the following options:

  • Publish: Check this box if you want to publish the category you are creating. By default, this is checked. Uncheck it if you don’t want to instantly publish it.
  • Category Name: Provide a brief name for your product category in this field. You must type a name for the category.
  • Category Description: Type a brief description for the category in this rich-text editing field. You can use rich HTML formatting here. The category description should be something that helps customers to understand what’s in that category.
  • ListOrder: You will find this field disabled while creating a new category. When you create a new category, it will be listed at the end. However, when editing the category, you can change the order in which the categories will be listed. A lower number in this field will place that category in upper position.
  • Parent: This field allows categories to be nested. If you want to make the new category a sub-category of an existing category, select that existing category from this drop-down list.
  • Show x products per row: Specify, for this category, how many products will be displayed in a row.
  • Category Browse Page: For each category, you can specify a browse page for showing particular information about the products in that category.
  • Category Flypage: For each category, you can specify a different flypage, which displays product details. For example, for the Books category, you may want to show the product details differently. Therefore, you design a flypage for that category and assign that to the Books category.

In the Images tab (seen below), you can assign an image for the product category you are creating. You can upload a full image and select the Auto Create Thumbnail option to create the thumbnail from the larger image. Otherwise you can upload a thumbnail image separately. You can also specify the URL of the image in URL field.

When all of the information is provided in both of the tabs, click the Save icon in the toolbar to create the product category. Add as many product categories as you want.

Modifying product categories

You can manage product categories from Products | List Categories. This shows Category Tree screen:

In the Category Tree screen, you see the list of all product categories you have created. This list also shows category nesting, its description, number of products in each category, whether the category is published or not, and their list order. You can also create a new category from this screen by clicking on the New icon in the toolbar. For removing multiple categories, select the categories by checking the checkbox left to the category name and then click on the Remove icon in the toolbar. For removing a single category, click on the trash icon in the Remove column.

When you remove a product category, all products under that category will also be deleted from your store. Therefore, be careful about deleting any category. If you really need to delete any category, first move the products in that category to another category. Otherwise, you will lose all the products in that category. In fact, you don’t need to delete any category. If you don’t want to show any category in the store, you can simply unpublish it.

You can also publish or unpublish any category. For publishing or unpublishing multiple categories, select those categories by checking the checkbox left to the category name, and then click the Publish or Unpublish icon in the toolbar. For a single category, you can click on the icon in the Publish column to publish or unpublish that category. A green tick icon in the Publish column means the item is published. A red circle with a white cross inside means the category in unpublished.

When a category is unpublished (including its sub-categories), the products under the category are also not visible in the store frontend. However, some modules, such as Featured Products, Random Product, and Top Ten Products, may display the products under those unpublished categories.

You can assign the list order for categories by clicking the up or down arrow in the List Order column. There is also another way to do this. In the column next to the ListOrder, you can assign the order and click on the Save icon. Clicking the alphabetically sort icon will arrange the categories to display in alphabetical order, as shown in the following screenshot:

For editing any category, click on the category name. That will open up the same Category Information screen, which you have used for adding a category.

We have added several categories with category images. Let us see how it looks in the frontend. Let’s browse to http://localhost/bdson/ (or any other URL where you have installed the VirtueMart shop) and click on Shop from main menu. This shows the categories as shown in the screenshot below:

Let us explore more. Click on the Books category link and we see the sub-categories as the following screenshot:


In this article, we have laid the ground work to build a product catalog for our VirtueMart shop. We explored adding manufacturers, vendors, and product categories. Also we covered listing the manufacturer categories, managing vendors and categories, and modifying product categories.

Joomla! E-Commerce with VirtueMart
Joomla! E-Commerce with VirtueMart
  • Build feature-rich online stores with Joomla! 1.0/1.5 and VirtueMart 1.1.x
  • Build your own e-commerce web site from scratch by adding features step-by-step to an example e-commerce web site
  • Configure the shop, build product catalogues, configure user registration settings for VirtueMart to take orders from around the world
  • Manage customers, orders, and a variety of currencies to provide the best customer service
  • Handle shipping in all situations and deal with sales tax rules
  • Covers customization of site look and feel and localization of VirtueMart

About the Author

Suhreed Sarkar is an IT consultant, trainer, and technical writer. He studied Marine engineering, served on board for two years, and then started his journey into the IT world with MCSE in Windows NT 4.0 track. Later, he studied business administration and earned an MBA from the University of Dhaka. He has many BrainBench certifications on various topics including PHP4, Project Management, RDBMS Concepts, E-commerce, Web Server Administration, Internet Security, Training Development, Training Delivery and Evaluation, and Technical Writing.

He has taught courses on System Administration, Web Development, E-commerce, and MIS. He has consulted for several national and international organizations including United Nations, and helped clients build and adopt their web portals, large scale databases, and management information systems. At present, he is working on building a framework for the education sector in MIS, and promoting use of ICTsin education.

Suhreed is a renowned technical author in Bengali—having a dozen book published on subjects covering web development, LAMP, networking, and system administration. He authored Zen Cart: E-commerce Application Development, published by Packt Publishing.

When not busy with hacking some apps, blogging on his blog (, reading the philosophy of Bertrand Russell or the management thoughts of Peter F Drucker—he likes to spend some special moments with his family.

start writing about facebook application

recently hasin bhai start a blog about facebook application which is . This blog basically focus on the quick solution on the common problems of facebook application. Here also write  others opens source enthusiast from Bangladesh. I am also start writing on that blog which i learn. Hopefully you will get a nice solutions from that blog.

Look back 2008 — দিন বদলের শুরু

2431359497_e6e61aef61_sA thousand miles journey start with a small step. I think the year 2008 is a small and beginning step of that journey in my life. There are a lot of verities of experience I had in 2008. I start the year 2008 with lots of enthusiasm, dreams, hope and high ambitions. I Naturally I was a very adventure lover guy. So this year I had done lots of adventure in my professional, personal life. I have achieved some of my goals; some goals are knocking at the door and some are failure. But I never stop dreaming and never stop hard working to achieve those. I believe failure is the pillar of success and a little, little success make me to achieve bigger success.

In 2008 some experiences are funny, some are painful and some are with lot of joys. I think 2008 is the milestone of my carrier as well as my personal life. I think this year is actually   দিন বদলের শুরু . There  are lots of memories I have, Just share which are most impact in my life. I want all of your prayers and wishes to pass a more successful year in the upcoming 2009.

I just thank my family, co-workers, friends, clients, Guru and lots of people who always support me when I fall in problem. Also great thankful to Allah, when I was going to wrong direction, He pull me on right direction.

So now I share with you the most memorable events in my life in the year 2008.

December : Best memorable month of 2008 year

When the end is good all is good”.If you believe this word then I think my end month December was very good. The achievement of this month removes all the criticism, failure, frustration of the past month.

In 04, dec I became a Zend Certified Engineer. Finally I achieved this. Lots of time I have planned to give the ZCE exam but cannot do that. So fulfill this dream always make me successful. And what a warm welcome I get all over the people from the entire world. Some people personally email me and some gives comments. I am sure this will force me to do more hard work and do more jobs.

  • Get Good job offers

After ZCE usually get the good response from the companies. As well as local companies and international companies. . In this month I realize that if you are honest with your work, if you do hard work and give your all efforts to achieve your goal … one day you will achieve that. Sometime I was frustrated that I was not rewarded by giving my effort. But my spiritual leader encourages me not to waste single moment by frustrating. Just believe that if you work hard one day you will be rewarded. May be not your desired way…But it will come. This encourage me to do more hard work, take more challenge and make our country‘s image very good. Hope so may Allah help me to take the good decision.

Old is gold. Another most memorable moment was to met with my old friends. Actually if any body asked you to which moments are best for you , you should say Scholl, then college and then university. So in that reunion I met with such a friends no connection with more than 5-6 years or more. And passing whole day with too much enjoy. Here look at the moments.

  • First time voter

I say always first experience of anything is very special. So giving first time vote is a special moment of my life.

November : Take risk, challenges and get rewarded 365104971_dec24e5f7f_s3

This month I had took risk, try to do more challenging jobs.

  • Start to freelancing work :

In the past I just hear from lots of guy that they earn dollar. Then I also sometime try to do freelancing. But after someday trying I give up. So never get any freelancing project. But this month I get 3 medium and small projects. As you know any first experience make you excited. Same things make me excited. The most surprise thing in this if I beat any work I got it. But I realize that to finish the work is much harder than the get the work. By freelancing I become more skilled because I have to do communication with client, give them report about work progress, project management, tested and delivery within the time. My attitude is “client is my boss.” As a beginner of freelancing I am do quite well. And one of my clients review make me always inspiring. Here is his feedback about my work

When you look for a coder you are looking for Honesty, communication & skills well Saidur has it all He is honest and has excellent communications skills as well as coding. I had very tide time lines with a budget and he did it all ask the right questions and did the work ahead of schedule within the budget with a minimal communication. He is A+++++ and more than 10 stars. I will recommend him and use him again again and again. Great documentation and works gets done. Look no further you got your coder here.

Here is one of my freelancing site profile on November :In this month I realize that most famous bangla probad, “ Rizik er Malik Allah ”.

October : do a different type of job

I never do any teaching type of job. But in this month I have an opportunity to do that. As a guest lecture and weekly lecture. Also right now After passing ZCE from BRAC University, I have got huge response to take a session on Zend framework and ZCE exam.

  • Give trainee on Zend Framework :A group of junior programmers who works in the mainly US software and millennium want to learn Zend framework. This is held in the office of Grameen Star education’s teacher. Also provide a lecture of BCCI as guest lecture.
  • Learn new open source project :

This month I try to know the some popular open source project magento, drupal, wordpress.


  • Meet the deadline :

Lots of projects are in finishing mode and try to meet the dead line. So much pressure handles on this month.


  • Twitter clone project :

Work on the clone of one of the popular microblogging site twitter.

July—inspiring month 1789708830_64073ba326_s

  • A comment make me Inspire :

I think if you get a comment from such a person who has not to introduce, just his name is enough for everything. This is a person who clear the road and lead others developer to walk that road as they do not have to fight like him. If a person give a comments like that then how can you sleep that night. Take a look at the comments:

Man, this is a legendary work. Now you know what, based on your work I will extend all my Bangla input scripts to work seamlessly with Facebook. And that will help many others to develop bangla facebook apps.

Thats the beauty of open source. Thanks a lot for your time and generosity to release ur work under open source license. Godspeed.”

I think this much more achievement than money. Do you want to know who comment this for which work. Look at here :


  • Miss the opportunity to join in trippert labs

Very nicely ahead to join the trippert labs .Passed 3 interview. But finally unfortunately missed out. That failure makes me interested to make me Zend Certified Engineer.

  • Facebook application development

To learn the facebook application, Do some facebook application.

Check out a simple demo application : freemovie

May — A horrible Month 95359282_5510c6e2f2_s

Though I am elder son in the family, I do not have to do so many family related workJ. But when my father is in trouble, I also fall in trouble. In this month my father becomes seriously ill. I have to take lots of decision, which I have not taken before. Like are we going to operation? If operation then which doctor will be better. Different doctor tell different advices. How we can arrange lots of money. Such a terrible tension and not to give 100 percent in the work 3-4 days. . I think when you fall in deep problem, and then so many problems are coming simultaneously. Though take the operation of Father and he is just quite good, but I cannot mange the amount of money to release. So I have a huge pressure on to arrange money. I just crying to Allah whole night to free from the all tension and make me respectful as well as in family and office. Just only I know how I passed those days.

That month I realize one thing . I just express in Bangla “ Hathi jokhon gorte pore thokon chamchikao lathhi mare. ” In that month I get lathhi from every body. However from that experience how to get all of the pressure and how to take balance in family life and work load. I just believe that I have to do work hard to overcome this situation. The success or failure depends on the Allah. But I have to do only the work


Involvement in lots of Community driven activities:

Become a active member in the CodeIgniter forum, jquery, java. Meet with some great and good developers in Bangladesh. Get lots of advice from them and it helps my programming. Like hasan bhai (Somewherein).


  • Build a part of microblogging site Moonrise :

I n this project I have done mainly the mashupable things to get the image , video and quotation. Also build a large from developing the strategy design pattern. Also work on the rest web services and simpleXml. I have to also have to work on the live search query (right now this feature is off now). In this project I have to work on the jquery core library and lots of different plugin to make a nice UI . And also test the browser compability in IE and Mozilla. This project increases my core javascript skill huge.

Release a jquery plug-in. doing too much work on the jquery core language and some popular plugin.


Work on web based reporting system like CKD charts.


  • Start with lots of amibition :

Just say before that I start the year 2008 with lots of positive attitude, ambition. Passing very nice day with my all Co-workers , family and friends.

  • Missing my old team members

I n the ECBB we have a 7-8 members team in 1 group. So there are lots of varsities of people. When I worked that time there are 35-40 people works. And most of the come from Dhaka University, RUET, CUET, KUET, BRAC, AIUB, BUET,SUST, MIST. Always there is a gathering and different people different vision. And everyday there is happened a very interesting things. Specially in my group with combine boys and girls. In that group most of the days boys and girls are involvement in some quarrel/fighting by talk. As a team leader I have not to do just only mange the team but also have to do the role of referee of fighting. If I failure then management sit with the other team leaders and make so many funny incident that can only understand who have opportunity to that meeting. The meting decision make us laugh too much that we do not need to see any comic movie. So in that month sometime remember those days.

So finally thanks to read the long story. I specially thanks my mother to keep patients for all of my madness. Giving thanks to hasin bhai to take initiative to write the category “Look back 2008”. I request all of you guys to pray for me for upcoming 2009 year. As a result at the end of 2009 I can write more success stories and do my best for my country.

How to prepare for Zend PHP5 Certification Exam

Before going to the title, I just share with you that I have passed the zend certification exam for php5. Now I become the Zend Certified Engineer. So again thanks Allah to achieve this. Also I just want to thanks those people who help me lot to pass this exam. First of all I thank to Mizan bhai (always give his helping hand for anything) and Shoeb (the 6th zce certified of Bagladesh).They do a great help for me. I also thank to Hasin bhai , Emran and Anis bhai encourage me.

And finally My clients give me a huge support for preparing the exam, They reschedule the project time frame as a result i can get more preparation . Thanks again.

Here is the my yellow page details.


Ok now come to the main point.

Take at a glace what I focus to prepare for  the ZCE:



  1. PHP Manual is the main study guide.
  2. Divide the full syllabus into two categories
  3. Play with the code.
  4. Understand the concept rather than hurry to finish the syllabus.
  5. Cover the full syllabus does not ignore any part.
  6. Give a  mock test and try to archived excellent in grade.
  7. Enjoy to study and visualize the benefit of the exam



Here is the details explanation of full .



1. PHP Manual is the Main Study guide:


You first study the topics from Php manual rather than others books. If you study the syllabus topics from the manual it will ensure you to pass the exam. All of the others books or study guide will be the secondary.


  • To know about any function you must read from the manual.
  • You must read the carefully the section note in manual.
  • Also you will look at see also section in manual and try to find with similarity or the difference between the functions.



Well Note that i told that force into the manual, but I do not say not to read other books. Obviously you read the study guide and others essential book. It will clear you the concept. But in the exam you find that questions are tricky. To solve the tricky, manual will help you. I listed some reference books which help me to prepare the exam.


  • PHP ZCE Practice test book.
  • Apress Beginning PHP5 and Mysql from Novice to professional
  • PHP5 Power Programming Book
  • And obviously very important Google Search




2. Divide the full syllabus into two categories

Here is exam syllabus . You will Divide the each chapter into two categories like Basic and Advance. Give you an example will clear you. Like one of topics is


XML and Web Services

In the basic category you will try to know:

  • Why to use XML and what is their format.
  • How php handle XML and when cause error to handle XML.
  • Which parses when to use (like SimpleXML,DOM, SAX)
  • Why to use web services.
  • How Rest or Soap Works.

IN The Advance Category:

  • How to create SimpleXML Object or Dom or Transfer from Dom to Simple XMl vice versa. (Basically you have to know the function name )
  • How to create child, parent, attribute into the node in different parsers.
  • How to search element or attribute from xml file.
  • How to create access point into the soap or Rest .

Basic category actually theory and in the advance category will more focus on implementation. Basically this will save your time to prepare exam. Be careful do not ignore the basic section, in my exam I have to face trouble with simple basic questions.

3. Play with the code

This is very important part in your code. In My exam I found lots of question for the output. If you just read but not tested the code you will definitely get trouble in the exam. Just open a notepad and play with the code and find out the result. Do not ignore this part. Because in exam may be you find some code where ask to write the output.


4. Understand the concept rather than hurry to finish the syllabus.

Do not try to finish the syllabus hurry. Try to understand the concept rather memorize.


5. Cover the full syllabus, do not ignore any part.


Well may be you find some chapters are very hard to you and try to ignore that. Not do that. At least try to know the basic things. May be you think you are very strong in one chapter but the exam you find that portion question is very difficult. So this is very risky to ignore , At least try to know the basic.


6. Give the mock test  and achieved “Excellent” grade

Do not try to think after finishing full syllabus I will start the mock test. Do study and give the mock test. When you start the mock test, copy the question and answers options in the word and later you try to find out the solutions. Also you can get the help from the PHP ZCE Practice test book. When you think you are doing better in test , you are ready to seat for exam .

One thing be careful in the exam : please read question twice and carefully . And hurry to give the answer without completely read the question


Here some useful link about zce:


7. Enjoy to study and visualize the benefit of the exam


🙂 May be you think this is not related to zce preparation. But I think this the most important things. Because honestly speaking I was such a feel bored when I read the string, array ,stream and network chapter. Lots of the function with very confusion name. like : strstr , strtr or array_slice , array_splice.


Only way to get rid of just visualize the benefit after zce exam passed .

You will now connected international programmer. Who want to miss that chance? Your salary may be increase or may be management now evaluate your effort or you can get a your dream job what are you looking for so many days.





Hope so you will be gets benefited to prepare the exam and i will be glad if i help you any kind of issue regarding ZCE.


How to be a very good php application developer

I have a find a very nice guideline to become a good php application developer . These are very useful for recent job market. This  guideline  is originallay writtern by  hasin bhai . As i find this is very useful and helps us lot that’s why I write in my  blog.

0. php?? wtf!!

really, if you know only php, you will hardly get a better job that the one you are doing currently. rather there are chances your boss will fire you soon to get someone who know some not-php things (no offense). in web application development industry you can’t survive knowing only php anymore. yuo have to posses quite a good skill in relevant technologies like database (both mysql or pgsql) and i dont mean that only executing sql queries is enough for that. for better ui and user interaction you must know javascript and that’s a must. css is also an unavoidable part to know to survive. last but not the least, did i mention about html??

1. communication skill

this is something you must show while you are being interviewed. this is must for delivering your ideas to your team mates or make your team-lead understand what the problem you are stuck into. if you are not good in communicating (or atleast not trying to improve), you are stuck in an infinite loop of not getting a better job

2. there is a word called “trend”

do you know about web 2.0, the rest based api and web services that are being used by millions of developers worldwide? if you are asked to embed a google map or search the content from a typical subset of categories (blogrolls, sports) do you know where and how to do that? developer’s life is now quite easy with the help of these tools and services. do you know any of them? even if you are a beginner, you shud know about that

3. framework

whether a cms framework or application development framework you should know about them. these days raw php is used only in very limited sector. everyone are using some sort of frameworks (either a popular one, or a new one developed by them specializing to suit their needs, whatever). so you should have quite a good knowledge on the basic concepts of a framework and reusable object libraries like pear, ezcomponents, codeigniter, zend framework, pecl, ……

4. are you that guy who tries to code everything by your own?

the reusability now delivers a broader meaning. there are thousand of reusable object libraries. if you want to shoot every sort of problem by your own coded libraries, thats a bad idea. because there might be some proven technologies about that problem and in most cases that solution pursue less bugs and better performance that the one you just wrte (as many other developers contributed there, the blessings of open source), so you should make use of them

5. keep studying, know the basics and improve yourself

if you are thinking why you can’t access client’s local folders and files using php, i must say you should study more and strengthen your basics. study the core <language> books (like core php, core java – those tastes good), find popular titles on the sector you work (amazon is a good place to find good books based on user reviews) and also study some software engineering/ methodologies book (like code complete 2, practices of an agile developer).

6. job is no more local, it’s global

theer are may professional network like linked in, oDesk, get-a-free-lancer, rent-a-coder and there are many project owners who likes to outsource their project more than anyone (even you, coz they need to get it done) if you just show some expertise on the field you work on. you can work as a full time consultant or full time employee of many foreign companies who practices outsourcing/ offshoring. but one thing to remember, when you are competing for global jobs – there are a sudden raise of your competitors. you have to beat millions of other developers with your skillset whereas you had to fight with only a couple of talents in a local job. but this is true, if you really posses good basics and good communication skills, job is no more local for you  🙂

Also i have find more related articles and very useful .

Just php will give you nothing… Unless you upgrade yourself

Becoming a kick ass php ninja

Well from the guideline . I have found that php is in number 0. So i think you just know  php only, ultimately you are not a good application developer in the job market. So i will try to follow this things and become a very good things .

Please share  if you have much more others points .

How to use reCaptcha in CodeIgniter

This is a widely used captcha implementation. It’s used at big sites like Facebook and CraigsList. I have some porblem to use that . But from the forum i get it very easily.
Here is the way to use reCaptcha helper in CodeIgniter.
Steps to Use
1. Sign up for an access key at
2. Get recaptchalib.php from the zip archive located at
3. Rename recaptchalib.php to recaptcha_helper.php and put it in your helpers folder.
4. Add the following function to recaptcha_helper.php:
function recaptcha() { $CI =& get_instance(); $CI->config->load('recaptcha'); $public_key = $CI->config->item('recaptcha_public_key'); $message = isset($CI->validation->recaptcha_error) ? $CI->validation->recaptcha_error : ''; return recaptcha_get_html($public_key, $message); }

5. Add the following function to your MY_Validation class as seen below in the libraries folder. (If you don’t already have one a MY_Validation class, make one.)

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class MY_Validation extends CI_Validation { function MY_Validation() { parent::CI_Validation(); } function recaptcha_matches() { $CI =& get_instance(); $CI->config->load('recaptcha'); $public_key = $CI->config->item('recaptcha_public_key'); $private_key = $CI->config->item('recaptcha_private_key'); $response_field = $CI->input->post('recaptcha_response_field'); $challenge_field = $CI->input->post('recaptcha_challenge_field'); $response = recaptcha_check_answer($private_key, $_SERVER['REMOTE_ADDR'], $challenge_field, $response_field); if ($response->is_valid) { return TRUE; } else { $CI->validation->recaptcha_error = $response->error; $CI->validation->set_message('recaptcha_matches', 'The %s is incorrect. Please try again.'); return FALSE; } } }

5. Create a recaptcha.php in your config folder and add your public and private keys (the ones you got from registering) as seen below:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); $config['recaptcha_public_key'] = "..."; $config['recaptcha_private_key'] = "...";

Example usage in a controller:

public function register() { $this->load->library('validation'); $this->load->helper('recaptcha'); $rules['username'] = 'trim|required|unique[users.username]'; $rules['password'] = 'required|password|matches[password_confirm]'; $rules['password_confirm'] = 'required'; $rules['email'] = 'trim|required|valid_email|unique[]'; $rules['recaptcha_challenge_field'] = 'required|recaptcha_matches'; $this->validation->set_rules($rules); $fields['username'] = 'username'; $fields['password'] = 'password'; $fields['password_confirm'] = 'password confirmation'; $fields['email'] = 'email'; $fields['recaptcha_challenge_field'] = 'answer to the security question'; $this->validation->set_fields($fields); if ($this->validation->run() == FALSE) { $this->load->view('user_registration'); } else { echo 'Success!'; } }

In the view, you can create the captcha form element by echoing <?= recaptcha() ?> I can package all of this into a zip file upon request. Here is the original link .