Difference between revisions of "PHP-and-MySQL/C4/User-Login-Part-2/Bengali"
From Script | Spoken-Tutorial
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{|Border=1 | {|Border=1 | ||
− | + | |'''Time''' | |
− | + | |'''Narration''' | |
|- | |- | ||
− | | | + | |00:00 |
|দ্বিতীয় ভাগে আপনাকে স্বাগত । এখানে শেখানো হবে কিভাবে "login dot php" পৃষ্ঠাকে পরিবর্তন করে ডেটাবেস সংযোগ করা যায় এবং কিভাবে username এবং পাসওয়ার্ড ডেটাবেস-এর সাথে পরীক্ষা করা যায় । | |দ্বিতীয় ভাগে আপনাকে স্বাগত । এখানে শেখানো হবে কিভাবে "login dot php" পৃষ্ঠাকে পরিবর্তন করে ডেটাবেস সংযোগ করা যায় এবং কিভাবে username এবং পাসওয়ার্ড ডেটাবেস-এর সাথে পরীক্ষা করা যায় । | ||
|- | |- | ||
− | | | + | |00:14 |
|এখন আমরা ডেটাবেস-এর সাথে সংযুক্ত রয়েছি । | |এখন আমরা ডেটাবেস-এর সাথে সংযুক্ত রয়েছি । | ||
|- | |- | ||
− | | | + | |00:18 |
|Refresh করুন এবং username এবং password পুনরায় পাঠান, দেখুন এখন কোনো ত্রুটি নেই। | |Refresh করুন এবং username এবং password পুনরায় পাঠান, দেখুন এখন কোনো ত্রুটি নেই। | ||
|- | |- | ||
− | | | + | |00:24 |
− | |আমি এই ত্রুটি-টির কথা বলছি । | + | |আমি এই ত্রুটি-টির কথা বলছি । এবং আমরা দেখেছি, যদি আমরা তথ্য না লিখি, তাহলেও ত্রুটি ঘটে । |
|- | |- | ||
− | | | + | |00:28 |
− | + | ||
− | + | ||
− | + | ||
|এখন, প্রথমে আমরা একটি query তৈরী করব । | |এখন, প্রথমে আমরা একটি query তৈরী করব । | ||
|- | |- | ||
− | | | + | |00:36 |
|যদি আপনি "mysql" বা অন্য কোনো structured query language আগে ব্যবহার করে থাকেন, তাহলে আপনি জানবেন যে আপনি ডেটাবেস-কে প্রশ্ন করতে পারেন । | |যদি আপনি "mysql" বা অন্য কোনো structured query language আগে ব্যবহার করে থাকেন, তাহলে আপনি জানবেন যে আপনি ডেটাবেস-কে প্রশ্ন করতে পারেন । | ||
|- | |- | ||
− | | | + | |00:43 |
|মনে হয় Microsoft Access -এ | |মনে হয় Microsoft Access -এ | ||
|- | |- | ||
− | | | + | |00:46 |
|তাহলে এখানে লেখা যাক "SELECT", বা লেখা যাক "SELECT *" কারণ আমাদের ID, username এবং password সবকটি-ই লাগবে । | |তাহলে এখানে লেখা যাক "SELECT", বা লেখা যাক "SELECT *" কারণ আমাদের ID, username এবং password সবকটি-ই লাগবে । | ||
|- | |- | ||
− | | | + | |00:54 |
− | |আমার মনে হয় না id লাগবে কিন্তু "SELECT *" | + | |আমার মনে হয় না id লাগবে কিন্তু "SELECT *" এমনি তেই সব তথ্য দিয়ে দেবে । |
|- | |- | ||
− | | | + | |00:59 |
|লেখা যাক "SELECT * FROM" মনে হয় এর নাম ছিল, users । একবার দেখে নেওয়া যাক । | |লেখা যাক "SELECT * FROM" মনে হয় এর নাম ছিল, users । একবার দেখে নেওয়া যাক । | ||
|- | |- | ||
− | | | + | |01:04 |
|হ্যা, users । তাহলে "SELECT * users" এবং এখানে লিখুন "WHERE username" যেটি এখানে লেখা থাকবে । | |হ্যা, users । তাহলে "SELECT * users" এবং এখানে লিখুন "WHERE username" যেটি এখানে লেখা থাকবে । | ||
|- | |- | ||
− | | | + | |01:20 |
|তাহলে আমরা লিখব "WHERE username সমান" সেই "username" যেটি লেখা হয়েছে । | |তাহলে আমরা লিখব "WHERE username সমান" সেই "username" যেটি লেখা হয়েছে । | ||
|- | |- | ||
− | | | + | |01:30 |
− | |এখন যদি সেই "username" -এর অস্তত্ব না থাকে, আমাদের একটি error message tদেখাতে হবে যাতে লেখা থাকবে "This user doesn’t exist" | + | |এখন যদি সেই "username" -এর অস্তত্ব না থাকে, আমাদের একটি error message tদেখাতে হবে যাতে লেখা থাকবে "This user doesn’t exist" |
|- | |- | ||
− | | | + | |01:37 |
− | |তাহলে আরেকটি ফাংশন | + | |তাহলে আরেকটি ফাংশন "mysql num rows" নামে একটি mysql function ব্যবহার করা যাক । |
|- | |- | ||
− | | | + | |01:46 |
|এটি, ডেটাবেস-এ query চালানোর ফলে পাওয়া সারিগুলির সংখ্যার সমান হয় । | |এটি, ডেটাবেস-এ query চালানোর ফলে পাওয়া সারিগুলির সংখ্যার সমান হয় । | ||
|- | |- | ||
− | | | + | |01:53 |
|তাহলে লেখা যাক "numrows সমান mysql_num_rows" এবং বন্ধনীর মধ্যে আমাদের query-এর নাম রয়েছে, সেই variable যেখানে আমরা query function সংরক্ষণ করেছি । | |তাহলে লেখা যাক "numrows সমান mysql_num_rows" এবং বন্ধনীর মধ্যে আমাদের query-এর নাম রয়েছে, সেই variable যেখানে আমরা query function সংরক্ষণ করেছি । | ||
|- | |- | ||
− | | | + | |02.08 |
|এখন যদি আমরা সারিসংখ্যা echo করি, তাহলে আপনি দেখতে পাবেন ১ কারণ আমাদের এখন একটি সারি রয়েছে। | |এখন যদি আমরা সারিসংখ্যা echo করি, তাহলে আপনি দেখতে পাবেন ১ কারণ আমাদের এখন একটি সারি রয়েছে। | ||
|- | |- | ||
− | | | + | |02.16 |
|ক্লিক করা যাক insert এবং তথ্যর আরেকটি সারি যোগ করা যাক, উদাহরণস্বরূপ, আরেকটি username এবং আরেকটি password । | |ক্লিক করা যাক insert এবং তথ্যর আরেকটি সারি যোগ করা যাক, উদাহরণস্বরূপ, আরেকটি username এবং আরেকটি password । | ||
|- | |- | ||
− | | | + | |02:26 |
− | |এটি এখন করে দেখা যাক । | + | |এটি এখন করে দেখা যাক । আমি এটিকে পরে পরীক্ষা করব । লেখা যাক, username হলো "Kyle" এবং এবার password হলো "123" । |
|- | |- | ||
− | | | + | |02:38 |
|ঠিকাছে, করে দেখা যাক । কি হল। হ্যা এখানে ওটি দেখা যাচ্ছে। | |ঠিকাছে, করে দেখা যাক । কি হল। হ্যা এখানে ওটি দেখা যাচ্ছে। | ||
|- | |- | ||
− | | | + | |02:53 |
|তাহলে আমরা পেয়েছি "Alex" এবং "Kyle". | |তাহলে আমরা পেয়েছি "Alex" এবং "Kyle". | ||
|- | |- | ||
− | | | + | |02:55 |
|দেখুন id গুলি নিজে থেকে বেড়ে গেছে । | |দেখুন id গুলি নিজে থেকে বেড়ে গেছে । | ||
|- | |- | ||
− | | | + | |02:58 |
|আপনি এখানে আমাদের দুটি password এবং দুটি username দেখতে পাচ্ছেন । | |আপনি এখানে আমাদের দুটি password এবং দুটি username দেখতে পাচ্ছেন । | ||
|- | |- | ||
− | | | + | |03:02 |
|এখন এটি refresh করে দেখা যাক কি পাই । | |এখন এটি refresh করে দেখা যাক কি পাই । | ||
|- | |- | ||
− | | | + | |03.06 |
|ও একটা ব্যাপার আছে, এটি হল সম্পূর্ণ পরীক্ষাটা। | |ও একটা ব্যাপার আছে, এটি হল সম্পূর্ণ পরীক্ষাটা। | ||
|- | |- | ||
− | | | + | |03:10 |
|এটি ১ দেখিয়ে ছিল কারণ আমি যদি প্রত্যেকটি ইউসারকে নির্বাচন করি এবং তারপর সারির সংখ্যা গণনা করি তাহলে মান বেড়ে যাবে। | |এটি ১ দেখিয়ে ছিল কারণ আমি যদি প্রত্যেকটি ইউসারকে নির্বাচন করি এবং তারপর সারির সংখ্যা গণনা করি তাহলে মান বেড়ে যাবে। | ||
|- | |- | ||
− | | | + | |03:18 |
|back করে refresh করা যাক এবং এখন মান হিসাবে ২ দেখা যাচ্ছে কারণ এখন ২ টি সারি রয়েছে । | |back করে refresh করা যাক এবং এখন মান হিসাবে ২ দেখা যাচ্ছে কারণ এখন ২ টি সারি রয়েছে । | ||
|- | |- | ||
− | | | + | |03:22 |
|যদি আমি লিখি "SELECT username সমান আমার username" তাহলে আমি অবশ্যই আমার আমার username এর সারিটিকে নির্বাচন করছি। | |যদি আমি লিখি "SELECT username সমান আমার username" তাহলে আমি অবশ্যই আমার আমার username এর সারিটিকে নির্বাচন করছি। | ||
|- | |- | ||
− | | | + | |03:34 |
|সাধারনতঃ কোনো website-এ username পুনরাবৃত্তি হয়না । | |সাধারনতঃ কোনো website-এ username পুনরাবৃত্তি হয়না । | ||
|- | |- | ||
− | | | + | |03:40 |
− | | | + | |ঠিককাছে, তাহলে এটি হয়ে গেছে, কটি সারি রয়েছে সেটি জানার উদ্দেশ্য কি ? |
|- | |- | ||
− | | | + | |03:47 |
− | |আসলে | + | |আসলে উদ্দেশ্যটি হলো, আমরা বলতে পারি "if num_rows সমান zero", তাহলে এর অর্থ আমরা .. মাফ করবেন, যদি "my num_rows শূন্য-এর সমান না হয়", তাহলে আমরা লগইন করার জন্য প্রয়োজনীয় কোড চালাতে পারি । |
|- | |- | ||
− | | | + | |04.01 |
− | | | + | |না হলে, মাফ করবেন "else", আমাদের echo out করতে হবে, মাফ করবেন "else die" । আমরা বার্তা হিসাবে দেব "That user doesn’t exist" । |
|- | |- | ||
− | | | + | |04:16 |
|তাহলে আমরা করছি কি, আমরা যেখানে username দিয়েছে, সেখান থেকে ফেরত পাওয়া সারি-টিকে পরিখা করছি । | |তাহলে আমরা করছি কি, আমরা যেখানে username দিয়েছে, সেখান থেকে ফেরত পাওয়া সারি-টিকে পরিখা করছি । | ||
|- | |- | ||
− | | | + | |04:25 |
|যদি এটি শূন্য-র সমান না হয় , আমরা login করতে আমাদের কোড ব্যবহার করতে পারি । | |যদি এটি শূন্য-র সমান না হয় , আমরা login করতে আমাদের কোড ব্যবহার করতে পারি । | ||
|- | |- | ||
− | | | + | |04:29 |
− | |নাহলে আমরা লিকবো die এবং " | + | |নাহলে আমরা লিকবো die এবং "That username doesn’t exist". |
|- | |- | ||
− | | | + | |04:33 |
|তাহইলে এটি হবে সমান ১,২,৩,৪ এবং এভাবে চলবে । | |তাহইলে এটি হবে সমান ১,২,৩,৪ এবং এভাবে চলবে । | ||
|- | |- | ||
− | | | + | |04:38 |
|মাফ কবেন এটি হবে সমান ... | |মাফ কবেন এটি হবে সমান ... | ||
|- | |- | ||
− | | | + | |04:40 |
|যদি এটি শূন্য-এ সমান না হয়, তাহলে এটি কোনো একটির সমান হবে । | |যদি এটি শূন্য-এ সমান না হয়, তাহলে এটি কোনো একটির সমান হবে । | ||
|- | |- | ||
− | | | + | |04:44 |
|এবং এটি যদি কোনো একটির সমান হয়, তাহলে এখানের কোড-টি execute হবে । | |এবং এটি যদি কোনো একটির সমান হয়, তাহলে এখানের কোড-টি execute হবে । | ||
|- | |- | ||
− | | | + | |04:47 |
|এটি শূন্য হবার অর্থ, আসলে কোনো result -ই ফেরত আসেনি । | |এটি শূন্য হবার অর্থ, আসলে কোনো result -ই ফেরত আসেনি । | ||
|- | |- | ||
− | | | + | |04:52 |
|আমি এটিকে পুনরায় পাঠাব । back করা যাক । | |আমি এটিকে পুনরায় পাঠাব । back করা যাক । | ||
|- | |- | ||
− | | | + | |04:57 |
|এখন "echo num_rows" মুছে ফেলা যাক । | |এখন "echo num_rows" মুছে ফেলা যাক । | ||
|- | |- | ||
− | | | + | |05:05 |
|ঠিকাছে । এখন আমাদের মূল পৃষ্ঠায় ফিরে যাওয়া যাক এবং "Alex" ও "abc" দিয়ে লগইন করা যাক; এই মুহুর্তে password -এর প্রয়োজন নেই। . | |ঠিকাছে । এখন আমাদের মূল পৃষ্ঠায় ফিরে যাওয়া যাক এবং "Alex" ও "abc" দিয়ে লগইন করা যাক; এই মুহুর্তে password -এর প্রয়োজন নেই। . | ||
|- | |- | ||
− | | | + | |05:13 |
|কিছু হয়নি কারণ কোনো error দেখা যাচ্ছে না । | |কিছু হয়নি কারণ কোনো error দেখা যাচ্ছে না । | ||
|- | |- | ||
− | | | + | |05:15 |
|এখন, উদাহরণস্বরপ, Billy, ব্যবহার করা যাক এবং password লেখা যাক, ক্লিক করুন login । | |এখন, উদাহরণস্বরপ, Billy, ব্যবহার করা যাক এবং password লেখা যাক, ক্লিক করুন login । | ||
|- | |- | ||
− | | | + | |05:21 |
|"That user doesn’t exist!" কারণ কোনো row তেই username সমান Billy নেই । | |"That user doesn’t exist!" কারণ কোনো row তেই username সমান Billy নেই । | ||
|- | |- | ||
− | | | + | |05:26 |
|তাহলে দেখা যাচ্ছে এটি কাজ করছে । | |তাহলে দেখা যাচ্ছে এটি কাজ করছে । | ||
|- | |- | ||
− | | | + | |05:28 |
|পূর্বাবস্থায় ফিরে যাওয়া যাক । | |পূর্বাবস্থায় ফিরে যাওয়া যাক । | ||
|- | |- | ||
− | | | + | |05:31 |
|তাহলে "Alex" এবং আমাদের পাসওয়ার্ড হলো "abc" । | |তাহলে "Alex" এবং আমাদের পাসওয়ার্ড হলো "abc" । | ||
|- | |- | ||
− | | | + | |05:37 |
|এখন login-এর কোড করা যাক । | |এখন login-এর কোড করা যাক । | ||
|- | |- | ||
− | | | + | |05:39 |
− | | | + | |login করতে, আমাদের পাসওয়ার্ড পরীক্ষা করতে হবে । |
|- | |- | ||
− | | | + | |05:42 |
|তাহলে এই পাসওয়ার্ড-টি পেতে, আমি একটি ফাংশন ব্যবহার করব । | |তাহলে এই পাসওয়ার্ড-টি পেতে, আমি একটি ফাংশন ব্যবহার করব । | ||
|- | |- | ||
− | | | + | |05:46 |
|মাফ করবেন, ফাংশন নয় , আমি ব্যবহার করব ...... একটি loop এবং সেই loop টি হবে "while" loop । | |মাফ করবেন, ফাংশন নয় , আমি ব্যবহার করব ...... একটি loop এবং সেই loop টি হবে "while" loop । | ||
|- | |- | ||
− | | | + | |05:52 |
− | |আমি এখানে একটি variable name লিখব । আমি এটিকে বলব "row" এটি সমান হবে "mysql"..... " । mysql_ একটি সারিকে একটি array হিসাবে নিয়ে আসে । | + | |আমি এখানে একটি variable name লিখব । আমি এটিকে বলব "row" এটি সমান হবে "mysql"..... " । mysql_ একটি সারিকে একটি array হিসাবে নিয়ে আসে । ঠিক কাছে? |
|- | |- | ||
− | | | + | |06:11 |
|তাহলে আমি সংক্ষেপে লিখব "mysqul_fetch_assoc" । | |তাহলে আমি সংক্ষেপে লিখব "mysqul_fetch_assoc" । | ||
|- | |- | ||
− | | | + | |06:22 |
|এটি-ই আমার query হবে । তাহলে ওখানে আমাদের query তৈরী হয়ে গেছে । | |এটি-ই আমার query হবে । তাহলে ওখানে আমাদের query তৈরী হয়ে গেছে । | ||
|- | |- | ||
− | | | + | |06:28 |
|এখান থেকে, আমরা প্রত্যেকটি কলামের তথ্যে পাচ্ছি এবং সেগুলিকে "row" নাম একটি array তে যোগ করছি । | |এখান থেকে, আমরা প্রত্যেকটি কলামের তথ্যে পাচ্ছি এবং সেগুলিকে "row" নাম একটি array তে যোগ করছি । | ||
|- | |- | ||
− | | | + | |06:40 |
|তাহলে while loop-এ অবশ্যই বন্ধনী থাকবে, বন্ধনিগুলি এবং কিছু variable যোগ করা যাক । | |তাহলে while loop-এ অবশ্যই বন্ধনী থাকবে, বন্ধনিগুলি এবং কিছু variable যোগ করা যাক । | ||
|- | |- | ||
− | | | + | |06:45 |
|আমি বলব "db username", যেটি হলো ডেটাবেস থেকে পাওয়া username, সমান "row" এবং এই হলো সারির নাম, "username". | |আমি বলব "db username", যেটি হলো ডেটাবেস থেকে পাওয়া username, সমান "row" এবং এই হলো সারির নাম, "username". | ||
|- | |- | ||
− | | | + | |06:55 |
− | |তাহলে এখানে যেমন দেখা যাচ্ছে, | + | |তাহলে এখানে যেমন দেখা যাচ্ছে, এখানে এটি হলো সারি নাম । |
|- | |- | ||
− | | | + | |06:59 |
− | |তাহলে এটি যদি তথ্যর array হয়, | + | |তাহলে এটি যদি তথ্যর array হয়, তাহলে এগুলির প্রত্যেকটি হবে id, username এবং password । |
|- | |- | ||
− | | | + | |07:06 |
|আমরা 0,1,2 ব্যবহার করছি না । আমি নিশ্চিত নই ওগুলি কাজ করে কিনা । | |আমরা 0,1,2 ব্যবহার করছি না । আমি নিশ্চিত নই ওগুলি কাজ করে কিনা । | ||
|- | |- | ||
− | | | + | |07:10 |
|এখন আমরা এটিকে সরল রাখব এবং আমরা আমাদের কলাম-টিকে সরাসরি reference করব । | |এখন আমরা এটিকে সরল রাখব এবং আমরা আমাদের কলাম-টিকে সরাসরি reference করব । | ||
|- | |- | ||
− | | | + | |07:20 |
|তাহলে database username হবে "row" এবং যেহেতু এটি একটি array যেটি আমাদের query-এর এই ফাংশন-টি ব্যবহার করছে । | |তাহলে database username হবে "row" এবং যেহেতু এটি একটি array যেটি আমাদের query-এর এই ফাংশন-টি ব্যবহার করছে । | ||
|- | |- | ||
− | | | + | |07:26 |
|এরপর আমরা লিখব "db password সমান row" এবং তারপর আমাদের পাসওয়ার্ড । | |এরপর আমরা লিখব "db password সমান row" এবং তারপর আমাদের পাসওয়ার্ড । | ||
|- | |- | ||
− | | | + | |07:38 |
|তাহলে এরপর আমরা echo out করতে পারি .... | |তাহলে এরপর আমরা echo out করতে পারি .... | ||
|- | |- | ||
− | | | + | |07:43 |
|না, আমাদের db username and password -এর মানগুলি echo out করার প্রয়োজন নেই যদি না আমরা unless we want to run into errors. | |না, আমাদের db username and password -এর মানগুলি echo out করার প্রয়োজন নেই যদি না আমরা unless we want to run into errors. | ||
|- | |- | ||
− | | | + | |07:49 |
|আমরা আগে থেকেই জানি এগুলির মান কি । আমরা এগুলিকে ডেটাবেস-এ দেখেছি । | |আমরা আগে থেকেই জানি এগুলির মান কি । আমরা এগুলিকে ডেটাবেস-এ দেখেছি । | ||
|- | |- | ||
− | | | + | |07:51 |
|এখন আমরা কিছু পরীক্ষা করব । তাহলে পরীক্ষা করা যাক এগুলি মিলছে কিনা । | |এখন আমরা কিছু পরীক্ষা করব । তাহলে পরীক্ষা করা যাক এগুলি মিলছে কিনা । | ||
|- | |- | ||
− | | | + | |08:00 |
|"if" বিবৃতি ব্যবহার করলে এটি খুব-ই সোজা । | |"if" বিবৃতি ব্যবহার করলে এটি খুব-ই সোজা । | ||
|- | |- | ||
− | | | + | |08:04 |
|যদি আমাদের username, db username -এর সমান হয় এবং আমাদের password, db password-এর সমান হয়, তাহলে আমরা বলব সব সঠিক আছে । | |যদি আমাদের username, db username -এর সমান হয় এবং আমাদের password, db password-এর সমান হয়, তাহলে আমরা বলব সব সঠিক আছে । | ||
|- | |- | ||
− | | | + | |08:19 |
− | | | + | |না হলে, আমরা বলব এগুলিতে ভুল আছে । |
|- | |- | ||
− | | | + | |08:22 |
|আমরা এই বন্ধনিগুলি সরিয়ে দেব কারণ এখানে একটিমাত্র লাইন রয়েছে । তাহলে echo "Incorrect password!" । এটিকে এইভাবেই রেখে দিন । | |আমরা এই বন্ধনিগুলি সরিয়ে দেব কারণ এখানে একটিমাত্র লাইন রয়েছে । তাহলে echo "Incorrect password!" । এটিকে এইভাবেই রেখে দিন । | ||
|- | |- | ||
− | | | + | |08:34 |
|এবং এখানে আমরা দেখাবো "You’re in!". | |এবং এখানে আমরা দেখাবো "You’re in!". | ||
|- | |- | ||
− | | | + | |08:41 |
|ঠিকাছে, আমরা এটি এই পর্যায়-এর টিউটোরিয়াল-টি শেষ করার ঠিক আগে দেখব । | |ঠিকাছে, আমরা এটি এই পর্যায়-এর টিউটোরিয়াল-টি শেষ করার ঠিক আগে দেখব । | ||
|- | |- | ||
− | | | + | |08:46 |
|আমি প্রথমে লিখব "Alex" এবং একটি ভুল পাসওয়ার্ড লিখব "Incorrect password!" । | |আমি প্রথমে লিখব "Alex" এবং একটি ভুল পাসওয়ার্ড লিখব "Incorrect password!" । | ||
|- | |- | ||
− | | | + | |08:51 |
|এবং আমি পাসওয়ার্ড হিসাবে লিখব "abc" এবং "You’re in!". | |এবং আমি পাসওয়ার্ড হিসাবে লিখব "abc" এবং "You’re in!". | ||
|- | |- | ||
− | | | + | |08:55 |
|তাহলে আমরা এই username পরীক্ষা করে দেখে নিয়েছি এটি উপস্থিত রয়েছে । | |তাহলে আমরা এই username পরীক্ষা করে দেখে নিয়েছি এটি উপস্থিত রয়েছে । | ||
|- | |- | ||
− | | | + | |08:58 |
|We’ve checked our fields exist তাহলে আপনার username এবং পাসওয়ার্ড লিখুন । | |We’ve checked our fields exist তাহলে আপনার username এবং পাসওয়ার্ড লিখুন । | ||
|- | |- | ||
− | | | + | |09:04 |
|যদি আপনি username এবং একটি ভুল পাসওয়ার্ড লেখেন, তাহলে দেখা যাবে – "Incorrect password". | |যদি আপনি username এবং একটি ভুল পাসওয়ার্ড লেখেন, তাহলে দেখা যাবে – "Incorrect password". | ||
|- | |- | ||
− | | | + | |09:11 |
|আমরা সঠিক পাসওয়ার্ড লিখলে দেখতে পাব - "You’re in". | |আমরা সঠিক পাসওয়ার্ড লিখলে দেখতে পাব - "You’re in". | ||
|- | |- | ||
− | | | + | |09:13 |
|এবং যদি এমন username লেখা হয় যা উপস্থিত নেই, তাহলে আমরা একটি ত্রুটি দেখতে পাব যে ব্যবহারকারী উপস্থিত নেই । | |এবং যদি এমন username লেখা হয় যা উপস্থিত নেই, তাহলে আমরা একটি ত্রুটি দেখতে পাব যে ব্যবহারকারী উপস্থিত নেই । | ||
|- | |- | ||
− | | | + | |09:24 |
|এর পরবর্তী ভাগের টিউটোরিয়াল-এ আমি দেখাবো কিভাবে আপনি session তৈরী করতে পারবেন এবং আপনার পৃষ্ঠা log out করতে পারবেন । | |এর পরবর্তী ভাগের টিউটোরিয়াল-এ আমি দেখাবো কিভাবে আপনি session তৈরী করতে পারবেন এবং আপনার পৃষ্ঠা log out করতে পারবেন । | ||
|- | |- | ||
− | | | + | |09:32 |
|আমি অন্তরা এই টিউটোরিয়াল-টি অনুবাদ করেছি । ধন্যবাদ । | |আমি অন্তরা এই টিউটোরিয়াল-টি অনুবাদ করেছি । ধন্যবাদ । |
Latest revision as of 13:21, 27 February 2017
Time | Narration |
00:00 | দ্বিতীয় ভাগে আপনাকে স্বাগত । এখানে শেখানো হবে কিভাবে "login dot php" পৃষ্ঠাকে পরিবর্তন করে ডেটাবেস সংযোগ করা যায় এবং কিভাবে username এবং পাসওয়ার্ড ডেটাবেস-এর সাথে পরীক্ষা করা যায় । |
00:14 | এখন আমরা ডেটাবেস-এর সাথে সংযুক্ত রয়েছি । |
00:18 | Refresh করুন এবং username এবং password পুনরায় পাঠান, দেখুন এখন কোনো ত্রুটি নেই। |
00:24 | আমি এই ত্রুটি-টির কথা বলছি । এবং আমরা দেখেছি, যদি আমরা তথ্য না লিখি, তাহলেও ত্রুটি ঘটে । |
00:28 | এখন, প্রথমে আমরা একটি query তৈরী করব । |
00:36 | যদি আপনি "mysql" বা অন্য কোনো structured query language আগে ব্যবহার করে থাকেন, তাহলে আপনি জানবেন যে আপনি ডেটাবেস-কে প্রশ্ন করতে পারেন । |
00:43 | মনে হয় Microsoft Access -এ |
00:46 | তাহলে এখানে লেখা যাক "SELECT", বা লেখা যাক "SELECT *" কারণ আমাদের ID, username এবং password সবকটি-ই লাগবে । |
00:54 | আমার মনে হয় না id লাগবে কিন্তু "SELECT *" এমনি তেই সব তথ্য দিয়ে দেবে । |
00:59 | লেখা যাক "SELECT * FROM" মনে হয় এর নাম ছিল, users । একবার দেখে নেওয়া যাক । |
01:04 | হ্যা, users । তাহলে "SELECT * users" এবং এখানে লিখুন "WHERE username" যেটি এখানে লেখা থাকবে । |
01:20 | তাহলে আমরা লিখব "WHERE username সমান" সেই "username" যেটি লেখা হয়েছে । |
01:30 | এখন যদি সেই "username" -এর অস্তত্ব না থাকে, আমাদের একটি error message tদেখাতে হবে যাতে লেখা থাকবে "This user doesn’t exist" |
01:37 | তাহলে আরেকটি ফাংশন "mysql num rows" নামে একটি mysql function ব্যবহার করা যাক । |
01:46 | এটি, ডেটাবেস-এ query চালানোর ফলে পাওয়া সারিগুলির সংখ্যার সমান হয় । |
01:53 | তাহলে লেখা যাক "numrows সমান mysql_num_rows" এবং বন্ধনীর মধ্যে আমাদের query-এর নাম রয়েছে, সেই variable যেখানে আমরা query function সংরক্ষণ করেছি । |
02.08 | এখন যদি আমরা সারিসংখ্যা echo করি, তাহলে আপনি দেখতে পাবেন ১ কারণ আমাদের এখন একটি সারি রয়েছে। |
02.16 | ক্লিক করা যাক insert এবং তথ্যর আরেকটি সারি যোগ করা যাক, উদাহরণস্বরূপ, আরেকটি username এবং আরেকটি password । |
02:26 | এটি এখন করে দেখা যাক । আমি এটিকে পরে পরীক্ষা করব । লেখা যাক, username হলো "Kyle" এবং এবার password হলো "123" । |
02:38 | ঠিকাছে, করে দেখা যাক । কি হল। হ্যা এখানে ওটি দেখা যাচ্ছে। |
02:53 | তাহলে আমরা পেয়েছি "Alex" এবং "Kyle". |
02:55 | দেখুন id গুলি নিজে থেকে বেড়ে গেছে । |
02:58 | আপনি এখানে আমাদের দুটি password এবং দুটি username দেখতে পাচ্ছেন । |
03:02 | এখন এটি refresh করে দেখা যাক কি পাই । |
03.06 | ও একটা ব্যাপার আছে, এটি হল সম্পূর্ণ পরীক্ষাটা। |
03:10 | এটি ১ দেখিয়ে ছিল কারণ আমি যদি প্রত্যেকটি ইউসারকে নির্বাচন করি এবং তারপর সারির সংখ্যা গণনা করি তাহলে মান বেড়ে যাবে। |
03:18 | back করে refresh করা যাক এবং এখন মান হিসাবে ২ দেখা যাচ্ছে কারণ এখন ২ টি সারি রয়েছে । |
03:22 | যদি আমি লিখি "SELECT username সমান আমার username" তাহলে আমি অবশ্যই আমার আমার username এর সারিটিকে নির্বাচন করছি। |
03:34 | সাধারনতঃ কোনো website-এ username পুনরাবৃত্তি হয়না । |
03:40 | ঠিককাছে, তাহলে এটি হয়ে গেছে, কটি সারি রয়েছে সেটি জানার উদ্দেশ্য কি ? |
03:47 | আসলে উদ্দেশ্যটি হলো, আমরা বলতে পারি "if num_rows সমান zero", তাহলে এর অর্থ আমরা .. মাফ করবেন, যদি "my num_rows শূন্য-এর সমান না হয়", তাহলে আমরা লগইন করার জন্য প্রয়োজনীয় কোড চালাতে পারি । |
04.01 | না হলে, মাফ করবেন "else", আমাদের echo out করতে হবে, মাফ করবেন "else die" । আমরা বার্তা হিসাবে দেব "That user doesn’t exist" । |
04:16 | তাহলে আমরা করছি কি, আমরা যেখানে username দিয়েছে, সেখান থেকে ফেরত পাওয়া সারি-টিকে পরিখা করছি । |
04:25 | যদি এটি শূন্য-র সমান না হয় , আমরা login করতে আমাদের কোড ব্যবহার করতে পারি । |
04:29 | নাহলে আমরা লিকবো die এবং "That username doesn’t exist". |
04:33 | তাহইলে এটি হবে সমান ১,২,৩,৪ এবং এভাবে চলবে । |
04:38 | মাফ কবেন এটি হবে সমান ... |
04:40 | যদি এটি শূন্য-এ সমান না হয়, তাহলে এটি কোনো একটির সমান হবে । |
04:44 | এবং এটি যদি কোনো একটির সমান হয়, তাহলে এখানের কোড-টি execute হবে । |
04:47 | এটি শূন্য হবার অর্থ, আসলে কোনো result -ই ফেরত আসেনি । |
04:52 | আমি এটিকে পুনরায় পাঠাব । back করা যাক । |
04:57 | এখন "echo num_rows" মুছে ফেলা যাক । |
05:05 | ঠিকাছে । এখন আমাদের মূল পৃষ্ঠায় ফিরে যাওয়া যাক এবং "Alex" ও "abc" দিয়ে লগইন করা যাক; এই মুহুর্তে password -এর প্রয়োজন নেই। . |
05:13 | কিছু হয়নি কারণ কোনো error দেখা যাচ্ছে না । |
05:15 | এখন, উদাহরণস্বরপ, Billy, ব্যবহার করা যাক এবং password লেখা যাক, ক্লিক করুন login । |
05:21 | "That user doesn’t exist!" কারণ কোনো row তেই username সমান Billy নেই । |
05:26 | তাহলে দেখা যাচ্ছে এটি কাজ করছে । |
05:28 | পূর্বাবস্থায় ফিরে যাওয়া যাক । |
05:31 | তাহলে "Alex" এবং আমাদের পাসওয়ার্ড হলো "abc" । |
05:37 | এখন login-এর কোড করা যাক । |
05:39 | login করতে, আমাদের পাসওয়ার্ড পরীক্ষা করতে হবে । |
05:42 | তাহলে এই পাসওয়ার্ড-টি পেতে, আমি একটি ফাংশন ব্যবহার করব । |
05:46 | মাফ করবেন, ফাংশন নয় , আমি ব্যবহার করব ...... একটি loop এবং সেই loop টি হবে "while" loop । |
05:52 | আমি এখানে একটি variable name লিখব । আমি এটিকে বলব "row" এটি সমান হবে "mysql"..... " । mysql_ একটি সারিকে একটি array হিসাবে নিয়ে আসে । ঠিক কাছে? |
06:11 | তাহলে আমি সংক্ষেপে লিখব "mysqul_fetch_assoc" । |
06:22 | এটি-ই আমার query হবে । তাহলে ওখানে আমাদের query তৈরী হয়ে গেছে । |
06:28 | এখান থেকে, আমরা প্রত্যেকটি কলামের তথ্যে পাচ্ছি এবং সেগুলিকে "row" নাম একটি array তে যোগ করছি । |
06:40 | তাহলে while loop-এ অবশ্যই বন্ধনী থাকবে, বন্ধনিগুলি এবং কিছু variable যোগ করা যাক । |
06:45 | আমি বলব "db username", যেটি হলো ডেটাবেস থেকে পাওয়া username, সমান "row" এবং এই হলো সারির নাম, "username". |
06:55 | তাহলে এখানে যেমন দেখা যাচ্ছে, এখানে এটি হলো সারি নাম । |
06:59 | তাহলে এটি যদি তথ্যর array হয়, তাহলে এগুলির প্রত্যেকটি হবে id, username এবং password । |
07:06 | আমরা 0,1,2 ব্যবহার করছি না । আমি নিশ্চিত নই ওগুলি কাজ করে কিনা । |
07:10 | এখন আমরা এটিকে সরল রাখব এবং আমরা আমাদের কলাম-টিকে সরাসরি reference করব । |
07:20 | তাহলে database username হবে "row" এবং যেহেতু এটি একটি array যেটি আমাদের query-এর এই ফাংশন-টি ব্যবহার করছে । |
07:26 | এরপর আমরা লিখব "db password সমান row" এবং তারপর আমাদের পাসওয়ার্ড । |
07:38 | তাহলে এরপর আমরা echo out করতে পারি .... |
07:43 | না, আমাদের db username and password -এর মানগুলি echo out করার প্রয়োজন নেই যদি না আমরা unless we want to run into errors. |
07:49 | আমরা আগে থেকেই জানি এগুলির মান কি । আমরা এগুলিকে ডেটাবেস-এ দেখেছি । |
07:51 | এখন আমরা কিছু পরীক্ষা করব । তাহলে পরীক্ষা করা যাক এগুলি মিলছে কিনা । |
08:00 | "if" বিবৃতি ব্যবহার করলে এটি খুব-ই সোজা । |
08:04 | যদি আমাদের username, db username -এর সমান হয় এবং আমাদের password, db password-এর সমান হয়, তাহলে আমরা বলব সব সঠিক আছে । |
08:19 | না হলে, আমরা বলব এগুলিতে ভুল আছে । |
08:22 | আমরা এই বন্ধনিগুলি সরিয়ে দেব কারণ এখানে একটিমাত্র লাইন রয়েছে । তাহলে echo "Incorrect password!" । এটিকে এইভাবেই রেখে দিন । |
08:34 | এবং এখানে আমরা দেখাবো "You’re in!". |
08:41 | ঠিকাছে, আমরা এটি এই পর্যায়-এর টিউটোরিয়াল-টি শেষ করার ঠিক আগে দেখব । |
08:46 | আমি প্রথমে লিখব "Alex" এবং একটি ভুল পাসওয়ার্ড লিখব "Incorrect password!" । |
08:51 | এবং আমি পাসওয়ার্ড হিসাবে লিখব "abc" এবং "You’re in!". |
08:55 | তাহলে আমরা এই username পরীক্ষা করে দেখে নিয়েছি এটি উপস্থিত রয়েছে । |
08:58 | We’ve checked our fields exist তাহলে আপনার username এবং পাসওয়ার্ড লিখুন । |
09:04 | যদি আপনি username এবং একটি ভুল পাসওয়ার্ড লেখেন, তাহলে দেখা যাবে – "Incorrect password". |
09:11 | আমরা সঠিক পাসওয়ার্ড লিখলে দেখতে পাব - "You’re in". |
09:13 | এবং যদি এমন username লেখা হয় যা উপস্থিত নেই, তাহলে আমরা একটি ত্রুটি দেখতে পাব যে ব্যবহারকারী উপস্থিত নেই । |
09:24 | এর পরবর্তী ভাগের টিউটোরিয়াল-এ আমি দেখাবো কিভাবে আপনি session তৈরী করতে পারবেন এবং আপনার পৃষ্ঠা log out করতে পারবেন । |
09:32 | আমি অন্তরা এই টিউটোরিয়াল-টি অনুবাদ করেছি । ধন্যবাদ । |