PHP-and-MySQL/C4/File-Upload-Part-1/Assamese
From Script | Spoken-Tutorial
Time | Narration |
00:00 | নমস্কাৰ । এই টিউট’ৰিয়েলটোত মই আপোনাক কেনেকৈ এটা সৰল php আপল’দ (upload) স্ক্ৰিপ্ত (script) নিৰ্মান কৰা হয় দেখুৱাম |
00:05 | ই আমাৰ 'আপল’দ (upload) দত (dot) php' ফাইলত কিছু অতি উন্নত হ’ব |
00:10 | আমি আমাৰ 'ইন্দেক্স (index) দত (dot) php' ব্যৱ্হাৰ কৰিম । আমি এই বিশেষ ফাইলটো ভৰ্ত্তি কৰাৰ বাবে উপভোক্তাক এখন ফৰ্ম (form) দিবলৈ প্ৰধানকৈ html ক’ড (code) ব্যৱ্হাৰ কৰিম |
00:20 | তাৰপাছত 'আপল’দ (upload) দত (dot) php'ত , আমি এই ফাইলটো কাৰ্যকৰী কৰিম, ফাইলটোৰ বিষয়ে কিছু তথ্য পাম যেনে ইয়াৰ নাম, প্ৰকাৰ, আকাৰ, অস্থায়ী জমাৰখা নাম আৰু কিবা ভুল বাৰ্তা যি উৎপন্ন হৈছে |
00:33 | আপুনি ভুল বাৰ্তাসমূহ পৰীক্ষা কৰিবলৈ ব্যৱ্হাৰ কৰিব পাৰে যদি ই উৎপন্ন হৈছে বা নাইহোৱা |
00:38 | তাৰপাছত আমি ফাইলটো কাৰ্যকৰী কৰিম আৰু ইয়াক আমাৰ ওৱেব-চাৰ্ভাৰ (web-server)ত এটা নিৰ্দিষ্ট দাইৰেক্তৰীত ছেভ (save) কৰিম |
00:45 | এই টিউট’ৰিয়েলটোৰ দ্বিতীয় অংশত, মই আপোনাক হঠাতে কেনেকৈ নিৰ্দিষ্ট ফাইল প্ৰকাৰক পৰীক্ষা কৰা হয় শিকাম গতিকে আপুনি ইয়াক ফাইল প্ৰকাৰৰ বিৰূদ্ধে সুৰক্ষা কৰিব পাৰিব |
00:54 | আমি লগতে কেনেকৈ ফাইলৰ আকাৰ পৰীক্ষা কৰা হয় শিকিম যাতে আপোনাৰ এটা উচ্চতম বা নিম্নতম ফাইল আকাৰ থাকে |
01:04 | গতিকে, ইয়াত মই আপল’দেদ ('uploaded') নামৰ এটা ফাইল বনাইছো য’ত মই মোৰ ইন্দেক্স ('index') আৰু 'আপল’দ (upload) দত (dot) php' ফাইলচ বনাইছো |
01:13 | আৰু ইয়াত মোৰ ফাইলচ জমা হ’ব সিহত এবাৰ আপল’দ হোৱাৰ পাছত |
01:17 | যেতিয়া ফাইলচবোৰ প্ৰাৰম্ভিকতে আপল’দ হয়, সিহত ওৱেব চাৰ্ভাৰত এটা অস্থায়ী ঠাইলৈ যায় আৰু এই ফ’ল্দাৰত নহয় |
01:25 | htmlৰ বাবে - আমি এখন ফৰ্ম (form) বনাব লাগিব । এইটো কৰিবলৈ, আমাৰ এটা ফৰ্ম একচন (form action) আছে আৰু আমাৰ এটা নিৰ্দিষ্ট একচন আছে যি হৈছে 'আপল’দ (upload) দত (dot) php' আৰু আমি আমাৰ ফাইলটো ইয়াত বনালো |
01:38 | পদ্ধতিটো প’ষ্ট (POST)লৈ সজোৱা হ’ল । ইয়াৰ কাৰণটো হৈছে আমি ইয়াক এটা গেত (GET) ভেৰিয়েবলত জমা কৰিব নালাগে |
01:45 | কিয়? কাৰণ আমি ওৱেব্চাইতত পঠোৱা বাইনেৰী দাতা (binary data)টো উপভোক্তাই দেখাটো নিবিচাৰো, সুৰক্ষাজনিত কাৰণৰ বাবে |
01:53 | আৰু লগতে আমাৰ গেত (GET) ভেৰিয়েবলত এশটা কেৰেক্তাৰৰ সীমা আছে |
01:58 | গতিকে, আপোনাৰ এটা অতি সৰু ফাইল থাকিব যদি আপোনাৰ মাত্ৰ এশ বিতচ (bits)ৰ দাতা থাকে |
02:04 | ঠিক আছে, আমাৰ আনএটা পাৰামিটাৰ আছে যাৰ বিষয়ে আপুনি হয়তো আগতে শুণা নাই |
02:11 | এইটো enctype, এনক’দিং (encoding) প্ৰকাৰ যি বুজায় আমি ইয়াক কেনেকৈ এনক’দ কৰিম |
02:20 | এইটো মাল্টি-পাৰ্ট (multi-part) হ’ব আৰু আমাক এটা ফ’ৰৱাৰ্দ শ্লাচ লাগিব আৰু তাৰপাছত এইটো ফৰ্ম-দাতা (form-data) |
02:28 | চমুকৈ, ই বুজায় যে আমি এই ফৰ্ম (form)ক দাতাৰ প্ৰকাৰত ভৰ্ত্তি কৰিছো - যি হৈছে, বাইনেৰী দাতা (binary data) - শূণ্য আৰু এক যি মই ইয়াত আগতে উল্লেখ কৰিছিলো |
02:40 | ঠিক আছে, গতিকে আমি প্ৰকাৰটো পালো যি একৌ হ’ব । আমি আমাৰ ফৰ্ম (form) ইয়াত শেষ কৰিম |
02:50 | আমাক আমাৰ ফাইলৰ বাবে ইনপুত (input) হিচাবে ভিতৰত কিছু উপাদান লাগিব |
02:57 | এই টাইপ (type)টো ফাইল ('file')লৈ সজোৱা হ’ল আৰু আমি ইয়াক মাইফাইল ('myfile') ক’ম, নিৰ্দিষ্টকৈ |
03:04 | ঠিক আছে - পাৰাগ্ৰাফ ব্ৰেক (paragraph break) ইয়াত আৰু তাৰপাছত আমাক এটা চাবমিত (submit) বুটাম লাগিব |
03:12 | ঠিক আছে, গতিকে আহক ইয়াক পুনৰ চাওঁ । আহক ইয়াক বন্ধ কৰো |
03:18 | ফাইল আপল’দ (fileupload)ত টিপক । আহক ঘূৰি যাওঁ । ইনপুত - মই ইয়াত দুটা 'u' লিখিলো |
03:27 | আহক ঘূৰি যাওঁ । আপুনি ইয়াত চাব পাৰে আমি আমাৰ ইনপুত ইয়াত পাইছো |
03:31 | মই ইয়াক ব্ৰ’জ (Browse) বনাব পাৰো । আমি চাব পাৰো যে আমি ফাইলচৰ এটা নিৰ্বাচন পাইছো যি আমি আপল’দ কৰিব পাৰো |
03:36 | ঠিক আছে - গতিকে আহক মোৰ আৰু আপোনাৰ বাবে ইয়াক অধিক উপভোক্তা সহায়ক বনাওঁ |
03:45 | আপল’দ এ ফাইল ("Upload a file") । আৰু আহক তাক ৰিফ্ৰেছ কৰো । ঠিক আছে, গতিকে আমি ইয়াত এটা সুন্দৰ পৃষ্ঠা পালো |
03:50 | আমি আমাৰ হেদাৰ (header) পালো আৰু ফাইল এটা আপল’দ কৰাৰ সম্ভাৱনা ইয়াত । লগতে নিজাকৈ ইয়াত লিখিব পাৰি, যদি প্ৰয়োজন হয় |
03:58 | আৰু লগতে আমাৰ এটা আপল’দ (Upload) বুটাম আছে যি আমাৰ 'আপল’দ (upload) দত (dot) php' লৈ ভৰ্ত্তি কৰে |
04:04 | ঠিক । গতিকে, 'আপল’দ (upload) দত (dot) php'ৰ ভিতৰত আমাক এই ফাইলটো কাৰ্যকৰী কৰাৰ এটা পথ লাগিব যি আমাৰ ফৰ্ম (form)ৰ পৰা ভৰ্ত্তি হৈছে |
04:13 | ইয়াক কৰাৰ উপায়টো হৈছে ডলাৰ আন্দাৰস্ক’ৰ ফাইলচ ('dollar underscore FILES') ব্যৱ্হাৰ কৰা । এইটো প্ৰকৃততে শুদ্ধ নহয় |
04:19 | আমি ইয়াৰ মাত্ৰ এটা একক উদাহৰণ একৌ কৰি এইটো শুদ্ধ নহয় বুলি ক’ব পাৰো |
04:27 | যেতিয়া আমি কৰো আৰু মই আপল’দ (Upload)ত টিপো, আমি চাব পাৰো আমি মাত্ৰ এৰে ("Array") পাওঁ । তাৰ কাৰণ হৈছে এইটো এটা এৰে |
04:33 | যিহেতু এইটো এটা মাল্টিদাইমেনচনেল (multidimensional) এৰে, প্ৰথম যোৰা বন্ধনীত আমি ফাইলটোৰ নাম লিখিম যি আমি আপল’দ কৰিছো আৰু ইনপুত বক্সটোৰ নাম য’ৰ পৰা ই আহিছে - যি হৈছে মাইফাইল ('myfile') |
04:49 | গতিকে, আমি ইয়াত মাইফাইল ("myfile") ব্যৱ্হাৰ কৰিম । আৰু দ্বিতীয়টোত, আমাৰ প্ৰপাৰটিচৰ (properties) ভিন্নতা থাকিব পাৰে আৰু ভাবিবলৈ সৰলতম আৰু অতি সহজটো হৈছে ফাইলটোৰ নেম (name)টো |
04:59 | গতিকে, আহক আপল’দ ফৰ্ম ('upload form')লৈ ঘূৰি যাওঁ আৰু 'ইনট্ৰ’ (intro) দত (dot) avi'ক নিৰ্বাচিত কৰো । ই ইয়াত দৰ্শিত হ’ব |
05:06 | আহক আপল’দ (Upload)ত টিপো আৰু পাছৰ পৃষ্ঠাটোত আমি 'ইনট্ৰ’ (intro) দত (dot) avi' দেখিছো |
05:11 | মনত ৰাখিব এইটো আমাৰ 'আপল’দ (upload) দত (dot) php' ফৰ্ম (form), ফাইল..ক্ষমা কৰিব |
05:16 | ঠিক আছে । গতিকে সেইয়াই সকলো । মই ইয়াক এটা ভেৰিয়েবলত ছেভ (save) কৰো |
05:22 | আমি চাব লগা পাছৰটো হৈছে - মই ইয়াক ইয়াত লিখিম - ফাইলৰ প্ৰকাৰটো |
05:30 | গতিকে, এইটো হৈছে 'ডলাৰ (dollar) আন্দাৰস্ক’ৰ (underscore) ফাইলচ (FILES)' আৰু আমি মাইনেম ("myname") ৰেফাৰেনচ ব্যৱ্হাৰ কৰিম |
05:38 | আৰু ইয়াৰ ভিতৰত, আমাৰ টাইপ (type)টো থাকিব । গতিকে সেইটো প্ৰকাৰ বা অন্যহাতে আমি ইয়াক একৌ কৰিম যাতে আপুনি চাব পাৰে |
05:45 | আৰু ৰিফ্ৰেছ । তাক ৰি-চেন্দ (Re-send) কৰক আৰু এতিয়া চাওঁক - মাইফাইল ("myfile") |
05:54 | ঠিক, তাক ৰি-চেন্দ কৰক আৰু আমি এটা 'ভিদিওঁ (video) শ্লাচ (slash) avi' চাব পাৰো । আপুনি হয়তো ইয়াক আগতে htmlৰ ক’ৰবাত দেখিছে |
06:00 | উদাহৰণস্বৰূপে - এইটো হ’ব পাৰে 'ইমেজ (image) শ্লাচ (slash) png' বা 'ইমেজ (image) শ্লাচ (slash) jpeg', 'ইমেজ (image) শ্লাচ (slash) bmp' , 'ভিদিওঁ (video) শ্লাচ (slash) avi' আৰু 'ভিদিওঁ (video) শ্লাচ (slash) mpeg' বা কিবা অন্য ফৰ্মেত |
06:11 | এই মূহুৰ্তত আমি ইয়াৰ পৰা চাব পাৰো যে এইটো এটা 'avi' ফাইল, গতিকে সেইটোৱেই আমি টাইপ ("type")ত পাওঁ |
06:18 | গতিকে, আমি ক’ব পাৰো টাইপ ($type) সমান এই সকলো |
06:22 | মই আপোনাক দেখুৱাব লগীয়া পাছৰটো হৈছে আকাৰ । গতিকে সময় বচাবলৈ মই যি কৰিম সেইয়া হৈছে - মই এই ক’ডটো ক’পি কৰিম, তাক ইয়াত পেষ্ট কৰিম আৰু এই টাইপ ("type")ক চাইজ ("size")লৈ সলাম আৰু ইয়াক একৌ (echo) কৰিম |
06:30 | আপুনি চাব পাৰে যে ভৰ্ত্তি কৰা ফাইলটোৰ e-প্ৰপাৰটি (property) পাবলৈ অতি সহজ |
06:35 | মই এই পৃষ্ঠাটো ৰিফ্ৰেছ কৰিম আৰু ৰিচেন্দ (Resend)ত টিপিম আৰু আমি ফাইলটোৰ আকাৰটো পাব পাৰো |
06:40 | এতিয়া, ধৰক আমি ইয়াক এক মিলিয়নলৈ (million) সলাম - এক মিলিয়ন বাইতচ (million bytes)প্ৰকৃততে হৈছে এক...., |
06:47 | ক্ষমা কৰিব, এক মিলিয়ন বিতচ (million bits) হৈছে এক মেগাবাইত (megabyte) । মাইফাইল ("myfile") প্ৰকৃততে হৈছে এক মেগা বাইত |
06:54 | গতিকে, আমি ইয়াত এক মিলিয়ন (million) মেগাবাইত (megabyte) দাতা পালো |
06:58 | গতিকে, আহক তাক চাইজ ($size) নামৰ ভেৰিয়েবল এটাত ছেভ (save) কৰো । ঠিক আছে? |
07:05 | তাৰপাছত, পাছৰটো হৈছে টেম্প’ৰেৰী নেম ('temporary name') যিটো হৈছে কিছু দৰকাৰী এটা |
07:09 | ইয়াক কিছু বেলেগকৈ "tmp" হিচাবে লিখা হয়, টেম্প ('temp')ৰ সংক্ষিপ্তে আৰু আন্দাৰস্ক’ৰ আৰু নেম ("name") |
07:18 | ই আমাক দাইৰেক্তৰীটো দিব য’ত ই অস্থায়ীভাবে জমা হৈ থাকিব যেতিয়ালৈকে আমি ইয়াক আমাৰ পচন্দৰ ফ’ল্দাৰলৈ নিনিওঁ |
07:25 | গতিকে, আহক এই পৃষ্ঠাটো ৰিফ্ৰেছ কৰো |
07:27 | ৰিচেন্দ (Resend)ত টিপক আৰু আপুনি চাব পাৰে যে সি এটা জেমপ (xampp)ত জমা হৈছে কাৰণ মই এই এপ্লিকেচনটো (application) ব্যৱ্হাৰ কৰিছো |
07:33 | কিন্তু যদি আপুনি এটা আপাচি (apache) ব্যৱ্হাৰ কৰি আছে, আপুনি php নিজাকৈ জমা কৰিব পাৰে |
07:37 | আপোনাৰ আপাচি ইয়াত অস্থায়ী ফাইল নামৰ সৈতে থাকিব |
07:41 | আপুনি চাব পাৰে যে এইটো এটা সাধাৰণতে সৃষ্টি হোৱা নাম যাৰ এটা "tmp" এক্সটেনচন আছে |
07:45 | কিন্তু এইটো এই মূহুৰ্তত আমাৰ বাবে অৰ্থহীন |
07:48 | গতিকে আমি তাক টেম্প ফাইল ('$temp file') বা টেম্প ('$temp') হিচাবে ছেভ (save) কৰিব পাৰো । আহক ইয়াক চমু কৰিবলৈ টেম্প ('temp') লিখো |
07:55 | আৰু শেষৰটো হৈছে এৰ’ৰ ('error') । এতিয়া যদি সকলো ঠিকে থাকে ই মূলত এটা শূণ্য একৌ (echo) কৰিব |
08:00 | পুনৰ, ক’পি-পেষ্ট (copy-paste) আৰু তাক এৰ’ৰ ("error")লৈ সলাওঁক |
08:03 | আমি এই মূহুৰ্তত শূণ্য পাব লাগিব কাৰণ সকলোখিনি শুদ্ধকৈ লিখা হৈছে |
08:07 | আৰু এইটো কেতিয়াওঁ এটা ঋণাত্মক মান নহ’ব |
08:12 | যদি ই শূণ্যতকৈ ডাঙৰ হয় ই বুজায় যে ই এটা ভুল ক’ড দিছে যি মূলত বুজায় যে আপোনাৰ এটা ভুল আছে |
08:21 | আৰু ধৰক, আমি ইয়াক এৰ’ৰ ($error) নামৰ ভেৰিয়েবল এটাত জমা কৰিম |
08:28 | ঠিক আছে । সেইয়াই এতিয়াৰ বাবে সকলো । এই টিউট’ৰিয়েলটোৰ দ্বিতীয় অংশত, মই আপোনাক কেনেকৈ আপোনাৰ ফাইলটো অস্থায়ীভাবে জমাৰখা ঠাইৰ পৰা আপোনাৰ পচন্দৰ এটা নিৰ্দিষ্ট ঠাইলৈ নি আপল’দ কৰা হয় দেখুৱাম |
08:39 | আৰু আমি যি কৰিম সেইয়া হৈছে আমি কিবা ভুল আছে নেকি চাবলৈ এই এৰ’ৰ ('$error') ভেৰিয়েবলটো ব্যৱ্হাৰ কৰিম |
08:45 | যদি তাত ভুল আছে, তেন্তে আমি ইয়াক একৌ (echo) কৰিম আৰু এৰ’ৰ ক’ড (error code)টো ব্যৱ্হাৰ কৰিম |
08:49 | যদি নহয়, আমি এই টেম্প ('$temp') ল’ম আৰু আমি ম’ভ আপল’দেদ ('move uploaded') ফাইল নামৰ এটা নিৰ্দিষ্ট ফাংচন ব্যৱ্হাৰ কৰিম আৰু আমি তাক ল’ম আৰু আমাৰ আপল’দেদ (uploaded) দাইৰেক্তৰীত জমা কৰিম, ইয়াত মোৰ ওৱেব-চাৰ্ভাৰ (web-server)ত বনোৱা |
09:01 | আৰু তাৰ পাছত মই আপোনাক কিছু বিশেষৰ দ্বাৰা লৈ যাম ক’বলৈ - এইটো এটা jpeg হয়নে? হয়, তেন্তে আপল’দ কৰা 'jpeg' ইমেজক অনুমতি নিদিব বা নিৰ্দিষ্ট ফাইল আকাৰক অনুমতি নিদিব |
09:10 | ঠিক আছে গতিকে অংশ-2ত লগ পাম । দৰ্শনৰ বাবে ধন্যবাদ । মই মৌচুম হাজৰিকাই স্প’কেন টিউট’ৰিয়েল প্ৰকল্পৰ বাবে অনুবাদ কৰিছো |