Simple PHP MySQL Connection Test Script Example



Simple PHP MySQL Connection Test Script Example
 (381) dminister a web business
Simple PHP MySQL Connection Test Script Example
Post Description:
Post Tags: simple, php, mysql, connection, test, script, example
This Post Has Been Viewed 2300 Times Since Tue Feb 05, 2008 5:04 pm Posted By hostman with 6 replies
Simple PHP MySQL Connection Test Script Example
as a php programmer, sometimes you need to create scripts with an install for the installation of the script. and you want to test the mysql database connection before you install it. today i was writing a script and i wanted to take the user through the installation process and one of the steps was to test the mysql database connections, if the connections fails, then the user is prompted to enter the database details again, if its successful, then it continues with the next step in the instalation process. so you can use this:

1. first step is to copy and paste the following code into your texteditor. if you are using windows, you can use notepad.

PHPCODE:
<?
###################################### C O P Y R I G H T S ####################################
# THIS SCRIPT IS DISTRIBUTED BY WEBUNE.COM UNDER LICENSE UNDER THE GPL RULES
# PLEASE DO NOT REMOVE THIS MESSAGE IN SUPPORT OF OUR HARD WORK TO CONTINUE TO PROVIDE FREE SUPPORT
###############################################################################################
# OK, HERE WE GO
# Use this varialble if you are using an installation script
$step = $_GET['step'];
if (!$step) {
	$page_title = 'Form';
}
else{
	$page_title = 'install step '.$step;
}
############## BEGIN FUNCTIONS ##############################
# FUNCTION TO TEST USERNAME AND PASSWORD IN MYSQL HOST
function db_connect($server, $username, $password, $link = 'db_link') {
	global $$link, $db_error;
	$db_error = false;
	if (!$server) {
		$db_error = 'No Server selected.';
		return false;
	}
	$$link = @mysql_connect($server, $username, $password) or $db_error = mysql_error();
	return $$link;
}
# FUNCTION TO SELECT DATABASE ACCESS
function db_select_db($database) {
	echo mysql_error();
	return mysql_select_db($database);
}
# FUNCTION TO TEST DATABASE ACCESS
function db_test_create_db_permission($database) {
	global $db_error;
	$db_created = false;
	$db_error = false;
	if (!$database) {
		$db_error = 'No Database selected.';
		return false;
	}
	if ($db_error) {
		return false;
	} else {
		if (!@db_select_db($database)) {
			$db_error = mysql_error();
			return false;
		}else {
			return true;
		}
	return true;
	}
}

function step1 ($error) {
	echo '<h1 style="color:#FF0000">'.$error.'</h1><hr>';
?>
<form name="form1" method="post" action="<? $_SERVER['PHP_SELF']; ?>?step=2">
<table border="0" cellspacing="5" cellpadding="5">
<tr>
<td><div align="right">mysql hostname:</div></td>
<td><input name="server" type="text" value="<? echo $_REQUEST['server']; ?>"> (usually &quot;localhost&quot;)</td>
</tr>
<tr>
<td><div align="right">mysql username:</div></td>
<td><input type="text" name="username" value="<? echo $_REQUEST['username']; ?>"></td>
</tr>
<tr>
<td><div align="right">mysql username password:</div></td>
<td><input type="text" name="password" value="<? echo $_REQUEST['password']; ?>"></td>
</tr>
<tr>
<td><div align="right">mysql database name:</div></td>
<td><input type="text" name="database" value="<? echo $_REQUEST['database']; ?>"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="Submit" value="Submit"></td>
</tr>
</table>
</form>
<?php
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Webune MYSQL TEST - <? echo $page_title; ?></title>
</head>
<body>
<h1><? echo $page_title; ?></h1>
<?
############## END FUNCTIONS ##############################
switch ($step) {
	case '2':
		if ($_REQUEST['server']) {
				$db = array();
				$db['DB_SERVER'] = trim(stripslashes($_REQUEST['server']));
				$db['DB_SERVER_USERNAME'] = trim(stripslashes($_REQUEST['username']));
				$db['DB_SERVER_PASSWORD'] = trim(stripslashes($_REQUEST['password']));
				$db['DB_DATABASE'] = trim(stripslashes($_REQUEST['database']));
				$db_error = false;
				db_connect($db['DB_SERVER'], $db['DB_SERVER_USERNAME'], $db['DB_SERVER_PASSWORD']);
				if ($db_error == false) {
					if (!db_test_create_db_permission($db['DB_DATABASE'])) {
						$error = $db_error;
					}
				} else {
					$error = $db_error;
				}
				if ($db_error != false) {
					$error = "failed";
					echo step1($db_error);
				} else {
					echo '<h1 style="color:green">Congratulations!</h1>Connected Successfuly to datbase <strong><a href="http://www.webune.com">Continue &gt;&gt; </a></strong>';
				}
		} else {
			$error = "ERROR: please provide a hostanme";
			echo step1($error);
		}
	break;

	default:
	echo step1('Step 1');
	break;
}
?>
<div align="center"><img src="http://www.webune.com/images/headers/default_logo.jpg" alt="Webune Hosting"></div>
<div align="center">Script Courtesy of <a href="http://www.webune.com">Webune PHP/Mysql Hosting</a></div>
</body>
</html>


2. save the file as testmysql.php and upload to your website. NOTE: you must have php and mysql for this sample script to work

3. now open testmysql.php with your browser ( http://www.example.com/testmysql.php ), you will see if it fails or if it is able to connect successfuly

hope this helps

Leave Your Comments     [ dejar commentarios ]
  * Name     [nombre]

  * eMail (will not be published)     [coreo electronico]

* Enter Your Reply or Comments:    [commentarios]


Add Picture To Comments         [incluir foto]
YES NO             upload
Receive Replies on my Comments (An email will be sent to you when someone replies to your comments)

     

Comments and replies About Simple PHP MySQL Connection Test Script Example




:: 1 :: #42640 - Reply By jj On Sat Feb 23, 2008 3:35 am
i got a syntax error on line 76
:: 2 :: #42717 - Reply By hostman On Sat Feb 23, 2008 12:17 pm
make sure you have php mysql in your website. check with your host.
:: 3 :: #42870 - Reply By Can Surmeli On Sun Feb 24, 2008 7:40 am
thank u so much. nice work. it really helped me.
:: 4 :: #62223 - Reply By Scott Barber On Thu Jul 17, 2008 5:00 pm
thanks for posting this script. it is nice to have a quick confirmation that i have the access needed with a quick test.
:: 5 :: #64117 - Reply By vinoth On Thu Jul 31, 2008 1:01 am
ya i worked out that coding. but i want the sample codings for all the type of web form development.so please send me all the codings to develop the applications.in this coding also very useful for me...so please help me. i'm also a web developer.
:: 6 :: #65257 - Reply By Michel On Thu Aug 07, 2008 5:40 am
cool i am just starting with php and mysql and this is a great encouragement to see the words congratulations
thank you hostman