mysql
Markus Fernandez asked:


Web site hosting, MySQL and PHP development are like two sides of the same coin. They work in tandem to create dynamic and comprehensive web sites. Having MySQL and PHP programs for our website shall always give a competitive edge to our business. Since, the massive range of flexibility offered by these programming languages assists in achieving our prerequisite business goals.

Therefore, creating targeted website for promoting business online is a must for all corporate entities. Some of the pertinent questions that come to our mind while structuring the site are:

• The kind of information that should be uploaded in the website?

• Whether the website is in need of regular updates and the frequency?

• If the site requires shopping cart solutions as a tool for e-commerce?

• If there is a need for a database?

• The approx. budget?

If we are looking for long term advantages from php mysql development programming language, integrating PHP and MySQL in the project shall give the website different kind of impetus. With php mysql web development, the open source code developed by the system analyst enables achievement the of project goals with little effort. The usage of these programming languages also ensures the future up gradation and storage of content in database for software application venture.

Pre Defined Functions- Php and mysql web development in general is capable of many simple functions such as date functions, file manipulation, mathematics, and logic. But on the other hand php mysql web development doesn’t expand its credentials over database driven web applications. Basically, with the help from MySQL library the integration of database in to our project is made hassle- free through these applications.

Characteristics Of MySQL and PHP Programs- If you’ve decided to automate your web site, and are not aware of the know- how, then php mysql development is the solution to your problem. In PHP, the actual coding is easily available and that too for free for the public. Since, by nature PHP is open source, therefore there is a large community of programmers who can always assist each other with code. Thus the system analysts can now use codes or functions that have been already applied, rather than reinventing them. This can dramatically cut down production time.

Why php and mysql web development? - In short, php and mysql web development is flexible, cheaper and community generation oriented. Whether we are an entrepreneur starting a website business or just a website programmer looking for quality website hosting services, it is advisable to gather considerable knowledge about php mysql web development to ensure smooth online launch of products and services.

Aug
15
mysql
Markus Fernandez asked:


Choosing php and mysql as programming language for a website is not enough. With open source coding being one of the inherent properties of php mysql development, securing your codes becomes essential. So when one allows the users to upload files on the website, then security is definitely at stake.

PHP Programming Protection

While it is not entirely possible to protect your site, yet there are few precautions that you can incorporate for better protection of PHP programming. Some of these are:

• You should check the referrer, for being sure that the information sent is from your website and not an outside source. Since, there are maximum chances of the information being fake.

• Restriction of the type of extension files being uploaded on the website is yet another method of security check.

• Renaming files is another way in which the program can be secured. This procedure involves the checking of double-barreld extensions like yourfile.php.gif.

• Changing the permission command for the upload folder so that files within it are not executable.

• All the alterations created by the user should be allowed only when they ‘Login’ into the database. On the other hand the owner of the site should always keep a close watch on all files being uploaded and then make them live.

Mysql Programming Security

Another aspect in php and mysql web development is the protection of the mysql libraries. Therefore, the most important aspect involved in protecting the mysql program is the security of the entire server host.

Securing MySQL is very essential for the smooth running of the website. This is based on Access Control Lists and SSL-encrypted connections, for protecting the php mysql web development program from random users visiting the website.

Some of the vital things to be considered for online site protection are:

• Accessing of the mysql database should not be allowed for any and everyone.

• Privileges to the users should always be accompanied with some restriction. If one can easily connect to the server without any ‘login’ then the security level code of the MySQL server should be rechecked.

• The MySQL database should be void of plain-text passwords. Use programs like MD5 (), SHA1(), or some hashing function for complete protection.

• Do not choose passwords from dictionaries, since they can be hacked easily. Use programs that break the passwords.

Therefore, the successful development of a website through php and mysql web development is complete only when the site owner consults a professional programmer. They expertise in the optimization of the MySql hosting database. This program is dynamic in nature and is an effective tool in the creation of browser-based applications.

mysql
Bill Hamilton asked:


Self-Taught PHP/MYSQL: a simple Page Counter

This article is a short introduction to PHP and MySQL using the example of a simple page counter. I will illustrate creating the database in MySQL, connecting to the database from the PHP script, querying the database for information, displaying the information in a web page, and writing the information back to the database. As always, the fastest way to master the process is to jump right in with the code, look it over and use it. We’ll make a MySQL database to store the page names and the number of page views, and use PHP to increment and display the count on a web page. First here is all of the code, and then I’ll go over it in detail:

This goes into a file called “pagecounter.php”



You’ll no doubt have noticed that the script “includes” another, so without further delay here is the “connect.php” file:



The pagecounter.php script needs a database to operate on. Just briefly, here’s how to create it.

Creating the database:

Log in to MySQL at your Unix prompt (which might be #):

# mysql –uYourUserName –pYourPassword

At the MySQL prompt enter these commands:

mysql> create database pages;

mysql> use pages;

mysql> create table counter (pagename varchar(60),hits int, stamp timestamp);

mysql> quit;

Naturally you can create the database and table with utilities or web-based interfaces, but doesn’t it seem simpler to just enter three commands?

If you just wanted some code for a simple counter, this is all you need. Put this text into an SHTML web page, or this text into a php web page, copy the above two files into the same directory, and you’re done.

The first thing you’ll have noticed about the scripts are the dollar signs ($). All variables in PHP scripts start with a $. Anything starting with a $ is a variable. Instructions - statements and functions – end with a semicolon (;). starts the script and it ends with . When your script is hosed, look at these first.

Details about the pagecounter.php script

Line 1

include_once “connect.php”;

The first line in the script is just what it appears to be. It includes whatever is in the file “connect.php”. The “_once” means that it’s only included once, even if you had the line twice in the script. The reason I’ve separated it out is that it’s all the connection stuff to the database. All the php/Mysql scripts will need it, it’s always the same, so you can just put it by itself and use the include function.

Line 2

$pagename=$_SERVER["REQUEST_URI"];

The next line creates a variable called $pagename and sets the value to a special pre-defined variable $_SERVER["REQUEST_URI"]. The brackets [ ] are used by arrays in php. $_SERVER is a pre-defined array of headers and paths. This particular one is the name of the file that accesses the script, i.e., the name of the page that the counter is in.

Line 3

$result=mysql_query(”Select * from counter where pagename=’$pagename’”);

All the database work is done with mysql_query, which sends an SQL command string to MySQL, after you’ve already logged in and connected to the database with the connect.php script. “Select * from counter where pagename=’$pagename’” replaces $pagename with its value. But there’s a quirk here – the single quotes have to be inside the double quotes. If I had it the other way around, with the single quotes outside, the query would be for the text “$pagename” instead of the value. $result is the result set. It can be any name but in tutorial scripts it’s always $result, so it is here.

Line 4

if (mysql_num_rows($result)==0){

The fourth line is the php version of “if-then”. It simply checks whether there are any results from the query in line 3. The syntax is representative of php coding in general so it’s a good place to start. The curly brackets { } are used to group instructions. The curved brackets ( ) are used for the “if” condition. Everything inside the curly brackets will be executed if the “if” condition is true. PHP uses double equals == for comparison; if I had used only a single equal sign it would try to set mysql_num_rows to 0, which wouldn’t work for our purposes. A missing equal sign is the second thing to look for when your script is hosed and it’s not missing a $ or ;.

Line 5

mysql_query(”insert into counter (pagename,hits) values (’$pagename’,'0′)”); }

Inside the brackets, which only happens when line 4 finds no records of the page we searched for, the instruction creates a new record with the page’s name and zero for the hit count. Although mysql_query is a function, it doesn’t necessarily need a variable $result= in front of it. That’s optional in PHP if you don’t care about the return value.

The closing curly bracket } from the “if” statement comes here, since we only needed one statement to create our record.

Line 6

$count=mysql_result($result, 0, “hits”);

mysql_result fetches the actual data from the result set. You specify the result set (from mysql_query), the row number (0), and the column name (“hits”). This is a little confusing at first since to get here took four steps: 1) log into MySQL, 2) connect to the database, 3) select data from the table, and 4) fetch a particular piece of the data. Putting the repetitive first two steps into an include file where you can more or less forget about them makes it more intuitive: use SQL to select data with mysql_query, and then retrieve data with mysql_result.

Line 7

$count=$count + 1;

Just adds one to the count variable. This is the count of the page views of the page requesting the script.

Line 8

mysql_query (”update counter set hits=$count where pagename=’$pagename’”);

As with Line 5 we send an SQL command directly to MySQL. This one updates the count for just the page matching the variable $pagename.

Line 9

echo “Page Count: “.$count;

The echo function writes text to a web page, in this case the text “Page Count: “ followed by whatever value is in $count. The period in between is the PHP concatenation operator: it simply adds the two strings together. Echo sees it as one string and outputs it.

Details about the connect.php script:

All this script does is connect to the MySQL server and select the Database.

Line 1

$host=”localhost”;$user=”YourUserName”;$password=”YourPassword”;$dbase=”pages”;

These are the inputs for the connect and select_db functions. Naturally you can insert the values into the functions on line 3 and 4 and eliminate this line, but it’s simpler to change later (when you re-use this code for example) if you just list them out at the top. The host and dbase won’t need to be changed in this example. The user and password are specific to your MySQL setup. As shown here you can put as many statements on one line as you want; PHP doesn’t care.

Line 2

// change the user and password to your MySQL user and password

The double slashes // denote a comment line that is ignored by php. Each comment line needs the slashes.

Line 3

$connect = mysql_connect($host,$user,$password);

You log into your MySQL with the mysql_connect command. You would change the host from “localhost” to the database server if you were accessing MySQL from another server, provided you’ve set up the access rights for the specified user/

Line 4

mysql_select_db($dbase,$connect);

Since we can have multiple databases in the MySQL server, we have to select one before sending SQL statements to it. As I mentioned earlier, this part is repetitive, and once it’s in this file and working you can forget about it.

In this tutorial we’ve examined a simple but functional web page counter implemented with PHP/MySQL. We examined the basic syntax of PHP statements and variables, the PHP “include” function and “if” control function, and the fundamental PHP MySQL functions mysql_connect, mysql_select_db, mysql_query, mysql_num_rows, and mysql_result. For further reference the reader should bookmark http://dev.mysql.com/doc/refman/6.0/en/index.html and http://us.php.net/manual/en/funcref.php .

Bill Hamilton is a former Database Administrator for United News and Media, and VNU inc. He currently operates several php/mysql driven websites including Gemstones and Beads