PHP-and-MySQL/C4/User-Registration-Part-6/Bengali

From Script | Spoken-Tutorial
Jump to: navigation, search
Time Narration
00:00 নমস্কার, এই স্পোকেন টিউটোরিয়ালে আপনাদের স্বাগত। এটি মূলতঃ একটি আপডেট টিউটোরিয়াল, সম্পূর্ণ ভিডিও নয়।
00:08 একজন আমাকে বলেছেন যে রেজিস্টার স্ক্রিপ্টে, কিছু পরীক্ষা করা প্রয়োজন এই দেখতে যে ইউসার তাদের দ্বারা উল্লিখিত ইউসারনেম দ্বারা রেজিস্টার রয়েছে কি নয়।
00:19 এখানে ফর্মে ফিরে যাই। এখানে সম্পূর্ণ নাম লিখতে পারেন। আপনি username এবং password চয়ন করতে পারেন।
00:28 এখানে এই মানগুলি আগে থেকেই রয়েছে। এখন এগুলি মুছে দেই।
00:33 কিন্তু আমরা আসলে চাই যে, যখন আমরা ইউসারনেম নির্বাচন করব।
00:37 উদাহরস্বরূপ,ধরুন আমরা username "alex" দিয়ে রেজিস্টার করছি। ডেটাবেসে দেখি যে username "alex" আগে থেকেই রয়েছে।
00:47 এখন আমাদের ইউসারনেমের অস্তিত্ব যাচাই করতে হবে।
00:50 ইউসারনেম আগে থেকেই থাকলে, আমরা ইউসারকে রেজিস্টার করতে দেবো না কারণ আমরা একই username দুইবার চাই না।
01:01 আমি এখানে রেজিস্টার করতে চাইলে, পাসওয়ার্ডটি লিখি এবং ইউসারনেম "alex" চয়ন করি। username "alex" ডেটাবেসে আগে থেকেই রয়েছে।
01:13 একই নামের হওয়ায় এখন এটি বদলে দেই এবং Register এ টিপি।
01:20 আমি সফলভাবে রেজিস্টার করেছি।
01:23 এখন ডেটাবেসের মধ্যে দেখি। আমরা দেখি যে alex এর সাথে দুটি ইউসারনেম রয়েছে।
01:28 এখন লগইন করার সময় এটি সমস্যা তৈরী করবে।
01:31 প্রথম নামটির উপস্থিতি এখানে এটি লগইন হয়ে যাবে এবং দ্বিতীয়টি উপেক্ষিত হয়ে যাবে।
01:39 অর্থাৎ এই ব্যক্তি সত্যি ডেটাবেসে কখনই লগইন করতে পারবেন না।
01:44 তাই এটি মুছে দেই।
01:48 আপনাকে কিছু পরীক্ষা করে দেখতে হবে যে username আগে থেকেই উপস্থিত কিনা।
01:53 এটি খুবই সহজ। এটি করার একাধিক উপায় রয়েছে।
01:59 এখানে আমি সব থেকে সহজ এবং সম্ভবতঃ সবচেয়ে কার্যকরী পদ্ধতিটি ব্যাখা করছি।
02:05 প্রথমে যেটা করতে হবে, ডেটাবেস সংযোগ করতে আমার কোড নিতে হবে।
02:12 ডেটাবেস চয়ন করি। আমি এটি উপরে নিয়ে যেতে চাই যেখানে submit বোতাম চয়নিত রয়েছে।
02:20 এটি শুধু ডেটাবেসে সংযোগ করছে, আমি এর মধ্যে রয়েছি।
02:26 তারপর এখানে ইউসারনেম যাচাই করতে আমি কোড লিখতে পারি।
02:31 মনে রাখবেন আপনি চেক যেখানে ইচ্ছে সেখানে লিখতে পারবেন না. সরলতার জন্য আমি এটি এখানে লিখছি এবং বাকি স্ক্রিপ্ট মুছে দেই।
02:39 ইউসারনেম পেয়ে গেলে আমি এটিকে যে কোনো জায়গায় রাখতে পারি।
02:44 ধ্যান রাখবেন, ওয়েবসাইটে সম্পূর্ণ দৈর্ঘের পৃষ্ঠা ব্যবহার করলে, die function কোডের বাকি অংশ কেটে দেবে। তাই আমি এটির ব্যবহার অনুমোদন করি না।
02:53 আমি চেক্স যা পরবর্তী স্টেটমেন্টে আপনার কাছে রয়েছে তা আবরণ করার পরামর্শ দেই এবং স্ক্রিপ্ট সত্যি নষ্ট করবেন না।
03:00 কিন্তু আমরা ঠিক কি করতে চাইছি তা নিয়ে আপনার একটা সাধারণ ধারণা তৈরী হয়ে যাবে।
03:06 আমাদের শুধু একটি query লিখতে হবে যা একটি নির্দিষ্ট ইউসারনেমের সাথে রেকর্ড নিয়ে পাওয়া যাবে।
03:12 এখানে আমি লিখব "namecheck query". আমি ভ্যারিয়েবলটিকে "namecheck" বলব এবং এটি একটি mysql কোয়েরী হবে।
03:21 আমি সরলতার জন্য "username" চয়ন করব। এটি সম্পূর্ণ তথ্য নির্বাচন করবে না।
03:27 তাই আমি users থেকে username চয়ন করছি।
03:35 কারণ সেটি এখানে আমাদের টেবিলের নাম।
03:39 আমি লিখব "WHERE username" is equal to... আমি এখানে দেখি যে কারোর ইউসারনেম ফর্ম জমা করলে সেই ভ্যারিয়েবলের নাম "username" এ রয়েছে।
03:50 তাই এখন নীচে নেমে আসি এবং লিখি "username".
03:55 এখন আমি "alex" নাম চয়ন করলে, এটি ডেটাবেসে সকল রেকর্ড চয়ন করবে, যার ইউসারনেম হল "alex" এবং এখন আমি একটি দেখতে পারি।
04:09 এখন এই পরিস্থিতিতে আমাকে একটি রেকর্ডের সাথে উল্লিখিত করতে হলে.....
04:15 আমাকে ইউসারনেম "Dale" লিখতে হলে উদাহরণস্বরূপ কোনো রেকর্ড পাওয়া যাবে না।
04:20 তাই ইউসারনেম উপস্থিত থাকবে না, যদি কোনো রেকর্ড পাওয়া না যায়. এখন একটি ফাংশন দরকার যাচাই করতে যে কতগুলি রেকর্ড পাওয়া যাচ্ছে।
04:29 আপনি এটি count ভ্যারিয়েবল বানিয়ে করতে পারেন। এটি হল "mysql num rows".
04:36 এটি শুধু রেকর্ড এবং রো এর মাত্রা দেবে যা "namecheck" নামক কোয়েরীতে রয়েছে।
04:47 এখন এটি যাচাই করি. আমি count ইকো করতে যাচ্ছি এবং স্ক্রিপ্ট নষ্ট করি।
04:53 কোডের বাকি অংশ চলবে না।
04:57 Register এ ফিরে যাই, আমার Fullname "alex" লিখব।
05:03 Fullname এবং তারপর ইউসারনেম চয়ন করুন। আমি "Dale" চয়ন করতে যাচ্ছি।
05:10 পাসওয়ার্ড পরীক্ষা করা হবে না, আমরা এটি বাদ দিতে পারি।
05:16 কিন্তু আমরা সম্পূর্ণতার জন্য এটিকে এখানে রাখবো, তারপর Register এ টিপব।
05:24 আমরা দেখি যে আমরা শূন্য ভ্যালু পেয়েছি।
05:28 এর কারণ, "Dale" ডেটাবেসে username হিসাবে নেই।
05:32 কিন্তু, আমরা এটিকে "alex" এ বদলালে, এটি ছোট হাতের "a" হবে।
05:39 এখানে কিছু স্ট্রিপ ট্যাগ্স রয়েছে। কেস সেনসিটিভিটির সাথে মোকাবেলা করার জন্য ভালো, অর্থাৎ এটি আরেকটি পয়েন্টার।
05:49 আমরা ইউসারনেমকে গুরুত্ব দিলে আমরা এখানে লিখি “str to lower", শুধু এই নিশ্চিত করতে যে এটি সর্বদা ছোট হাতের অক্ষরে রূপান্তরিত হোক।
06:01 এরপর আমরা করব... একটু খুঁজে নি .... Register এ টিপুন।
06:08 আমরা দেখি যে আমরা একটি ভ্যালু পেয়েছি।
06:12 অর্থাৎ চেক যা আমরা এখানে দেখতে পারি -আমরা এই ভ্যারিয়েবলটি ইকো করলে, এটি শূন্য নয়...আমাদের ইউসারকে জানাতে হবে যে ইউসারনেম আগেই রেজিস্টার করা রয়েছে।
06:25 এখন এখানে একটি সরল if স্টেটমেন্ট এবং একটি block বানাবো।
06:29 তারপর আমরা দেখতে পারি যে কাউন্ট শূন্য হয়, তার মানে এখানে একটি রেকর্ড উপস্থিত যেখানে ইউসারনেম আগেই থেকেই উল্লিখিত।
06:40 তারপর আমরা স্ক্রিপ্ট নষ্ট করতে পারি এবং লিখি "Username already taken" বা অন্য কোনো বার্তা। এখানে ফিরে এসে রিফ্রেশ করি।
06:50 আমরা "alex" চয়ন করতে পারি। আমি Register এ টিপি।
06:56 আমরা "Username already taken" এরর পাচ্ছি ।
07:00 আমি "Dale" লিখে এবং একটি নতুন নাম ও পাসওয়ার্ড চয়ন করে Register এ টিপলে আমরা দেখি যে এটি ডেটাবেসে সফলভাবে রেজিস্টার হয়ে গেছে কারণ ইউসারনেম উপস্থিত নেই।
07:15 আমি এটি এখানেই শেষ করছি। আপনি দেখনে যে আমার রেজিস্টার করা ইউসার পেয়ে গেছি।
07:22 একটি "str to lower" ফাংশন যোগ করুন, যা সবকিছু সরল রাখতে খুবই উপযোগী জিনিস।
07:29 আপনি if স্টেটমেন্টে "str to lower" ফাংশন ব্যবহার করতে পারেন।
07:32 যদিও, এটি সরল রাখতে, আমি বলব যে সকল ইউসারনেম ছোট হাতের অক্ষরে বদলান।
07:39 আপনাকে এই লগইন স্ক্রিপ্টেও যোগ করতে হবে। যা কিছু ইউসার লগইন বাক্সে লেখে, তা ছোট হাতের অক্ষরে বদলাতে হবে।
07:48 আপনি এটিকে আরো ব্যবহার করুন, ভুল বার করার এটি ভালো পদ্ধতি।
07:53 এগুলি চেষ্টা করুন, কোনো অসুবিধা হলে, আমাকে অবশ্যই email করুন। আপডেটের জন্য সাবক্রাইব করুন।
07:58 এই টিউটোরিয়ালে অংশগ্রহণের জন্য ধন্যবাদ। শুভবিদায়।

Contributors and Content Editors

Antarade, Satarupadutta