PHP-and-MySQL/C4/User-Registration-Part-6/Bengali
From Script | Spoken-Tutorial
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 | এই টিউটোরিয়ালে অংশগ্রহণের জন্য ধন্যবাদ। শুভবিদায়। |