|By Hovhannes Avoyan||
|September 13, 2012 11:16 AM EDT||
This brief tutorial will enable web application developers to harness the power of cloud computing database, Xeround, with the best PHP MVC framework in town, CodeIgniter.
Xeround is an Israeli web startup, launched back in 2005. It specializes in cloud database software technologies, operating in the PaaS domain. Xeround is primarily known for its MySQL cloud database, which it provides with a seamless frontend application. Its unique selling point is the ability to easily scale MySQL application on multiple platforms like Amazon EC2 and Rackspace. Xeround is positioned well in the MySQL cloud database market. Xeround’s basic MySQL cloud database plan is free and pretty fast.
CodeIgniter on the other hand is an Open Source PHP MVC (Model View Controller) framework used to make high end and enterprise level web applications. The framework uses a popular MVC software design pattern, popular with most of the top web developers today. The high points of using CodeIgniter as your web application framework are massive, such as highly organized code, rapid application development and plethora of in built tools.
What will this tutorial teach you?
This tutorial aims to teach you to setup up a basic CodeIgniter application in conjunction with the Xeround cloud database, powered by Oracle’s MySQL.
What will this tutorial NOT teach you?
This tutorial will NOT teach you to use CodeIgniter, MySQL, Phpmyadmin, FTP, HTML, CSS, XAMPP or the web stack.
So in a nutshell?
It rather enables you to learn the processes involved in helping you setup your next web application using CodeIgniter with a Xeround backend.
What will you need?
- An Internet connection, preferably fast.
- A working installation of XAMPP. You can download one here.
Setting up CodeIgniter
With your XAMPP already installed and configured on your computer (Windows, Mac or Linux), you active it by following these steps.
- Launch XAMPP application by clicking on this icon on your desktop.
- Now, ensure the first two features on the control panel are active. In order to enable Apache and MySQL, just click the Start buttons beside them and their status-es should turn green. That’s it. You’re on localhost.
- Now, open up your favorite browser, preferably Google Chrome and type in the following text in the address bar: localhost. If that doesn’t work, type in 127.0.0.1. If everything went well previously, you should see something like this. (Obviously, if you have Linux or Windows, it will mention XAMPP for X OS).
Now, lets setup CodeIgniter. The first thing you should do is visiting Ellis Lab’s CodeIgniter page by click here. When on the home page, click on the download button on the right side. Now its time to unzip.
Once the compressed file is unzipped, name it anything you like. We have named it “CodeIgniterApp”. It is important to clean the folder of any junk, by deleting the license.txt and the user guide files. You wont need those.
To enable your CodeIgniter app to work on the localhost, which is a simulation of a website on a host, you need to copy it to your htdocs.
To do this, follow the directory structure to access your htdocs folder.
Now, just drag and drop the “CodeIgniterApp” folder into htdocs. To ensure everything went fine, open up your browser and type in localhost/CodeIgniterApp. If successful, you should see this page and probably celebrate.
At this point in time, the CodeIgniter has been successfully setup. However, it doesn’t require a database to function just to load up a simple dynamic Welcome page. As the objective of our tutorial is to use CodeIgniter with Xeround, let’s take a break from the CodeIgniter side of things and create an Account on Xeround.
Setting up Xeround
As mentioned before, Xeround offers cloud database services for MySQL that are highly scalable with top notch companies providing instances such as Amazon and Rackspace.
Note: This part of the tutorial will create a sample Xeround account. The username and password will not be disclosed.
- First things first. Visit http://xeround.com/ to access the Xeround site. The home page pretty much summarizes the things we have discussed so far, such as scalability, availability and simplicity.
- Using the navigation bar on top, click sign up. Alternatively, you can click here. Enter your details and in the ‘Expected DB Size’ field, select Less than 0.5 GB. This is well good enough for a starter.
- Now, check your email for the confirmation link that was sent to you. At this point in time, you don’t have to choose the password. That comes later when you click the confirmation link.
- Once you have set the password after clicking the confirmation link, you will be welcomed to the Xeround’s primary dashboard. This can be accessed at https://cloud.xeround.com as well.
- To create your new Cloud Database in minutes, follow these steps:
- Choose to create your database Instance.
- Choose the free 10 MB Xeround FREE plan. You get:
a) Shared Environment
b) High Availability Guaranteed
c) Throughput: up to 1MB/s
d) Connections: up to 5
- Now you will be asked to choose your Data Centre. We recommend Amazon EC2. It’s the best in the business right now. Highly reliable!
- The last step for creating your DB Instance asks you to fill in some crucial details. These may be the most important details of all. They are essential to get your web application up and running on a MySQL backend.
Here is a sample of what we’ve filled in for this tutorial account:
- Once every detail has been carefully filled in and stored in your memory, remember to do one last thing. Yes, you guessed it right. Click the big blue button that says Create.
- Once you have clicked Create, a dialog box will show up saying “DB Instance creation is in progress”. Just close. The DB Instance has been created by now.
- The DB Management Dashboard now looks something like this, as shown in the image below. Explaining all the features of the dashboard is beyond the scope of this tutorial.
- Now, click the link under external DNS Hostname and login to your Phpmyadmin. Once there, create yourself a database. We named ours ‘neil’. At this moment, just take note of your: Database name, user, pass and external DNS Hostname
Connecting Xeround with CodeIgniter
Now that we have our Xeround database setup, it is time to connect the database with CodeIgniter.
- Open the CodeIgniterApp folder that you placed earlier in the htdocs directory. Access the database.phpfile by following the directory structure: CodeIgniterApp/application/config/database.php
- Once you are in the file database.php, scroll down to line 51. Can you see the fields for hostname, username, password and database?
Currently, they are set to localhost but since we want Xeround, we would need to add the details in the blank spaces using the notes we took earlier. By the way, Xeround works on localhost and web!
So based on the tutorial account details, it looks like this once its filled:
$db['default']['hostname'] = instance26267.db.xeround.com:16438;
$db['default']['username'] = ‘user’;
$db['default']['password'] = ‘pass’;
$db['default']['database'] = ‘neil’;
Note: Although you do not have access to the tutorial Xeround account we created, you can still use these database instance details. However, we recommend you create your own. This is only for demonstration purposes.
Tip: In order to avoid lagging, it is better to disable persistent connections within your CodeIgniter application by editing line 57 of database.php. You simply have to set $db['default']['pconnect'] = FALSE; to false. This ensures that there are no lags, since there is a limit of 5 connections in the Xeround FREE plan.
Congratulations. You have successfully completed the essential portion of the tutorial. You have connected your Xeround Cloud Database with your CodeIgniter application. What’s next? Well, its time for some testing.
Testing your application
Lets create a sample table structure.
- Go to application/controllers/ and create a controller: tables.php.
- Add the following code and save it. The code is already supplied in the zip folder attached with this tutorial (namely CodeIgniterApp.zip).
So what this does is basically creates a Controller called Tables, loads the DBForge class of CodeIgniter (used to create tables) and creates a table called Test_Table. If returns messages on the success or failure.
- Run the tables’ controller by type in the following address in your favorite browser’s address bar: http://localhost/CodeIgniterApp/index.php/tables
- You should now see a message on your browser that says that the table “Test Table” has been created successfully. You can even confirm this by going back to your Phpmyadmin dashboard.
Now lets try adding some real world data into our table. To do that, we will create a small application that stores users’ first and last name. Since the scope of the tutorial is not to teach CodeIgniter or programming whatsoever, the files have been supplied to enable you to learn. The end result of the small application is shown below.
Oh by the way, don’t forget to turn on the following autoload.php options by going into CodeIgniterApp/application/config/autoload.php:
You can get the sample code used in this article hereShare Now:
Electric power utilities face relentless pressure on their financial performance, and reducing distribution grid losses is one of the last untapped opportunities to meet their business goals. Combining IoT-enabled sensors and cloud-based data analytics, utilities now are able to find, quantify and reduce losses faster – and with a smaller IT footprint. Solutions exist using Internet-enabled sensors deployed temporarily at strategic locations within the distribution grid to measure actual line loads.
Oct. 10, 2015 02:00 PM EDT Reads: 168
The Internet of Everything is re-shaping technology trends–moving away from “request/response” architecture to an “always-on” Streaming Web where data is in constant motion and secure, reliable communication is an absolute necessity. As more and more THINGS go online, the challenges that developers will need to address will only increase exponentially. In his session at @ThingsExpo, Todd Greene, Founder & CEO of PubNub, will explore the current state of IoT connectivity and review key trends and technology requirements that will drive the Internet of Things from hype to reality.
Oct. 10, 2015 01:45 PM EDT Reads: 163
SYS-CON Events announced today that IBM Cloud Data Services has been named “Bronze Sponsor” of SYS-CON's 17th Cloud Expo, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. IBM Cloud Data Services offers a portfolio of integrated, best-of-breed cloud data services for developers focused on mobile computing and analytics use cases.
Oct. 10, 2015 01:00 PM EDT Reads: 759
The Internet of Things (IoT) is growing rapidly by extending current technologies, products and networks. By 2020, Cisco estimates there will be 50 billion connected devices. Gartner has forecast revenues of over $300 billion, just to IoT suppliers. Now is the time to figure out how you’ll make money – not just create innovative products. With hundreds of new products and companies jumping into the IoT fray every month, there’s no shortage of innovation. Despite this, McKinsey/VisionMobile data shows "less than 10 percent of IoT developers are making enough to support a reasonably sized team....
Oct. 10, 2015 01:00 PM EDT Reads: 272
Today air travel is a minefield of delays, hassles and customer disappointment. Airlines struggle to revitalize the experience. GE and M2Mi will demonstrate practical examples of how IoT solutions are helping airlines bring back personalization, reduce trip time and improve reliability. In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect with GE, and Dr. Sarah Cooper, M2Mi's VP Business Development and Engineering, will explore the IoT cloud-based platform technologies driving this change including privacy controls, data transparency and integration of real time context w...
Oct. 10, 2015 01:00 PM EDT Reads: 168
As a company adopts a DevOps approach to software development, what are key things that both the Dev and Ops side of the business must keep in mind to ensure effective continuous delivery? In his session at DevOps Summit, Mark Hydar, Head of DevOps, Ericsson TV Platforms, will share best practices and provide helpful tips for Ops teams to adopt an open line of communication with the development side of the house to ensure success between the two sides.
Oct. 10, 2015 11:00 AM EDT Reads: 645
There will be 20 billion IoT devices connected to the Internet soon. What if we could control these devices with our voice, mind, or gestures? What if we could teach these devices how to talk to each other? What if these devices could learn how to interact with us (and each other) to make our lives better? What if Jarvis was real? How can I gain these super powers? In his session at 17th Cloud Expo, Chris Matthieu, co-founder and CTO of Octoblu, will show you!
Oct. 10, 2015 11:00 AM EDT Reads: 142
Developing software for the Internet of Things (IoT) comes with its own set of challenges. Security, privacy, and unified standards are a few key issues. In addition, each IoT product is comprised of at least three separate application components: the software embedded in the device, the backend big-data service, and the mobile application for the end user's controls. Each component is developed by a different team, using different technologies and practices, and deployed to a different stack/target - this makes the integration of these separate pipelines and the coordination of software upd...
Oct. 10, 2015 11:00 AM EDT Reads: 337
Mobile messaging has been a popular communication channel for more than 20 years. Finnish engineer Matti Makkonen invented the idea for SMS (Short Message Service) in 1984, making his vision a reality on December 3, 1992 by sending the first message ("Happy Christmas") from a PC to a cell phone. Since then, the technology has evolved immensely, from both a technology standpoint, and in our everyday uses for it. Originally used for person-to-person (P2P) communication, i.e., Sally sends a text message to Betty – mobile messaging now offers tremendous value to businesses for customer and empl...
Oct. 10, 2015 10:15 AM EDT Reads: 338
SYS-CON Events announced today that Sandy Carter, IBM General Manager Cloud Ecosystem and Developers, and a Social Business Evangelist, will keynote at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
Oct. 10, 2015 10:00 AM EDT Reads: 159
The IoT market is on track to hit $7.1 trillion in 2020. The reality is that only a handful of companies are ready for this massive demand. There are a lot of barriers, paint points, traps, and hidden roadblocks. How can we deal with these issues and challenges? The paradigm has changed. Old-style ad-hoc trial-and-error ways will certainly lead you to the dead end. What is mandatory is an overarching and adaptive approach to effectively handle the rapid changes and exponential growth.
Oct. 10, 2015 10:00 AM EDT Reads: 265
The IoT is upon us, but today’s databases, built on 30-year-old math, require multiple platforms to create a single solution. Data demands of the IoT require Big Data systems that can handle ingest, transactions and analytics concurrently adapting to varied situations as they occur, with speed at scale. In his session at @ThingsExpo, Chad Jones, chief strategy officer at Deep Information Sciences, will look differently at IoT data so enterprises can fully leverage their IoT potential. He’ll share tips on how to speed up business initiatives, harness Big Data and remain one step ahead by apply...
Oct. 10, 2015 09:00 AM EDT Reads: 653
WebRTC converts the entire network into a ubiquitous communications cloud thereby connecting anytime, anywhere through any point. In his session at WebRTC Summit,, Mark Castleman, EIR at Bell Labs and Head of Future X Labs, will discuss how the transformational nature of communications is achieved through the democratizing force of WebRTC. WebRTC is doing for voice what HTML did for web content.
Oct. 10, 2015 09:00 AM EDT Reads: 1,448
"Matrix is an ambitious open standard and implementation that's set up to break down the fragmentation problems that exist in IP messaging and VoIP communication," explained John Woolf, Technical Evangelist at Matrix, in this SYS-CON.tv interview at @ThingsExpo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
Oct. 10, 2015 07:00 AM EDT Reads: 5,960
WebRTC has had a real tough three or four years, and so have those working with it. Only a few short years ago, the development world were excited about WebRTC and proclaiming how awesome it was. You might have played with the technology a couple of years ago, only to find the extra infrastructure requirements were painful to implement and poorly documented. This probably left a bitter taste in your mouth, especially when things went wrong.
Oct. 10, 2015 06:00 AM EDT Reads: 828
Nowadays, a large number of sensors and devices are connected to the network. Leading-edge IoT technologies integrate various types of sensor data to create a new value for several business decision scenarios. The transparent cloud is a model of a new IoT emergence service platform. Many service providers store and access various types of sensor data in order to create and find out new business values by integrating such data.
Oct. 10, 2015 04:00 AM EDT Reads: 612
The broad selection of hardware, the rapid evolution of operating systems and the time-to-market for mobile apps has been so rapid that new challenges for developers and engineers arise every day. Security, testing, hosting, and other metrics have to be considered through the process. In his session at Big Data Expo, Walter Maguire, Chief Field Technologist, HP Big Data Group, at Hewlett-Packard, will discuss the challenges faced by developers and a composite Big Data applications builder, focusing on how to help solve the problems that developers are continuously battling.
Oct. 10, 2015 04:00 AM EDT Reads: 523
There are so many tools and techniques for data analytics that even for a data scientist the choices, possible systems, and even the types of data can be daunting. In his session at @ThingsExpo, Chris Harrold, Global CTO for Big Data Solutions for EMC Corporation, will show how to perform a simple, but meaningful analysis of social sentiment data using freely available tools that take only minutes to download and install. Participants will get the download information, scripts, and complete end-to-end walkthrough of the analysis from start to finish. Participants will also be given the pract...
Oct. 10, 2015 03:00 AM EDT Reads: 343
WebRTC: together these advances have created a perfect storm of technologies that are disrupting and transforming classic communications models and ecosystems. In his session at WebRTC Summit, Cary Bran, VP of Innovation and New Ventures at Plantronics and PLT Labs, will provide an overview of this technological shift, including associated business and consumer communications impacts, and opportunities it may enable, complement or entirely transform.
Oct. 10, 2015 02:15 AM EDT Reads: 775
SYS-CON Events announced today that Dyn, the worldwide leader in Internet Performance, will exhibit at SYS-CON's 17th International Cloud Expo®, which will take place on November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Dyn is a cloud-based Internet Performance company. Dyn helps companies monitor, control, and optimize online infrastructure for an exceptional end-user experience. Through a world-class network and unrivaled, objective intelligence into Internet conditions, Dyn ensures traffic gets delivered faster, safer, and more reliably than ever.
Oct. 10, 2015 02:00 AM EDT Reads: 667