நாம் அன்றாடம் பயன்படுத்தும் தொலைபேசிகள், நாற்காலிகள், கணினிகள் போன்றவைகளை உருவாக்க பிளாஸ்டிக் என்பது எப்படி அவசியமானதோ அதே போன்றுதான் இணைய உலகில் தரவுத்தளமும்(Database). பிளாஸ்டிக் இல்லாத உலகை நாம் முடிவு செய்தால், இந்த உலகத்தில் பாதிக்கு மேலான பொருட்களை நாம்மால் பயன்படுத்த முடியாது. அதுபோலவே தரவுத்தளம் இல்லையென்றால் பாதிக்கு மேலான இணையதளங்கள் பயனில்லாததாகிவிடும். இன்னும் சிறப்பாக சொல்ல வேண்டுமென்றால் தரவுதளம்தான் இணையம் மற்றும் வலை ஆகியவைகளின் இதயம் என்று கூடச் சொல்லலாம். தகவல்களை சேமிக்கவும், சேமித்த தகவல்களை திரும்ப எடுக்கவும் வழியில்லையென்றால் இணையம் என்பது பயனற்ற ஒன்றாக ஆகிவிடும்.
MySQL உடன் PHP யை எளிமையாக பயன்படுத்தலாம். இது PHP யின் முக்கியமான அம்சங்களில் ஒன்றாகும். MySQL ஐப் பற்றி விரிவாகவும் தெளிவாகவும் தெரிந்து கொள்ள தமிழில் த.நித்யா அவர்கள் எழுதிய புத்தகத்தைப் படிக்கவும். இந்த புத்தகத்தில் MySQL ஐப் பற்றிய தகவல்கள் அனைத்தும் விரிவாக அனைவருக்கும் புரியும் படி விளக்கப்பட்டுள்ளது. ஆகையால் நாம் நேரடியாக PHP உடன் MySQL ஐப் இணைப்பதைப் பற்றி பார்க்கலாம்.
PHP உடன் MySQL ஐ இணைத்தல் (Connect with PHP to a MySQL Server)
PHP உடம் MySQL தரவுத்தளத்தை இணைப்பதற்கு mysql_connect() எனும் function பயன்படுத்தப்படுகிறது. mysql_connect function ஆனது தரவுத்தளத்துடன் ஒரு இணைப்பை ஏற்படுத்தி தரவுத்தளத்தில் இருக்கும் தகவல்களை நாம் அணுகுவதற்கான வசதியை ஏற்படுத்தித் தருகிறது. mysql_connect function ஐந்து arguments களை பெற்றுக்கொண்டு நமக்கு இணைப்பை ஏற்படுத்தித் தருகிறது. இதில் முதல் மூன்று arguments கள் அவசியமானவைகள்.
முதல் argument தரவுத்தளம் இருக்கும் சேவையகத்தின்(server) முகவரி, இது default ஆக localhost:3306 என இருக்கும். இரண்டாவது argument தரவுத்தளத்திற்குள் நுழைவதற்கான பயனரின் பெயர், மூன்றாதவது argument பயனருக்குண்டான கடவுச்சொல்(password).
தரவுத்தளத்துடனான இணைப்பைத் துண்டிப்பதற்கு mysql_close() எனும் function பயன்படுத்தப்படுகிறது. எந்த இணைப்பை நாம் துண்டிக்க வேண்டுமோ அந்த இணைப்பின் பெயரை இதற்கு argument ஆக கொடுக்க வேண்டும்.
இப்பொழுது PHP யைக் கொண்டு MySQL தரவுத்தளத்துடன் இணைப்பை ஏற்படுத்துவதற்குண்டான நிரலைப் பார்ப்போமா? இந்த நிரலில் நான் பயன்படுத்தியிருக்கும் பயனர் பெயர், கடவுச்சொல், தரவுத்தளத்தின்(Database) பெயர் ஆகியவைகள் என்னுடைய கணினியில் நான் அமைத்து வைத்திருப்பது. உங்களுடைய கணினியில் இருப்பதற்கு ஏற்ப மேற்கண்டவைகளின் மதிப்புகளைக் நீங்கள் கொடுத்துக்கொள்ளுங்கள்.
நிரல்:
[code lang=”php”]
<?php
$dbhandle = mysql_connect(‘localhost’,’root’, ‘password’); //servername, username, password of user
if($dbhandle) {
echo "Connected to MySQL Database<br>";
echo "Successfully Connected!";
mysql_close($dbhandle);
}
else {
echo "Unable to connect to MySQL Database.<br>";
}
?>
[/code]
வெளியீடு:
MySQL தரவுதளத்திலிருந்து PHP மூலமாக பதிவேடுகளை(Record) தேர்வு செய்தல் (Selecting Records from a MySQL Database Using PHP):
நாம் தற்போது MySQL தரவுத்தளத்துடன் வெற்றிகரமாக இணைப்பை ஏற்படுத்தி விட்டோம். அடுத்ததாக தரவுத்தளத்தில் இருக்கும் தகவல்களை அணுக வேண்டும். அதற்கு முதலில் தாம் தகவல்கள் சேமித்து வைக்கப்பட்டிருக்கும் தரவுத்தளத்தினை(Database) தேர்வு செய்ய வேண்டும். அதன்பிறகுதான் நம்மால் தரவுத்தளத்திற்குள் இருக்கும் அட்டவணைகளில்(Tables) இருந்து தகவல்களை பெற முடியும். ஆகையால் நாம் முதலில் தரவுத்தளத்தினை தேர்வு செய்வது எப்படி என்று பார்ப்போம். தரவுத்தளத்தினை தேர்வு செய்வதற்கு mysql_select_db() எனும் function பயன்படுகிறது. அதன்பிறகு நம்முடைய SQL Query களை mysql_query() function க்கு argument ஆக கொடுப்பதன் மூலமாக தகவல்களை அணுக முடியும்.
mysql_query() function மூலமாக கிடைக்கும் முடிவுகள்(results) array -யில் சேமிக்கப்படுகிறது. அவ்வாறு array -யில் சேமிக்கப்படும் முடிவுகளை mysql_fetch_array() funtion மூலமாக நாம் பெற்றுக்கொள்ளலாம்.
சரி மேல சொல்லப்பட்ட கருத்துக்களுக்கான நிரலைப் பார்ப்போமா?
[code lang=”php”]
<?php
$dbhandle = mysql_connect(‘localhost’,’root’, ‘password’); //servername, username, password of user
if($dbhandle) {
echo "Successfully Connected!<br />";
$db = mysql_select_db(‘phptest’);
$query = ‘SELECT * FROM customer’;
$query_result = mysql_query($query, $dbhandle);
if(!$query_result) {
echo "Unable to perform query!<br />";
}
else {
while( $result_row = mysql_fetch_array($query_result, MYSQL_ASSOC)) {
print_r($result_row);
echo "<br />";
}
}
}
mysql_close($dbhandle);
?>
[/code]
(பதிவேட்டில் தகவல்களை சேர்த்தல்)Adding Records to MySQL Database using PHP
தரவுத்தளத்தில் பதிவேட்டில் தகவல்களை சேர்ப்பது மிகவும் எளிமையானது. இதற்கும் mysql_query() function பயன்படுத்திக்கொள்ளலாம். SQL Query யை மட்டும் Insert Query யாக மாற்ற வேண்டியதுதான்.
[code lang=”php”]
<?php
$dbhandle = mysql_connect(‘localhost’,’root’, ‘password’); //servername, username, password of user
if($dbhandle) {
echo "Successfully Connected!<br />";
$db = mysql_select_db(‘phptest’);
$insert_query = "insert into customer(name, email, mobileno) values( ‘KATHIRVEL’, ‘linuxkathirvel.info@gmail.com‘, ‘9900990099’)";
echo $query;
$select_query = "select * from customer";
$query_insert = mysql_query($insert_query, $dbhandle);
$query_select = mysql_query($select_query, $dbhandle);
if($query_insert) {
echo "Successfully Inserted!<br />";
}
else {
echo "Unable to perform inset query!<br />";
}
if(!$query_select) {
echo "Unable to perform query!<br />";
}
else {
while( $result_row = mysql_fetch_array($query_select, MYSQL_ASSOC)) {
print_r($result_row);
echo "<br />";
}
}
}
mysql_close($dbhandle);
?>
[/code]
Using PHP to get Information about a MySQL Database
MySQL தரவுத்தளத்தினுடைய தகவல்களைப் பெறுவதற்கென PHP பல்வேறு பயனுள்ள functions களைக் கொண்டுள்ளது. ஒரு அட்டவணையில் இருக்கும் fields களின் பட்டியல்களைப் பெறுவதற்கு mysql_list_fields() function பயன்படுகிறது. தரவுத்தளத்தின் பெயர், அட்டவணையின் பெயர், mysql_connect() function -னிலிருந்து கிடைத்த தகவல் ஆகிய மூன்று arguments களை உள்ளீடாக இந்த function பெற்றுக்கொள்கிறது.
அட்டவணையில் இருக்கும் fields களின் எண்ணிக்கையைப் பெறுவதற்கு mysql_num_fields() funciton பயன்படுகிறது. இந்த function mysql_list_field() function மூலமாக கிடைக்கும் resource identifier ஐ argument ஆக எடுத்துக்கொள்கிறது.
ஒருமுறை mysql_list_fields() funtion லிருந்து resource identifier ஐ நாம் பெற்றுவிட்டால் அதன்பின் அட்டவணையின் ஒவ்வொரு field ஐப் பற்றிய தகவல்களையும் பெறுவதற்கு mysql_field_name(), mysql_field_type(), mysql_field_len() போன்ற function களைப் பயன்படுத்திக்கொள்ளலாம்.
[code lang=”php”]
<?php
$dbhandle = mysql_connect(‘localhost’,’root’, ‘password’); //servername, username, password of user
if($dbhandle) {
echo "Successfully Connected!<br />";
$db = mysql_select_db(‘phptest’);
}
// Obtain the Database Information
$table_fields_list = mysql_list_fields(‘phptest’, ‘customer’, $dbhandle);
$table_no_of_fields = mysql_num_fields($table_fields_list);
for($i=0; $i<$table_no_of_fields; $i++) {
echo ‘<b>Field Name:</b> ‘. mysql_field_name($table_fields_list, $i). " – ";
echo ‘<b>Field Type:</b> ‘. mysql_field_type($table_fields_list, $i). " – ";
echo ‘<b>Field Length:</b> ‘. mysql_field_len($table_fields_list, $i);
echo "<br />";
}
mysql_close($dbhandle);
?>
[/code]
இரா.கதிர்வேல் – linuxkathirvel.info@gmail.com