Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Php MySql For Beginners
1. PHP - MySQL For Beginners Author : Priti Solanki A tutorial only for beginners !!
2.
3.
4. PREDEFINED CONSTANTS Before exploring the mysql funtions one has to understand the predefined constants provided by the extension. MYSQL_CLIENT_COMPRESS - This flag tells the client application to enable compression in the network protocol when talking to mysqld. MYSQL_CLIENT_IGNORE_SPACE - Allow space after function names [http://dev.mysql.com/doc/refman/5.1/en/server-sql-mode.html]. MYSQL_CLIENT_INTERACTIVE - Allow interactive_timeout in seconds . interactive_timeout is a Mysql server system variabled which decide upon how many seconds the server waits for activity on an interactive connection before closing it.
5. PREDEFINED CONSTANT MySQL fetch constants. MYSQL_ASSOC - Columns are returned into the array having the fieldname as the array index. MYSQL_BOTH - Columns are returned into the array having both a numerical index and the fieldname as the array index. MYSQL_NUM - Columns are returned into the array having a numerical index to the fields. This index starts with 0, the first field in the result. Now let us explore PHP-MySQL related funtions..........
6. PHP-MYSQL FUNCTION In "PHP MySQL Function" section I have tried to explore the commonly used functions and have also tried to answer some of the very basic questions which beginner developers might counter. Question 1: How to connect to mysql via php? Function name : mysql_connect() Description : Open a connection to a MySQL server.On successful connection returns a MySQL link identifier and on failure will return FALSE. Syntax : resource mysql_connect ([ string $server = ini_get("mysql.default_host") [, string $username = ini_get("mysql.default_user") [, string $password = ini_get("mysql.default_password") [, bool $new_link = false [, int $client_flags = 0 ]]]]] )
7. <?php /* Author Notes: Change $host,$user,$password as per you DB*/ $host='localhost'; $user='root'; $password='xxxx'; //get connect to mysql $link = mysql_connect($host,$user,$password); //check for connection if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; //close the DB connection mysql_close($link); ?> Save the code in testdb.php [in root folder] and run http://localhost/testdb.php in the browser .If the string displays 'Connected successfully' on browser it means you are connected with the database succesfully.
8. If you have defined default host,username and password in php.ini then you can do get those variables as shown below. $host=ini_get("mysql.default_host"); $username=ini_get("mysql.default_user"); $password= ini_get("mysql.default_password"); ini_get() is the php funtion to get the value of a configuration value.Setting ini value refer section [INTRODUCTION] above.
9. Question 2 : How to select table in database? Function name : mysql_select_db() Description : Select a MySQL database.Returns TRUE on success or FALSE on failure. Syntax : bool mysql_select_db(string $database_name [, resource $link_identifier]) Example : <?php /*Author's Notes - Get default setting from php.ini*/ $host=ini_get("mysql.default_host"); $username=ini_get("mysql.default_user"); $password= ini_get("mysql.default_password");
10. //get connect to mysql $link = mysql_connect($host,$username,$password); //check for connection if (!$link) { die('Could not connect: ' . mysql_error());} echo 'Connected successfully <br/>'; $database='learndb'; if(mysql_select_db($database)) { echo "we are working with database: ".$database;} else { echo "There is some error: ".mysql_error(); die();} //close the DB connection mysql_close($link); ?> Output: Connected successfully we are working with database: learndb
11. Question 3 : How to select values from MySQL tables?. Function : mysql_query($sql) Description :Send a MySQL query Syntax :resource mysql_query ( string $query [, resource $link_identifier ] ) Example : Add following code before mysql_close($link) statement. //Start Querying table $selectSQL='select * from employee'; $resultSet=mysql_query($selectSQL); echo "<table border='1'>"; echo "<tr><td><b>Name</b></td><td><b>Department</b></td><td><b>Designation</b></td></tr>";
12. while($recordSet= mysql_fetch_array($resultSet,MYSQL_ASSOC)) { echo '<tr><td>'.$recordSet['EmployeeFirstName'].' '.$recordSet['EmployeeLastName'].'</td><td>'.$recordSet['Department'].'</td><td>'.$recordSet['Designation'].'</td></tr>'; } Output: Connected successfully we are working with database: learndb we are working with database: learndb Name Department Designation Kiba Inuzuka IT SE Naruto Uzamaki IT SSE . .
13. Function : mysql_fetch_assoc Description : Fetch a result row as an associative array.mysql_fetch_assoc() is equivalent to calling mysql_fetch_array() with MYSQL_ASSOC. Syntax : array mysql_fetch_assoc ( resource $result ) Example : while($recordSet= mysql_fetch_array($resultSet,MYSQL_ASSOC)) { echo '<tr><td>'.$recordSet['EmployeeFirstName'].' '.$recordSet['EmployeeLastName'].'</td><td>'.$recordSet['Department'].'</td><td>'.$recordSet['Designation'].'</td></tr>'; } Can be replaced like while($recordSet= mysql_fetch_assoc($resultSet)) { echo '<tr><td>'.$recordSet['EmployeeFirstName'].' '.$recordSet['EmployeeLastName'].'</td><td>'.$recordSet['Department'].'</td><td>'.$recordSet['Designation'].'</td></tr>'; }
14. Function : mysql_fetch_row Description : Get a result row as an enumerated array.mysql_fetch_row() fetches one row of data from the result associated with the specified result identifier Syntax : array mysql_fetch_row ( resource $result ) Example : while($recordSet= mysql_fetch_row($resultSet)) { echo '<tr><td>'.$recordSet[1].' '.$recordSet[2].'</td><td>'.$recordSet[3].'</td><td>'.$recordSet[4].'</td></tr>'; }
15. Function : mysql_fetch_object Description : Fetch a result row as an object.Returns an object with string properties that correspond to the fetched row, or FALSE if there are no more rows. Syntax : object mysql_fetch_object ( resource $result [, string $class_name [, array $params ]] ) Example : while($recordSet= mysql_fetch_object($resultSet)) { echo '<tr><td>'.$recordSet->EmployeeFirstName.' '.$recordSet->EmployeeLastName.'</td><td>'.$recordSet->Department.'</td><td>'.$recordSet->Designation.'</td></tr>'; }
16. Question : How to get the meta data of MySQL table? Function : mysql_fetch_field Syntax : object mysql_fetch_field ( resource $result [, int $field_offset = 0 ] ) Description : Get column information from a result and return as an object. Example : /* get column metadata */ $i = 0; while ($i < mysql_num_fields($resultSet)) { echo "Information for column $i:<br />"; $meta = mysql_fetch_field($resultSet, $i); if (!$meta) { echo "No information available<br />"; } Program Contd..... Program Contd.....
17. echo "<pre> blob: $meta->blob max_length: $meta->max_length multiple_key: $meta->multiple_key name: $meta->name not_null: $meta->not_null numeric: $meta->numeric primary_key: $meta->primary_key table: $meta->table type: $meta->type default: $meta->def unique_key: $meta->unique_key unsigned: $meta->unsigned zerofill: $meta->zerofill </pre>"; $i++; } mysql_fetch_field - Get number of fields in result.
18. So.... It seems by now we have done a pretty good job in understanding the basic of DB programming in PHP. But how to perform DML statements ??? update ,insert or delete!!!! To insert,Update and Delete SQL Statement you simply have to write your query and send to Mysql to execute. //Create your query $selectSQL='INSERT INTO `learndb`.`employee` (`EmployeeId` ,`EmployeeFirstName` ,`EmployeeLastName` ,`Department` ,`Designation`)VALUES (NULL , 'Masashi', 'Kishimoto ', 'IS', 'SA')'; //Send the query to mysql server to execut $resultSet=mysql_query($selectSQL); Similar for the Update and Delete statements.
21. REFERENCES Author : Priti Solanki http://php.net/ http://www.mysql.com/ Explore more php-mysql funtions :http://in3.php.net/manual/en/ref.mysql.php So here I finish my attempt to make you understand the basics of database programming with PHP-MySQL.I believe by now you must be confident enough to implement these functions in your project as per your requirement. Spend great time with php-mysql funtions. I request readers to drop in their comments to modify and improve this presentation for total beginners. If there are questions or any example is not clear please write to me at. [email_address]