know yourselves. information, computer, 7 wonders, various.

Saturday, October 22, 2016

php_mysql_part7_Log-in পেজ তৈরী






Log-in  পেজ তৈরী
এখন আমরা Login  নামে একটি ফাইল তৈরী করবো। এটিতে একটি ফর্ম থাকবে। ইউজাররা তাদের Name Password লিখে Log-in করবে। এজন্য আমরা logincheck.php নামে আরও একটি ফাইল তৈরী করে php কোডিং দ্বারা ইউজারের দেওয়া Name Password কে database এর সাথে মিলিয়ে দেখবে। নতুবা আবার Log-in পেজে ফিরিয়ে দেবে।  এজন্য logincheck পেজে session তৈরী করতে হবে। ইউজার যখন এক পেজ থেকে অন্য পেজে যাবে তখন session শুরু হবে। কোন নির্দিষ্ট পেজ রেসটিক্স্ট (নিয়ন্ত্রন) করতেও এই session দরকার পরবে। Part-1 বইতে php session নিয়ে বিসত্মারিত আলোচনা করা আছে। চলুন Login.php  ফাইল তৈরী করা যাক।
Header.php ফাইল এডিট করা
Include সাব ফোল্ডার থেকে header.php  ফাইলটি খুলুন। line নম্বর 14 তে herf = “ ” এর কোটেশনের মধ্যে Login.php  ফাইলটি অ্যাসাইন করে দিন । ফাইলটি সেভ করুন।

Coading login.php
<?php
     include ("include/header.php");
?>
    
<html>
<head>
<title>Log in Page</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<br />
<br />
<font color="green">Type Your Name And Password</font>
<form method="post" action="logincheck.php">
  Name   <input type="text" name="name" id ="name"/>
  Password    <input type="password" name="password"  id="password"/>
           <input type="submit"/>
</form>

<br /> <font face="Virdana" color="red">After register You have to login first.
if yuo are logged in . you will get some extra facalities. </font><br />
<ul>
<li> Such as </li><li> Such as </li><li> Such as </li><li> Such as </li>
</ul>
    
 <?php
     include ("include/footer.php");
?>
 

নিচের ছবিটি লক্ষ্য করুন।


ব্যাখ্যা: দেখুন প্রথম ও শেষ ৩ লাইনে header footer php ফাইলকে include করা হয়েছে। line 5 থেকে line 9 পর্যমত্ম HTML এর নরম্যাল কোডিং।   line 11 line 12 তে font এর color এবং Name Password টাইপের কথা বলা আছে। line 14 যথারীতি php POST মেথড সংযুক্ত করা হয়েছে এবং Action কী-ওর্য়াডে  logincheck.php ফাইলকে অ্যাসাইন করা হয়েছে। logincheck.php ফাইলে আমরা অন্যান্য php কোড ও Session সংযুক্ত করবো। এরপর Text Password টাইপের ২টি Text ফিল্ড ও একটি Submit বাটন নেওয়া হয়েছে। Form এর শেষে কিছু Text ম্যাসেজ দেওয়া হয়েছে।

Logincheck.php  ফাইল তৈরী করা

আমরা প্রথমে logincheck.php ফাইলে একটি SESSION শুরু করবো। পরে database, table এর সাথে সংযোগ স্থাপন, কুয়েরি করা, Variable এর মধ্যে data রাখা, মিলিয়ে দেখা ইত্যাদি কোড সংযোগ করবো।
Session শুরু করার কোড খুবই সহজ নিচের কোড গুলি দেখুন, খুবই সহজ এখানে ৯টি লাইনের কোড আছে।

প্রথম ৩ লাইনে php ট্যাগের মধ্যে Session শুরু করার জন্য Session-start ( ); ভেরিয়েবল দেওয়া হয়েছে।
পরবর্তী লাইনে আবার একটি php ট্যাগ শুরু করে localhost এর জন্য $host, $username $password দেওয়া হয়েছে। আমাদের MySql এ কোন Password নাই বলে ভেরিয়েবলে ফাঁকা ২টি ডাবল কোটেশন দেওয়া হয়েছে। এরপর $db_name MySql এ আমরা যে ডাটাবেজে ডাটা রেখেছি সেটির নাম mydata db_name অংশে mydata তে অবস্থিত টেবিলের নামকে assign করা হয়েছে। কোডিং এর পরবর্তী অংশের ছবি দেখুন।

Line 12 line 13 তে MySql-connect, MySql-select_db কমান্ডের মাধ্যমে database table  এর সাথে কানেক্ট করা হয়েছে।  MySql_select_db তে database হিসাবে “$db_name” দেওয়া হয়েছে কারণ $db_name ভেরিয়েবলের মধ্যে database এর নাম ‘mydata’ আগেই line নম্বর ৪ এ দেওয়া আছে, পরবর্তী ২টি লাইনে $ myuser name $ my passward নতুন ২ টি ভেরিয়েবল এবং $ post মেথডের মাধ্যমে from এর name password ফিল্ডের মধ্যের data $sql  ভেরিয়েলে রাখা হয়। এবং পরের লাইনে এখান থেকে প্রাপ্ত data কুয়েরী স্থানামত্মর করার জন্য ভেরিয়েবলের মধ্যে করে ব্যবহার করতে হয়।যেমন বাজার করার পর ঝুলা বা ব্যাগের করে আনতে হয়। এবার আবারও result নামে একটি ভেরিয়েবলের মধ্যে sql এর ডাটা ২টি কে mysql এর মধ্যে রক্ষিত ডাটা কুয়েরী বা পরীক্ষা করে রাখা হয়।$Count দ্বারা Rowতে রক্ষিত data অবশ্যই Row No-1এ রক্ষিত data সংরক্ষন করা হয়।

কোডিং এর শেষ অংশে ছবি দেখুন

এখানে line নাম্বার 26 একটি if …else loop দিয়ে প্রোগ্রামিং শুরু হয়েছে। এবং ভেরিয়েবল $count যদি Row নম্বর 1 পায় তবে fetch-arrary ও মাধ্যমে Result টি অর্থাৎ Row-1 এর রেজাল্ট মিলাবে। এখানে ২টি data থাকবে name password এটি সে database থেকে আসবে এবং Form এর ডাটার সাথে মিলবে। এখন SESSION এর একটি নাম দিতে হবে কারণ session টি আমরা বারবার ব্যবহার করবো।
এজন্য line নম্বর 30 $SESSION ভেরিয়েবলে নাম দেওয়া হয়েছে নিচের মত
$-SESSION [‘bappi’] =$row [‘name’]; সুতরাং এখানে আরও নাম দিয়ে password বা অন্য যে কোন Global Variable রাখা যেতে পরে আমরা $-SESSION [‘email’]= $row [‘email’];
ব্যবহার করবো ইউজারকে একটি mail পাঠানোর জন্য, আপাতত দরকার নাই। যাই হোক সবকিছু মিললে
line 31 এর কোড header(“location:my Index-final.php”)}খুলবে।
আর যদি ঠিক না থাকে পরবর্তী ২ লাইন

else{
Header(“location:login.php”);
}?>

এর কোডিং অনুসারে আবার login.php ফাইল খুলবে।
Header.php ফাইলে session সংযোগ
দেখুন আমাদের প্রতিটি php ফাইলে header.php ও footer.php সংযোগ করা আছে। কোন পেজ যখন load হয় তখন প্রথমেই header. Php ফাইলটি open হয়। এজন্য header.php ফাইলের শুরুতে seassion শুরু করতে হবে। এজন্য php ট্যাবের মধ্যে session-start ( ); নামের একটি ফাংশন যোগ করলেই হবে। include  ফোল্ডার থেকে header.php খুলে নিচের মত ৩ লাইন কোড সংযোগ করুন।


Session কে call করা
আমাদের তৈরী করা session  কে যে কোন পেজে call করে দেখা যায়। session ঠিক হয়েছে কিনা বা ইউজার ঠিকমত login হলো কিনা দেখা যাবে। আমরা login check.php ফাইলের মাধ্যমে ইউজার login করলেই my Index-final.php ফাইল বা home  page আসবে। এজন্য আমরা home পেজে বা My index_final. php ফাইলে session call করার কোডিং লিখবো। এখানে php ট্যাগের মধ্যে মাত্র ২ টি echo কমান্ড ব্যবহার করবো । এর প্রথম echo তে মাত্র একটি ম্যাসেজ ডিসপ্লে করানো হয়েছে এবং দ্বিতীয় echo  তে কী-ওয়ার্ডের সাথে নাম সহ session ফাংশনটি লেখা আছে। নিশ্চয় মনে আছে আমরা session এর নাম দিয়েছিলাম bappi এবং কোডিং ছিল $ SESSION [‘bappi’]  সুতরাং প্রথম <div> এর মধ্যে একদম শেষ লাইনে নিচের মত কোডিং করুন।

Coading for call SESSION
<?php
     echo "<font face='Verdana' size='4' color=red>
     <b>Welcome our site $name </b></font><br />";
     echo $_SESSION['bappi'];
?>
ফলাফল দেখা
এখন নিচের মত ডাটা দিয়ে submit বাটনে ক্লিক করুন বা login করুন।

এখন home পেজে লক্ষ্য করুন session call  করা হয়েছে।



Previous Post                                                                                           Next Post

  বিস্তারিত জানতে নিচের বইটি সংগরহ করে নিন।

Book Name: Mastering Microsoft  Word
Writer: Bappi Ashraf
Published By: Gyankosh Prokashani
Amount of Pages: 464
First Publish: October-2004
Last Edition: We've February-2015 edition. Future edition may be existed!
Book Price: BDT 350 (30% Discount)
 The writer of this book has told that he has written this book with the concept of "teach yourself". On the other hand, Web Design is a thing which is interesting to learn. He has also told that the book is full of fan and enjoyment so that a person can learn Web Design by himself by playing with the example projects of this book.  Book's CD Link below... 

 cd