I would like to inform you that the eBook "Developing a Canvas Application on Facebook by using the PHP SDK" has been rewritten. It is now organized in such a way that you no longer need to learn the Old PHP client library and FBML before learning how to use the PHP SDK. All the necessary information and source code listing are provided in the book!

In revision 2.1, the eBook is updated so as to reflect the latest changes that Faecbook made on the application settings page.

 

There are 2 methods to get the eBook:

 

You can test drive this demo application by visiting here.

 

For your reference, below is the TOC:

  1. INTRODUCTION
    1.1. CHANGES IN THIS REVISION
    1.2. THE TWO GENERATION OF SDKS
  2. SETTING UP THE DEVELOPMENT ENVIRONMENT
    2.1. DOWNLOADING THE PHP SDK
    2.2. SETTING UP THE DEVELOPMENT ENVIRONMENT
    2.3. REGISTERING YOUR APPLICATION ON FACEBOOK
    2.4. VERIFYING THE ENVIRONMENT
    2.4.1. Instantiating the Application Object
  3. THE DEMO APPLICATION - “OUR 1ST FB APP (PHP SDK)”
  4. LEANING FBML – PART 1
    4.1. Standard Facebook Dashboard Header - fb:dashboard
    4.2. Standard Facebook Navigation Tabs - fb:tabs and fb:tab-item
    4.3. Display User’s Name - fb:name
    4.4. Displaying User's or Facebook Page's profile Profile Pic - fb:profile-pic
  5. CHECKING FOR THE EXISTENCE OF A VALID USER SESSION
  6. QUERYING THE CURRENT USER'S FACEBOOK ID
  7. IMPLEMENTING "MY FRIENDS (GRAPH API)" TAB – PART 1
  8. DISTINGUISHING BETWEEN “CONNECTED”, “NOT CONNECTED” AND “UNKNOWN”
  9. ENFORCING THE APPLICATION-LEVEL LOGIN
  10. HOW PHP SDK CALLS GRAPH API & OLD REST API
    10.1. COMPLETING THE “MY FRIENDS (GRAPH API)” TAB
    10.2. IMPLEMENTING THE “MY FRIENDS (OLD REST)” TAB
  11. PERFORMANCE TUNING IN USING THE GRAPH API
  12. LEANING FBML – PART 2
    12.1. CREATING A FORM FOR GATHERING USER INPUT - FB:EDITOR
    12.2. DISPLAYING AN INPUT TEXT FIELD - FB:EDITOR-TEXT
    12.3. DISPLAYING A DATE SELECTOR - FB:EDITOR-DATE
    12.4. DISPLAYING A CUSTOM ELEMENT - FB:EDITOR-CUSTOM
    12.5. DISPLAYING RADIO BUTTONS
    12.6. DISPLAYING THE FORM BUTTONS - FB:EDITOR-BUTTONSET, FB:EDITOR-BUTTON & FB:EDITOR-CANCEL
  13. IMPLEMENTING THE “INPUT FORM” TAB
    13.1. FBML FORM VS. HTML FORM
    13.2. PROCESSING THE SUBMITTED DATA
    13.2.1. Database Access
  14. LEARNING FBML – PART 3
    14.1. SENDING REQUESTS / INVITATIONS - FB:REQUEST-FORM AND FB:MULTI-FRIEND-SELECTOR
    14.2. FURTHER READINGS
  15. REQUESTING EXTENDED PERMISSIONS
    15.1. BACKGROUND INFORMATION
    15.2. HOW TO REQUEST EXTENDED PERMISSIONS
    15.3. POTENTIAL ISSUE
  16. PUBLISHING A POST ONTO USER'S WALL
    16.1. SAMPLE POST IN USER'S WALL
    16.2. HOW TO PUBLISH POST VIA THE GRAPH API
  17. CALLING OLD REST API – SUPPLEMENTARY INFORMATION
    17.1. WHY STILL WANT TO CALL THE OLD REST API?
    17.2. NAME LOOKUP TIMED OUT ERROR IN CALLING THE OLD REST API
  18. PAGING THROUGH CONNECTION DATA
    18.1. IMPLEMENTING PAGING IN "MY FRIENDS" PAGE
  19. CONCLUSIONS