Weblog

Host Your Application in the Cloud with XAMPP and Bitnami

If you’re a developer used to developing and testing applications locally, moving your code to the cloud can be a bit daunting. First, you have to choose a cloud from the numerous options availabe. Then, you need to deal with the nitty-gritties of pricing, provisioning, application deployment, scalability and security. And finally, you need to keep track of server performance, debug application issues and find ways to cost-efficiently improve performance.… Read More »Host Your Application in the Cloud with XAMPP and Bitnami

Integrating PHP Web Applications with JCR and Magnolia CMS

I first came across PHPCR through my work with Magnolia CMS, an open source Java CMS. Magnolia CMS uses the Java Content Repository (JSR-283) as its content storage mechanism and PHPCR is a PHP adaptation of that standard. It’s great for storing semi-structured content in a hierarchical format and it also includes support for content versioning and indexing. The cool thing about PHPCR is that it lets PHP developers interact… Read More »Integrating PHP Web Applications with JCR and Magnolia CMS

Build and Deploy a Mobile-Friendly Calorie Counter on IBM Bluemix with PHP, MySQL, AngularJS and the Nutritionix API

The Nutritionix API is an online API which lets you access a massive database of nutrition information, covering both generic and branded food items. I came across it recently when looking for something else, and was promptly diverted from my original goal into trying it out. While playing with it, it occurred to me that this could be the basis of a very neat little application to track calorie consumption.… Read More »Build and Deploy a Mobile-Friendly Calorie Counter on IBM Bluemix with PHP, MySQL, AngularJS and the Nutritionix API

Build and Deploy a REST API on IBM Bluemix with PHP and MySQL

I’ve been experimenting with IBM Bluemix for some time now and a few weeks ago, I decided to try hosting a custom REST API with it. I built the API using Bullet, a PHP micro-framework, then deployed it to Bluemix and connected it with Bluemix’s MySQL service. It worked out pretty well…as you can see by trying this live demo. In case you’re interested in learning how I went about… Read More »Build and Deploy a REST API on IBM Bluemix with PHP and MySQL

Configure URL Rewriting for Framework-Based PHP Applications on IBM Bluemix

A few weeks ago, I was introduced to Bluemix, IBM’s new cloud infrastructure platform for developers. With a bunch of pre-configured runtimes for Java, Node.js and Ruby, plus MongoDB, MySQL and various other database services, BlueMix provides a platform for quick app development and deployment. Bluemix is currently in beta and doesn’t support PHP (yet) but I found a blog post which suggested it was possible using the Zend Server… Read More »Configure URL Rewriting for Framework-Based PHP Applications on IBM Bluemix

Improve Web Application Security with Zend Framework 2

I’ve been working with Zend Framework 2 for a while now, trying to learn it and map its concepts to those from Zend Framework 1. One of the things that hasn’t changed is the framework’s support for security – it still has a bunch of useful components which let you protect your PHP application from SQL injection, XSS, CSRF, spam, and brute-force password hacking. You don’t need to be using… Read More »Improve Web Application Security with Zend Framework 2

Create a Mobile-Friendly To-Do List App with PHP, jQuery Mobile and Google Tasks

I’ve been waiting to try out jQuery Mobile for a while and a few weeks ago, I finally got the chance. I hooked jQuery Mobile up with the Google Tasks API and built a simple to-do list application that works on tablet and smartphone browsers. The application exposes most of the basic functionality of Google Tasks, allowing you to add new to-do lists, create tasks, attach due dates and mark… Read More »Create a Mobile-Friendly To-Do List App with PHP, jQuery Mobile and Google Tasks

Authentication and Access Control with Sentry 2 (part 2)

As promised, IBM developerWorks has now published the second part of my article on Sentry 2. In this concluding segment, I dive into the Sentry 2 permission model, explaining how to create groups, assign users and permissions to them, and use permission checks to selectively enable application functions. Also on the menu: find out how to harden your application with login throttling and temporary user deactivation, and integrate Sentry 2… Read More »Authentication and Access Control with Sentry 2 (part 2)

Authentication and Access Control with Sentry 2 (part 1)

If you build Web applications, there are a few things you can’t dodge coding: a user registration workflow, a password reset workflow, a login and logout system, and so on. Since these workflows aren’t likely to change much from one project to another, why not package them all up in a set of classes and use the time you save on something more constructive (blowing up some Protoss bases, maybe?)… Read More »Authentication and Access Control with Sentry 2 (part 1)

Use Doctrine 2.3 with PHP and Zend Framework

IBM developerWorks has just published my article on using Doctrine 2.3 with the Zend Framework. Doctrine is a well-known PHP Object-Relational Mapping (ORM) tool for querying and manipulating database content by using objects. It can be integrated with Zend Framework to inject database content into a PHP Web application. The article discusses how to create Doctrine entities and load and use them within Zend Framework 1.x and 2.x action controllers.… Read More »Use Doctrine 2.3 with PHP and Zend Framework