Using Php and Mysql to Develop a Cms

Posted by: admin  :  Category: MySQL


In this article I’ll try to describe how to develop a very simple Content Management System (CMS). I’ve chosen PHP as the server-side scripting language and MySQL as the database management system purely because I think they are fairly easy to use and they do the job very well.

I won’t spend any time describing CMSs, what they are, or why you should or should not use them as there are plenty of excellent articles around that describe them perfectly well. I’ll just explain one way of developing a CMS.

This CMS consists of a single web page (index.php) that can have its contents updated by use of a form (editPage.php). The contents entered via the form are stored in a database, and are accessed and displayed by the web page. Although this CMS is too simple to be of any real use, it could be used as the starting point for a real life CMS solution.

There are four files in this project:

cms.sql

editPage.php

updatePage.php

index.php

cms.sql

This file creates a database called cms, and creates a table in that database called page. It also loads some intial data into the table. You only need to use this file once.

editPage.php

This web page contains a simple form that can be used to enter (and edit) the contents displayed by index.php.

updatePage.php

This is the form handler – the script that processes the data (entered in editPage.php) and inserts it into the database table (page).

index.php

This is the web page that displays the data held in the database table.

cms.sql

1. CREATE DATABASE cms;

2. USE cms;

3. CREATE table page (

4. pageID integer auto_increment,

5. contents text,

6. primary key (pageID)

7. );

8. insert into page (pageID, contents) values (’1′, ‘dummy text’);

Line 1 creates a database called cms in the MySQL database management system.

Line 2 tells MySQL to use the database for the subsequent commands.

Line 3 creates a table in the database.

Line 4 creates a column called pageID, which will contain integers, and which will be automatically incremented as new records are added to the table. As we only have one web page (index.php) in our imaginary website, we will only have one record and therefore one integer: 1. If we added additional pages to the table, they would be automatically numbered (2, 3, 4, etc).

Line 5 creates a second column called contents, which will contain text. This is where the editable contents displayed by index.php will be stored.

Line 6 sets pageID as the primary key, which you can think of as a reference for the table. As we only have one table, which will contain only one record, we won’t make any use of the key. I’ve included it though because it’s good practice to do so.

Line 7 simply closes the bit of code that was started in line 3.

Line 8 inserts some intial data into the table: 1 as the first (and only) pageID, and ‘dummy text’ as the contents of the first record.

editPage.php

(Note that for display considerations, I’ve used square brackets ‘[' instead of angle brackets for tag names.)

1. [html]

2. [head]

3. [title]Really Simple CMS[/title]

4. [/head]

5. [body]

6. [h1]Really Simple CMS[/h1]

7. [?php

8. mysql_connect("localhost", "root", "password");

9. $result = @mysql_query("SELECT contents from cms.page");

10. while ($row = mysql_fetch_assoc($result)){

11. $contents = $row['contents']; // Do not change these to angle brackets

12. }

13. ?]

14. [form name="form1" method="post" action="updatePage.php"]

15. Enter page content:[br][textarea rows="10" cols="60" name="contents"][?php echo "$contents" ?][/textarea]

16. [input type="submit" name="Submit" value="Update Page"]

17. [/form]

18. [/body]

19. [/html]

Most of this file is fairly simple HTML that doesn’t need explaining. However, the following bits of code are probably worth discussing.

Lines 7 through to 13 contain PHP code to connect to the database and extract the contents of the web page.

Line 15 contains a tiny bit of PHP code to display the contents in the form’s textarea. This line shows how easy it is to integrate bits of PHP code into lines of HTML code.

Remember though that in order to use PHP code in an HTML page, the file has to have an extension of .php. If it does not, the PHP code will not be processed by the web server.

updatePage.php

1. [?php

2. $contents=$_REQUEST['contents']; // Do not change to angle brackets

3. mysql_connect(”localhost”, “root”, “password”);

4. $result = @mysql_query(”UPDATE cms.page SET contents=’$contents’”);

5. mysql_close();

6. ?]

This is the form handler, that’s to say, the script that processes the data entered into the form (in editPage.php).

Line 1 signifies the start of a PHP script.

Line 2 requests the contents that were posted from the form. We could have written

$contents=$_POST['contents']; instead if we had wanted to.

Line 3 connects to the MySQL database server, setting up the host name, which I’ve assumed to be localhost, the database user, which I’ve assumed to be root, and the password needed to connect to the database. Naturally, I have no idea what this would be for your system so I’ve just written the word password.

Line 4 updates the page table in the cms database with the new contents.

Line 5 closes the database connection.

Line 6 closes the PHP script.

index.php

1. [html]

2. [head]

3. [title]Home Page[/title]

4. [body]

5. [h1]Home Page[/h1]

6. [?php

7. mysql_connect("localhost", "root", "password");

8. $result = mysql_query("select contents from cms.page");

9. while ($row = mysql_fetch_assoc($result)){

10. $contents = $row['contents']; // Do not change to angle brackets

11. }

12. echo $contents;

13. ?]

14. [/body]

15. [/html]

This is the web page that displays the contents from the database.

Most of the lines in this web page are pretty straight forward and don’t need explaining. Lines 6 to 13 contain the PHP script that extracts the contents from the database and displays (echos) it in the browser.

Installing/Running the CMS

To use the CMS you need to copy the files onto your web server into the area allocated for web pages. Your web server needs to support PHP and MySQL; if it doesn’t, the CMS won’t work.

You also need to use the correct database connection names and passwords (those used in the mysql_connect lines in the PHP scripts).

Exactly how you run the cms.sql file to set up the database and database table will vary from web server to web server so it’s difficult to give precise instructions here. If you have a phpMyAdmin icon or something similar in your web servers control/administration panel you should be able to use that.

Once you’ve set up the database and table, you can simply browse to the editPage.php web page and update the database contents. You can then browse to the index.php page to view the updates.

Domain Types and Prices

Posted by: admin  :  Category: Domain Names


Now that you’ve decided to become an internet entrepreneur, there are score of things you have to consider.  Your first job is to decide on a domain type and name.  Because there are quite a few from which to choose, you’ll have to have in mind a) your budget and b) what’s going to get you optimal traffic  flow.

The Trifecta:  The most common, most marketable, and easiest to remember domain types are .com, .net, and .org.  Any one of these three will invite investors to your site easier and certainly ensure maximum traffic flow.

Country-Specific:  Of course, if the domain name you desire has already been taken you can register your name with a country-specific extension.  These include .uk (for the United Kingdom, of course), .jp (Japan), .fr (France), etc.  Any country you can think of has an extension that you can use to differentiate your site.

Accepted Sub-Domains: If the country-specific domain names have dried up, there are some alternative names that have been approved by ICANN:  .aero, .biz, .info, .name, .edu, etc.  Not only are they more unique, they’re extremely specific.

Not-so Great Sub-Domains:  You could always get extremely unique and add a quirky sub-domain.  For example, if the name “Food.com” is already in use, perhaps make your website more specific:  “food.enteryoursmexydomainnamehere.com” –of course shy away from using a sub-domain even remotely resembling this one.  However, because these are essentially imaginary domain extensions, the chances of anyone actually knowing where to search is very small.

Price: Now depending in with which domain name registrar you register your name, you’ll end up paying anywhere between $6.99 and $15.75 per year; however, there’s been a recent decrease in domain prices, so if you act quickly you could get your name for less than $10.

Why WebHostingPad Surprised Everyone to Become a Leading Web Hosting Company

Posted by: admin  :  Category: Hosting Coupons


WebHostingPad has quickly risen to become a top-tier web hosting company. Their growth even surprised themselves. Based out of the Chicago area, Web Hosting Pad had to relocate their center of operations in July of 2008 to accommodate their rapid growth. They doubled their employees and their office space to meet their increasing demand. Very few companies can say they exceeded their growth projection by a whopping 25% like WebHostingPad did in only two years.

WebHostingPad was created by several people that had years of experience in the web hosting industry. Their goal, in their own words, was to provide “an above average experience at below average prices.” Theirs is a similar strategy Sam Walton had when he first started. Web Hosting Pad has usually been the industry’s driving force for cheap web hosting prices.

Rapid growth and lower prices have not compromised the quality of WebHostingPad’s service. I once had a technical support call answered in twenty-two seconds—and that included going through “push 1 for sales, 2 for technical support.” Another tech support incident was answered by email in a mere four minutes. When Web Hosting Pad doubled their personnel, much of that increase was in the area of support.

WebHostingPad continues to be the pacesetter for affordable web hosting. As of the time of this article, Web Hosting Pad is offering unlimited space and bandwidth, the ability to host unlimited domains, one-click WordPress and Joomla! installation through cPanel (way superior over Plesk), and 24/7 email, live chat and telephone support. Web Hosting Pad’s prices are some of the lowest on the market. You can go to www.WebHostingPadSpecialOffer.com to find the latest cheap web hosting deal—ones you won’t even find on WebHostingPad’s home page.