C – Program Structure . একটি সি প্রোগ্রাম মূলত নিম্নলিখিত অংশ নিয়ে গঠিত

স্বাগতম আমাদের সাইটে আসার জন্য
আমরা এখানে সি প্রোগ্রাম নিয়ে আলোচনা করব। যেখানে আপনি সহজে জানতে পারবেন কিভাবে আমরা একটি প্রোগ্রাম চালু করতে পারব। আমরা সি এর মুল শেখার আগে আসুন একটি সহজ প্রোগ্রাম চালু করি।
একটি সি প্রোগ্রাম মূলত নিম্নলিখিত অংশ নিয়ে গঠিত:
১. পূর্ব প্রক্রিয়া নির্দেশ
২. কার্যাবলী/ ফাংশন
৩. চলক / Variables
৪. বিবৃতি ও প্রকাশ
৫. মন্তব্য / Comments
আসুন এবার আমরা জেনে নেই কিভাবে আমরা একটি সহজ প্রোগ্রাম চালু করব। প্রোগ্রামটি “Hello World” নামে পরিচিত।
#include <stdio.h>

int main()
{
/* my first program in C */
printf(“Hello, World! \n”);

return 0;
}

আসুন জেনে নেই এই উপরোক্ত প্রোগ্রামে কি কি কোড আছেঃ
• #include<stdio.h> কে হেডার ফাইল বলা হয়। এটাকে আবার একটি সি কম্পাইলার বলে।
• Int main () বলতে প্রোগ্রামের প্রধান ফাংশন কে বুঝায়।
• পরের লাইন /*…*/ কম্পাইলার এটাকে এড়িয়ে যাবে এবং এটি প্রোগ্রামের মধ্যে অতিরিক্ত মন্তব্য যোগ করা হয়েছে. সাধারনত এটি প্রোগ্রামটি অন্যকে বুঝাতে ব্যবহার করা হয়।
• Printf(“—”); এর ভিতরে — এর বদলে আপনি যা লিখবেন সবই আপনার মনিটরের পর্দায় প্রিন্ট হবে।
• Return 0 নির্দেশনাটি আবার প্রোগ্রামটিকে 0 মান অথবা মুল্য তে নিয়ে যাবে।
সি প্রোগ্রাম সঙ্কলন ও সম্পাদন করা:
একটি ফাইলের মধ্যে সোর্স কোড সংরক্ষণ করতে, এবং কিভাবে কম্পাইল এবং এটি চালানোর জন্য কিভাবে তাকান করতে দেয়. নিম্নলিখিত সহজ ধাপ আছেঃ

• একটি টেক্সট এডিটর খুলুন যেখানে আপনি উপরে উল্লিখিত কোড লিখবেন।
• hello.c লিখে ফাইলটি সেভ করেন।

• একটি কমান্ড প্রম্পট খুলুন এবং আপনি ফাইলটি সংরক্ষণ করে রাখেন আপনার পছন্দের ড্রাইভে।
• gcc hello.c লিখে এন্টার বাটন প্রেস করে আপনার কম্পাইল কোড গুলো লিখুন।
• আপনার কোড মধ্যে কোন ত্রুটি আছে কমান্ড প্রম্পট পরের লাইন নিতে হবে a.out এবং এক্সিকিউটেবল ফাইল তৈরি হবে।
• এখন, আপনার প্রোগ্রাম চালানো a.out টাইপ করুন।
• এখন আপনি “হ্যালো ওয়ার্ল্ড” দেখতে পাবেন।
• $ gcc hello.c
• $ ./a.out
• Hello, World!

জিসিসি কম্পাইলার কে আপনার ফাইলটির স্থান দেখিয়ে দিন যাতে আপনার সংরক্ষিত সোর্স ফাইলটি , hello.c চালু হয়।

MongoDB Sort Documents . MongoDB ডকুমেন্ট বাছাই

MongoDB ডকুমেন্ট বাছাই
নয়ন চন্দ্র দত্ত

sort() পদ্ধতি
MongoDB ডকুমেন্ট বাছাই করতে হলে আপনাকে sort() পদ্ধতি ব্যবহার করতে হবে। ক্ষেত্র তালিকা ধারণকারী এবং তাদের বাছাই ক্রমের সঙ্গে, sort() পদ্ধতি ডকুমেন্ট গ্রহণ করে।
বাছাই প্রক্রিয়া উল্লেখ করার জন্য 1 এবং -1 ব্যবহৃত হয়। 1 ক্রম ঊর্ধ্বগামীতার জন্য ব্যবহার করা হয় যখন -1 অধোগামীর জন্য ব্যবহৃত হয়।

সিনট্যাক্সঃ
sort() পদ্ধতির বেসিক সিনট্যাক্স বা বাক্য গঠন নিম্নরূপঃ

>db.COLLECTION_NAME.find().sort({KEY:1})

উদাহরণঃ
কালেকশন myycol এ নিম্নলিখিত তথ্য আছে বিবেচনা করিঃ

{ “_id” : ObjectId(5983548781331adf45ec5), “title”:”MongoDB Overview”}
{ “_id” : ObjectId(5983548781331adf45ec6), “title”:”NoSQL Overview”}
{ “_id” : ObjectId(5983548781331adf45ec7), “title”:”Tutorials Point Overview”}

উপরের উদাহরণটিতে অধোগামীতায় টাইটেল হিসেবে ডকুমেন্ট প্রদর্শন করবেঃ

>db.mycol.find({},{“title”:1,_id:0}).sort({“title”:-1})
{“title”:”Tutorials Point Overview”}
{“title”:”NoSQL Overview”}
{“title”:”MongoDB Overview”}
>

দয়া করে মনে রাখবেন, আপনি যদি বাছাই প্রক্রিয়া উল্লেখ না করেন তাহলে sort() পদ্ধতি ক্রম ঊর্ধ্বগামী হিসেবে ডকুমেন্ট প্রদর্শন করবে।

MongoDB Update Document

MongoDB আপডেট ডকু্মেন্ট
নয়ন চন্দ্র দত্ত

MongoDB এর update() এবং save() পদ্ধতি একটি কালেকশনে ডকুমেন্ট আপডেট করতে ব্যবহৃত হয়। যখন save() পদ্ধতি বিদ্যমান নথি save() পদ্ধতি্র মধ্যে গৃহীত ডকুমেন্ট সাথে প্রতিস্থাপন করে
তখন update() পদ্ধতি বিদ্যমান ডকুমেন্ট এর value বা মানকে আপডেট করে।

MongoDB update() পদ্ধতি
update() পদ্ধতি বিদ্যমান ডকুমেন্টের মানকে আপডেট করে।

সিনট্যাক্স:
update() পদ্ধতির বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

>db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA)

উদাহরণঃ
চলুন নিম্নলিখিত তথ্যের সাথে myycol কালেকশনটি বিবেচনা করিঃ

{ “_id” : ObjectId(5983548781331adf45ec5), “title”:”MongoDB Overview”}
{ “_id” : ObjectId(5983548781331adf45ec6), “title”:”NoSQL Overview”}
{ “_id” : ObjectId(5983548781331adf45ec7), “title”:”Tutorials Point Overview”}

নিম্নলিখিত উদাহরণটি ‘MongoDB Overview’ ডকুমেন্টের নতুন টাইটেল ‘New MongoDB Tutorial’ সেট করবে ।

>db.mycol.update({‘title’:’MongoDB Overview’},{$set:{‘title’:’New MongoDB Tutorial’}})
>db.mycol.find()
{ “_id” : ObjectId(5983548781331adf45ec5), “title”:”New MongoDB Tutorial”}
{ “_id” : ObjectId(5983548781331adf45ec6), “title”:”NoSQL Overview”}
{ “_id” : ObjectId(5983548781331adf45ec7), “title”:”Tutorials Point Overview”}
>

ডিফল্টভাবে mongodb শুধুমাত্র সিঙ্গেল ডকুমেন্ট আপডেট করে। অধিক ডকুমেন্ট আপডেট করতে হলে আপনাকে একটি প্যারামিটার ( ‘multi’ true ) যোগ করতে হবে।
যেমন-

title’:’MongoDB Overview’},{$set:{‘title’:’New MongoDB Tutorial’}},{multi:true})

MongoDB Save() পদ্ধতি
save() পদ্ধতি বিদ্যমান ডকুমেন্ট save() পদ্ধতির মধ্যে গৃহীত নতুন ডকুমেন্টের সাথে প্রতিস্থাপন করে।

সিনট্যাক্স:
save() পদ্ধতির বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

>db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})

উদাহরণঃ
নিম্নলিখিত উদাহরণটি _id ‘5983548781331adf45ec7’ এর সঙ্গে ডকুমেন্টটিকে প্রতিস্থাপন করবে।

>db.mycol.save(
{
“_id” : ObjectId(5983548781331adf45ec7), “title”:”Tutorials Point New Topic”, “by”:”Tutorials Point”
}
)
>db.mycol.find()
{ “_id” : ObjectId(5983548781331adf45ec5), “title”:”Tutorials Point New Topic”, “by”:”Tutorials Point”}
{ “_id” : ObjectId(5983548781331adf45ec6), “title”:”NoSQL Overview”}
{ “_id” : ObjectId(5983548781331adf45ec7), “title”:”Tutorials Point Overview”}
>

মংগোডিবি – কুয়েরি ডোকুমেন্ট (MongoDB – Query Document)

MongoDB অনুসন্ধানমূলক বা Query ডকুমেন্ট

নয়ন চন্দ্র দত্ত

 

 

find() পদ্ধতি

MongoDB collection ডেটা অনুসন্ধান করতে আপনাকে MongoDB এর find() পদ্ধতি ব্যবহার করতে হবে।

 

সিনট্যাক্সঃ

find()  এর বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

 

>db.COLLECTION_NAME.find()

 

find() পদ্ধতি সবগুলো ডকুমেন্টকে একটি অ-কাঠামোগত ভাবে প্রদর্শন করবে।

 

 

 

 

pretty() পদ্ধতি

সুবিন্যস্তভাবে ফলাফল প্রদর্শন করার জন্য pretty() পদ্ধতি ব্যবহার করতে পারেন।

 

সিনট্যাক্সঃ

 

>db.mycol.find().pretty()

 

 

উদাহণঃ

 

>db.mycol.find().pretty()

{

“_id”: ObjectId(7df78ad8902c),

“title”: “MongoDB Overview”,

“description”: “MongoDB is no sql database”,

“by”: “tutorials point”,

“url”: “http://www.tutorialspoint.com”,

“tags”: [“mongodb”, “database”, “NoSQL”],

“likes”: “100”

}

>

 

 

 

find() পদ্ধতি ছাড়াও এখানে findOne() পদ্ধতিও আছে যা শুধুমাত্র একটি ডকুমেন্টকে পুনরায় ধাবিত করে।

 

 

 

 

 

MongoDB এর মধ্যে RDBMS যেখানে Clause বা ধারা সমতুল্য

কিছু অবস্থার ভিত্তিতে ডকুমেন্ট অনুসন্ধান করতে আপনি নিম্নলিখিত অপারেশন ব্যবহার করতে পারেন।

 

অপারেশনঃ সমতা

সিনট্যাক্সঃ {<key>:<value>}

উদাহণঃ db.mycol.find({“by”:”tutorials point”}).pretty()

RDBMS সমতুল্যতাঃ যেখানে by = ‘tutorials point’

 

অপারেশনঃ ছোট

সিনট্যাক্সঃ {<key>:{$lt:<value>}}

উদাহণঃ db.mycol.find({“likes”:{$lt:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes < 50

 

অপারেশনঃ সমান বা ছোট

সিনট্যাক্সঃ {:{$lte:}}

উদাহণঃ db.mycol.find({“likes”:{$lte:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes <= 50

 

অপারেশনঃ বড়

সিনট্যাক্সঃ {<key>:{$gt:<value>}}

উদাহণঃ db.mycol.find({“likes”:{$gt:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes > 50

 

অপারেশনঃ সমান বা বড়

সিনট্যাক্সঃ {:{$gte:}}

উদাহণঃ db.mycol.find({“likes”:{$gte:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes >= 50

 

অপারেশনঃ অসমান

সিনট্যাক্সঃ {:{$ne:}}

উদাহণঃ db.mycol.find({“likes”:{$ne:50}}).pretty()

RDBMS সমতুল্যতাঃ যেখানে likes != 50

 

 

 

 

 

MongoDB তে AND

সিনট্যাক্সঃ

find() পদ্ধতিতে যদি আপনি একাধিক কী ( ‘,’ )দিয়ে পৃথক করে পাস করেন তাহলে MongoDB এটাকে AND শর্তের ন্যায় আচরন করায়। AND এর বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

 

>db.mycol.find({key1:value1, key2:value2}).pretty()

 

 

উদাহণ

উল্লিখিত নীচের উদাহরণটি ‘tutorials point’ দ্বারা লিখিত সব টিউটোরিয়াল এবং যার টাইটেল ‘MongoDB Overview’  প্রদর্শন করবে।

 

>db.mycol.find({“by”:”tutorials point”,”title”: “MongoDB Overview”}).pretty()

{

“_id”: ObjectId(7df78ad8902c),

“title”: “MongoDB Overview”,

“description”: “MongoDB is no sql database”,

“by”: “tutorials point”,

“url”: “http://www.tutorialspoint.com”,

“tags”: [“mongodb”, “database”, “NoSQL”],

“likes”: “100”

}

>

 

 

 

উপরে উল্লিখিত উদাহরণটি সমান হবে যেখানে clause টি ‘ where by=’tutorials point’ AND title=’MongoDB Overview’  হবে।

 

 

 

 

 

 

MongoDB তে OR

সিনট্যাক্সঃ

OR শর্তের উপর ভিত্তি করে ডকুমেন্ট খোজতে আপনাকে $or কীওয়ার্ড ব্যবহার করতে হবে। OR এর বেসিক সিনট্যাক্স বা বাক্য-গঠন নিম্নরূপঃ

 

>db.mycol.find(

{

$or: [

{key1: value1}, {key2:value2}

]

}

).pretty()

 

 

 

উদাহণ

উল্লিখিত নীচের উদাহরণটি ‘tutorials point’ দ্বারা লিখিত সব টিউটোরিয়াল এবং যার টাইটেল ‘MongoDB Overview’  প্রদর্শন করবে।

 

 

>db.mycol.find({$or:[{“by”:”tutorials point”},{“title”: “MongoDB Overview”}]}).pretty()

{

“_id”: ObjectId(7df78ad8902c),

“title”: “MongoDB Overview”,

“description”: “MongoDB is no sql database”,

“by”: “tutorials point”,

“url”: “http://www.tutorialspoint.com”,

“tags”: [“mongodb”, “database”, “NoSQL”],

“likes”: “100”

}

>

 

 

 

 

একত্রে AND এবং OR  এর ব্যবহার

উদাহণঃ

উল্লিখিত নীচের উদাহরণটি ১০০ এর চেয়ে বড় এবং যার টাইটেল ‘MongoDB Overview’ বা ‘tutorials point’ । এসকিউএল সমান হবে যেখানে ‘where likes>10 AND (by = ‘tutorials point’ OR title = ‘MongoDB Overview’)’  । যেমনঃ-

 

>db.mycol.find(“likes”: {$gt:10}, $or: [{“by”: “tutorials point”}, {“title”: “MongoDB Overview”}] }).pretty()

{

“_id”: ObjectId(7df78ad8902c),

“title”: “MongoDB Overview”,

“description”: “MongoDB is no sql database”,

“by”: “tutorials point”,

“url”: “http://www.tutorialspoint.com”,

“tags”: [“mongodb”, “database”, “NoSQL”],

“likes”: “100”

}

>

 

 

 

http://Bangla.SaLearningSchool.com

মঙ্গোডিবি – ইন্সার্ট ডোকুমেন্ট (MongoDB – Insert Document)

MongoDB – ডকুমেন্ট সন্নিবেশন
সন্নিবেশ পদ্ধতি
MongoDB সংগ্রহে ডাটা সন্নিবেশন বা প্রবেশ করতে হলে আপনাকে MongoDB এর সন্নিবেশ পদ্ধতি ব্যবহার করতে হবে ।
শব্দবিন্যাস
শব্দবিন্যাস সন্নিবেশন বা প্রবেশের প্রাথমিক নির্দেশনা নিম্নে দেয়া হল :
>db.COLLECTION_NAME.insert(document)
উদাহরণ
>db.mycol.insert({
_id: ObjectId(7df78ad8902c),
title: ‘MongoDB Overview’,
description: ‘MongoDB is no sql database’,
by: ‘tutorials point’,
url: ‘http://www.tutorialspoint.com’,
tags: [‘mongodb’, ‘database’, ‘NoSQL’],
likes: 100
})
পূর্ববর্তী টিউটোরিয়াল অনুসারে এখানে mycol আমাদের সংগ্রহের নাম । ডকুমেন্টগুলো ডাটাবেসের মধ্যে উপস্থিত না থাকলে, MongoDB তে সংগ্রহ বা কালেকশন তৈরি করুন এবং তারপর ডকুমেন্টগুলো প্রবেশ করুন ।
যদি সন্নিবেশকৃত ডকুমেন্টগুলোর মধ্যে নির্দিষ্ট _id parameter বা স্থিতিমাপ না থাকে তাহলে MongoDB এই নথির জন্য একটি আদর্শ লক্ষ্য নির্ধারণ করতে হবে ।
_id 12 বাইট হেক্সাডেসিমেল সংখ্যা প্রতিটি ডকুমেন্টের জন্য আদর্শ সংখ্যা । 12 বাইটকে নিম্নোক্ত ভাবে ভাগে করা হয় :
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
একক অনুসন্ধানে একাধিক ডকুমেন্ট প্রবেশ করার জন্য, আপনি ডকুমেন্টে অ্যারের কমান্ডের মাধ্যমে পাস করতে পারেন ।
উদাহরণ
>db.post.insert([
{
title: ‘MongoDB Overview’,
description: ‘MongoDB is no sql database’,
by: ‘tutorials point’,
url: ‘http://www.tutorialspoint.com’,
tags: [‘mongodb’, ‘database’, ‘NoSQL’],
likes: 100
},
{
title: ‘NoSQL Database’,
description: ‘NoSQL database doesn’t have tables’,
by: ‘tutorials point’,
url: ‘http://www.tutorialspoint.com’,
tags: [‘mongodb’, ‘database’, ‘NoSQL’],
likes: 20,
comments: [
{
user:’user1′,
message: ‘My first comment’,
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
এছাড়াও আপনি db.post.save ব্যবহার করতে পারেন নথি (ডকুমেন্ট) প্রবেশ করার জন্য । যদি আপনি নথিতে নির্দিষ্ট _id উল্লেখ না করেন, তাহলে সংরক্ষণ পদ্ধতি সন্নিবেশ পদ্ধতি হিসাবে একই কাজ করবে । আর যদি আপনি নির্দিষ্ট _id উল্লেখ করেন তাহলে এটি সমস্ত ডকুমেন্ট প্রতিস্থাপন করবে যেভাবে সংরক্ষণ পদ্ধতি সংরক্ষিত হয়েছিল ।

এইচটিএমএল লিঙ্ক (HTML Link)

এইচ টি এম এল লিঙ্ক

স্বর্ণা আখতার

সম্পাদনাঃ মোঃ রফিকুল ইসলাম

 

প্রায় সকল ওয়েবপেজ এ লিঙ্ক রয়েছে। লিঙ্ক এ ক্লিক করার মাধ্যমে ব্যবহারকারী এক পেজ থেকে অন্য পেজে যেতে পারে।

এইচটিএমএল লিঙ্ক – হাইপারলিঙ্ক

হাইপারলিঙ্ক হচ্ছে একটি Text, বা ছবি যার উপর ক্লিক করার মাধ্যমে আপনি অন্য আরেকটি ওয়েবপেজে/ডকুমেন্ড এ চলে যেতে পারে।

 

এইচটিএমএল লিঙ্ক – সিনট্যাক্স

এইচ টি এম এল এ লিঙ্ক সিনট্যাক্সগুলো কিভাবে গঠিত হয় নিচে তাঁর উদাহরন তুলে ধরা হল, <a> ট্যাগ দ্বারা লিঙ্ককে সঙ্গায়িত করা হয়।

লিঙ্ক সিনট্যাক্স


<a href=”url”>link text</a>


উদাহরনঃ


<a href=”http://bangla.salearningschool.com/html/”>Visit our HTML tutorial</a>


 

ফলাফলঃ


Visit our HTML tutorial


এখানে href অ্যাট্রিবিউট ওয়েব পেজ এর গন্তব্যকে নির্দেশ করে করে যেমন, http://bangla.salearningschool.com/html/
আর link text (Visit our HTML tutorial) হল প্রদর্শিত অংশ যার উপর ক্লিক করলে আপনি একটি নির্দিষ্ট ওয়েব পেজ এ স্থানান্তিরিত হবেন।

নেটঃ link text সবসময়ই টেক্স হতে হবে এমন কোন কথা নেই, এটি ছবি বা এইচটিএমএল এর যেকোন উপাদান হতে পারে।

 

লোকাল লিঙ্ক

উপরের উদাহরণে একটি সংয়সম্পূর্ণ ওয়েব এড্রেস (URL) ব্যবহার করা হয়েছে।

একটি লোকাল লিঙ্ক (একই ওয়েব সাইটের লিঙ্ক) নির্দিষ্ট করা হয় আপেক্ষিক URL এর সাহায্যে (http://www…. ব্যতীত)

যেমনঃ


<a href=”html_images.asp”>HTML Images</a>


 

এইচটিএমএল লিঙ্ক – কালার এবং আইকন

আপনি যখন কোন লিঙ্ক এর উপর নিয়ে যান তখন সাধারণত দুপ্রকার ঘটনা ঘটতে পারেঃ

১. মাউস এর তীর টিহ্নটি একটা ছোট হাতের রুপ নিতে পারে।
২. লিঙ্ক এর বিষয়বস্তু যেমন লিঙ্ক টেক্সট ইত্যাদির কালার পরিবর্তন হয়ে থাকে।

সাধারনত লিঙ্কগুলো যে কোন ব্রাউজার এ নিম্নোক্তভাবে দেখা যায়

১. অদেখা লিঙ্কগুলোর নিচে আন্ডার লাইন এবং এদের কালার নীল হয়।
২. দেখা লিঙ্কগুলোর নিচেও আন্ডার লাইন থাকে কিন্তু এদের কালার সাধারনত রক্তবর্ণ হয়।
৩. একটা সচল লিঙ্কএর নিচেও একইভাবে আন্ডার লাইন কিন্তু লাল কালারের হয়ে থাকে।

আপনি style ব্যবহার করে ডিফল্ট কালার ও আন্ডারলাইন পরিবর্তন করতে পারেন।

উদাহরণঃ


<style>
a:link   
{color:#000000; background-color:transparent; text-decoration:none}
a:visited {color:#000000; background-color:transparent; text-decoration:none}
a:hover   {color:#ff0000; background-color:transparent; text-decoration:underline}
a:active  {color:#ff0000; background-color:transparent; text-decoration:underline}
</style>

এইচটিএমএল লিঙ্ক – টার্গেট অ্যাট্রিবিউট

target অ্যাট্রিবউট নির্দারণ করে ডকুমেন্টটি কোথায় খুলবে।

উদাহরণস্বরূপ ডকুমেন্টটি একই উইন্ডোতে খুলতে পারে বা নতুন ট্যাব এও খুলতে পারেঃ


<a href=“http://bangla.salearningschool.com/html/” target=“_blank”>Visit our HTML tutorial</a>


 

ফলাফল


Visit our HTML tutorial


 

Target Value বিবরণ
_blank লিঙ্ককৃত ডকুমেন্টটি নতুন একটি উইন্ডো বা ট্যাব এ খোলে
_self লিঙ্ককৃত ডকুমেন্টটি যে ফ্রেমে ক্লিক করেছেন সেই একই ফ্রেমে খুলবে (এটিই ডিফল্ট হিসেবে থাকে)
_parent লিঙ্ককৃত ডকুমেন্টটি মুল ফ্রেমে খোলে
_top লিঙ্ককৃতডকুমেন্টটি সম্পূর্ণ উইন্ডো জুড়ে খোলে
framename লিঙ্ককৃত ডকুমেন্টটি নির্দিষ্ট নামের ফ্রেমে খোলে

 

আপনার ওয়েব পেজটি যদি একটি ফ্রেম লক করা থাকে, তাহলে target=”_top” ব্যহার করে লক ভেঙ্গে ফেলতে পারেন।

উদাহরণঃ


<a href=”http://bangla.salearningschool.com/html/” target=”_top”>Visit our HTML tutorial</a>


 

ফলাফলঃ


Visit our HTML tutorial


 

এইচটিএমএল লিঙ্ক – ইমেজ/ছবি লিঙ্ক হিসেবে ব্যবহার

ইমেজকে লিঙ্ক হিসেবে ব্যবহার করা খুবই সাধারণ

উদাহরণঃ


<a href=“default.asp”>
<img src=“smiley.gif” alt=“HTML tutorial” style=“width:42px;height:42px;border:0”>
</a>

 

ফলাফলঃ


smiley


 

এইচটিএমএল লিঙ্ক – id অ্যাট্রিবিউট

<a> এলিমেন্ট এর সাথে একটি id অ্যাট্রিবউট যোগ করুন


<a id=”tips”>Useful Tips Section</a>


 

<a> এলিমেন্ট এ একটি লিঙ্ক সংযুক্তকরণ


<a href=”#tips”>Visit the Useful Tips Section</a>


 

<a> এলিমেন্ট এ অন্য পেজ এর একটি লিঙ্ক যুক্তকরণ


<a href=”http://bangla.salearningschool.com/html_links.htm#tips”>Visit the Useful Tips Section</a>


 

 

সারসংক্ষেপ

• এইচটিএমএল <a> এলিমেন্ট এর ব্যবহার লিঙ্ককে সঙ্গালিত করে

• এইচটিএমএল href অ্যাট্রিবউট এর ব্যবহার লিঙ্ক এর এড্রেসকে সঙ্গায়িত করে

• এইচটিএমএল target অ্যাট্রিবউট এর ব্যবহার  লিঙ্কটি কোথায় খুলবে তা বোঝায়

• এইচটিএমএল <img> এলিমেন্ট এর ব্যবহার ইমেজ/ছবিকে লিঙ্ক সিহেবে ব্যবহার করে

• এইচটিএমএল id অ্যাট্রিবউট (id=”value”) এর ব্যবহার বুকমার্ক ডিফাইন করার জন্য ব্যবহৃত হয়

• এইচটিএমএল href অ্যাট্রিবউট (href=”#value”) এর ব্যবহার বুকমার্ক এ ঠিকানা বুঝায়

 

পিএইচপি ত্রুটি পরিচালনার ব্যবস্থা (PHP Error Handling)

পিএইচপি প্রোগ্রামিং এ একটি Default Error Handling built-in থাকে যা স্বয়ংক্রিয় ভাবে যে ফাইলে ভুল রয়েছে সেই ফাইলের নাম, যে লাইন এ ভুল হয়েছে তার নম্বর এবং কি ধরনের ভুল হয়েছে তা প্রদর্শন করে থাকে এবং ব্রাউসারে একটি error message প্রেরন করে। আমরা উক্ত error message দেখে খুব সহজে আমাদের করনিও নিরধারন করতে পারি।

পিএইচপি স্ক্রিপ্ট এবং ওয়েব অ্যাপ্লিকেশন তৈরি করার সময় যদি আমরা ত্রুটিপূর্ণ ফাইল পরিচালনা করি তাহলে আপনার প্রোগ্রাম খুব অপেশাদারী হতে পারে এবং এই অ্যাপ্লিকেশন এ নিরাপত্তা ঝুঁকি থেকে যাবে যা আমাদের মটেই কাম্য নয়।
সুতরাং পিএইচপি স্ক্রিপ্ট এ কোন প্রকার ত্রুটি রয়েছে কিনা তা নির্ধারণ করা একটি গুরুত্বপূর্ণ অংশ।

এই টিউটোরিয়ালটিতে আমরা পিএইচপি প্রোগ্রামিং এর কিছু সাধারণ ভুল রয়েছে তা সমাধান সহ বেশ কিছু জিনিস শিখবো। আমরা সমাধানের জন্য নিম্নোক্ত দুটি পদ্ধতি বর্ণনা করব।

“die()” statements এর সাহায্যে কিভাবে error handling করা যায় তা আলোচনা করব।


<?php
 $file=fopen("welcome.txt","r");
 ?>

 

প্রথমে আমরা একটি স্ক্রিপ্ট লিখব যা একটি .txt ফাইল খুলার নির্দেশ বহন করছে।


<?php
$file=fopen("welcome.txt","r");
?>

 

এখন যদি মূল পিএইচপি এর জন্য বরাদ্দকৃত ফোল্ডার এ এই welcome.txt ফাইলটির কোন অস্তিত্ব না থাকে তাহলে আমরা নিম্নক্ত error message পাব।


Warning: fopen(welcome.txt) [function.fopen]: failed to open stream:
No such file or directory in C:\webfolder\test.php on line 2


 

উপরোক্ত error messege দেখে খুব সহজেই বোঝা জাচ্ছে যে আমাদের webfolder এ welcome.txt নামের কোন ফাইল compiler খুজে পায় নি।

এখন আমরা “die()” statements এর সাহায্যে welcome.txt ফাইলটি আমাদের মূল webfolder এ আছে কিনা তা চেক করে দেখবো।


<?php
 if(!file_exists("welcome.txt")) {
   die("File not found");
 } else {
   $file=fopen("welcome.txt","r");
 }
 ?>

 

এই script পরিচালনা করার পর যদি ফাইলটি webfolder এ না থাকে তাহলে নিচের message টি পাবো এবং script পরিচালনা সয়ংক্রিওভাবে বন্ধ হয়ে যাবে।


“File not found”


 

এখন আমরা Custom Creator Handler এর সাহায্যে কিভাবে error handling করা যায় তা দেখবো। Custom Creator Handler এমন একটি ফাংসন যা script এ কোন error থাকলে এর সাহায্য নেয়া যাবে। এই ফাংসন এর সাহায্যে সর্বনিম্ন দুটি (error level এবং error message) থেকে পাঁচটি (file, line-number, এবং the error context) পর্যন্ত parameters ব্যবহার করা যাই।

Syntax গুলো নিম্নের নিয়মে লেখা যায়।


error_function(error_level,error_message,
error_file,error_line,error_context)

 

Parameter বর্ণনা

error_level অবশ্য প্রয়োজনীয়। এটি error report level প্রদর্শন করে থাকে এবং এর ফলাফল একটি value number হতে হবে।
error_message অবশ্য প্রয়োজনীয়। এটি error message প্রদর্শন করে থাকে।
error_file ঐচ্ছিক। এটি filename প্রদর্শন করে যেখানে error টি নম্পাদন হয়েছে।
error_line ঐচ্ছিক। এটি line number প্রদর্শন করে যেখানে error টি রয়েছে।
error_context ঐচ্ছিক। এটি একটি array নির্দিষ্ট করে, এবং script এ অন্তরভুক্ত প্রত্যেকটি variable এবং তাদের value প্রদর্শন করে থাকে।

Set Error Handler

আমরা আগেই জেনেছি যে, পিএইচপি তে Error Handler built-in থাকে। আমরা একটি function তৈরি করবো যা default error handler টিকে script পরিচালন এর সময় ব্যবহার করবো। তবে জরুরি কোন প্রয়জনে কিছু কিছু error এর জন্য default error handler টি পরিবর্তন করা যায়। নিম্নে একটি উধাহরন দেখান হল।


set_error_handler(“customError”);


 

যদি আমরা আমাদের নিজস্ব ফাংশন দিয়ে সব ত্রুটি হ্যান্ডেল করতে চাই তাহলে set_error_handler () একটি মাত্র parameter ব্যবহার করবো এবং দ্বিতীয় parameter টি error level এর জন্য ব্যাবহার করতে পারব। নিম্নে একটি উধাহরন দেখানো হল।


<?php
 //error handler function
 function customError($errno, $errstr) {
   echo "<b>Error:</b> [$errno] $errstr";
 }
 
 //set error handler
 set_error_handler("customError");
 
 //trigger error
 echo($test);
 ?>

 

এইচটিএমএল এর সিএসএস (HTML Style – CSS)

শরিফুল ইসলাম
Php Coder

 

HTML Styles – CSS

 উদাহরণ


<!DOCTYPE html>
<html>
<head>
<style>
body {background-color:lightgray}
h1   {color:blue}
p    {color:green}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

 

সিএসএস দ্বারা এইচটিএমএল কে স্টাইল করা

সিএসএস(css) এর পূর্ণ নাম হল Cascading Style Sheets ।

তিনভাবে স্টাইল কে এইচটিএমএল এর সাথে যুক্ত করা যায়

• Inline-স্টাইল attribute ব্যবহার করে এইচটিএমএল এর সাথে যুক্ত করা যায়

• Internal- <style> এলিমেন্ট এইচটিএমএল এর head সেকশন এর মধ্যে যুক্ত করা যায়

• External- এক বা একাধিক বাইরের সিএসএস ফাইল যুক্ত করে কাজ করা যায়।

তবে সব থেকে কমন হল বাইরে থেকে একটি সিএসএস ফাইল যুক্ত করা। কিন্তু আমরা এইখানে internal স্টাইল ব্যবহার করব। কারন এতে আমাদের জন্য স্টাইল এর জন্য ভিন্ন ভিন্ন ফাংশন গুলো বুজতে ঝুব সুবিধা হবে।

 

সিএসএস syntax

সিএসএস স্টাইলিং এর জন্য নিন্মোক্ত সিনটেক্স ব্যবহার করা হয়


element { property:value ; property:value }


 

এই element হল এইচটিএমএল এর একটি উপাদানের নাম। property হল সিএসএস একটি প্রপার্টি। value হল সিএসএস প্রপার্টি এর একটি মান।

অনেকগুলো স্টাইল থাকলে তাহলে সেগুলো সেমিকোলন দিয়ে আলাদা করতে হয়।

 

Inline স্টাইল (inline css)

এইচটিএমএল উপাদানের ক্ষেত্রে একটি ইউনিক স্টাইল এর জন্য inline styling খুবই উপযোগী। এই উদাহরনে ইনলাইন স্টাইল এর মাধ্যমে একটি ইউনিক heading এর টেক্সট এর কালার পরিবর্তন করা হচ্ছে

উদাহরণ


<h1 style=”color:blue”>This is a Blue Heading


 

 

Internal স্টাইল (internal css)

একটি পেজ এর সকল এইচটিএমএল উপাদানের জন্য একটি কমন স্টাইল ব্যবহার করা হয়েছে আর তা হল internal style sheet।

সাধারনত এটি <style> এলিমেন্ট এর সাহায্যে হেড সেকশন এর মধ্যে ইনক্লুড করতে হয়।

উদাহারন


<!DOCTYPE html>
<html>
<head>
<style>
body {background-color:lightgrey}
h1   {color:blue}
p    {color:green}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

 

External স্টাইল (External সিএসএস)

অনেকগুলো পেজ এর স্টাইল নিয়ন্ত্রণ করার জন্য এই পধতি চালানো হয়। এই ক্ষেত্রে মাত্র সিএসএস ফাইল এর একটি উপাদান পরিবর্তন করার মাধ্যমে বাকি সবগুলো পেজ এর পরিবর্তন করা সম্ভব। হেড সেকশন এর মধ্যে external সিএসএস ফাইল এর লিঙ্ক করে দিতে হয়।

উদাহরণ


<!DOCTYPE html>
<html>
<head>
   <link rel="stylesheet" href="styles.css">
 </head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>


 

সিএসএস ফন্টস

সিএসএস এর color প্রপার্টি দ্বারা এইচটিএমএল পেজ এর টেক্সট এর কালার কি হবে তা ডিফাইন করা হয়। সিএসএস এর font-family দ্বারা টেক্সট এর ফন্ট কোন ফন্ট হবে তা ডিফাইন করে। সিএসএস এর font-size প্রপার্টি দ্বারা টেক্সট এর আকার কতটুকু হবে তা ডিফাইন করে।

উদাহরণ


<!DOCTYPE html>
<html>
<head>
<style>
h1 {
    color:blue;
    font-family:verdana;
    font-size:300%;
}
p  {
    color:red;
    font-family:courier;
    font-size:160%;
}
</style>
</head>
<body>

<h1>This is a heading</h1>
<p>This is a paragraph.</p>

</body>
</html>

তবে <font> ট্যাগ টি এইচটিএমএল এর পুরাতন ভার্সন এ কাজ করে এইচটিএমএল৫ এ কাজ করে না।

 

সিএসএস বক্স মডেল

প্রত্যেকটি এইচটিএমএল এর উপাদানের জন্য একটি বক্স নির্দিষ্ট করা থাকে কিন্তু আমরা তখনি এটা দেখতে পারব যখন আমরা সিএসএস এর মধ্যে border প্রপার্টি ঘোষণা করব

উদাহরণ


p {
    border:1px solid black;
}

border এর মধ্যে ফাকা তৈরি করার জন্য আমরা padding প্রপার্টি ব্যবহার করব

উদাহারন


p {
    border:1px solid black;
    padding:10px;
}

বর্ডার এর বাইরে মার্জিন এর জন্য আমরা margin প্রপার্টি ব্যবহার করব

উদাহরণ


p {
    border:1px solid black;
    padding:10px;
    margin:30px;
 }

সিএসএস উদাহরণ এ px ব্যবহার করা হয়েছে এতে পিক্সেল বুঝায়

 

ID Attribute

উপরের সবগুলো উদাহরণ এ সিএসএস এর সাধারন নিয়ম ব্যবহার করা হয়েছে।

যদি কোন একটি নির্দিষ্ট স্টাইল নির্দিষ্ট কোন এইচটিএমএল এর উপাদানের ক্ষেত্রে প্রয়োগ করতে হয় তাহলে id attribute প্রথমে এইচটিএমএল এর মধ্যে যোগ করতে হবে

উদাহরণ


<p id=”p01″>I am different</p>


 

এরপর id কে সিএসএস এর মধ্যে কল করে স্টাইল যোগ করতে হবে

উদাহরণ


p#p01 {
    color:blue;
}


 

Class attribute

কোন নির্দিষ্ট উপাদানের ধরন পরিবর্তন করার জন্য ক্লাস (class) attribute এইচটিএমএল এর উপাদানের মধ্যে যোগ করতে হয়

উদাহরণ


<p class=”error”>I am different</p>


একন আপনি নির্দিষ্ট ক্লাস এর সাথে সকল এলিমেন্ট এ ভিন্ন ভিন্ন স্টাইল দিতে পারবেন।

উদাহরণ


p.error {
    color:red;
}

নোটঃ id ব্যবহার করা হয় একটি ইউনিক উপাদানের জন্য এবং class ব্যবহার করা হয় একটি এলিমেন্ট এর গ্রুপ এর জন্য।

 

সীমাবদ্ধতা

পুরাতন এইচটিএমএল ভার্সন এর অনেক ট্যাগস এবং attributes ব্যবহার করা হয় স্টাইল documents এ। কিন্রু এইগুলো এইচটিএমএল ৫ এ সাপোর্ট করে না।

যে উপাদান বা elements গুলো বাদ দিতে হবে ব্যবহার করা বাদ দিতে হবে: <font>, <center> এবং <strike>.

যে attribute গুলো বাদ দিতে হবে: color এবং bgcolor

 

একনজরে প্রপার্টি গুলো

Inline styling এ এইচটিএমএল এর স্টাইল attribute এর ব্যবহার

Internal css এ এইচটিএমএল এর <style> এলিমেন্ট এর ব্যবহার

External css এ এইচটিএমএল এর <link> উপাদানের ব্যবহার

সেকশন এ <style> এবং <link> elements যুক্ত করার জন্য এইচটিএমএল এর <head> এলিমেন্ট এর ব্যবহার

Text কালার করার জন্য এ সিএসএস এর কালার প্রপার্টি এর ব্যবহার

Text এর ফন্ট নির্দারণের জন্য সিএসএস এর font-family প্রপার্টি এর ব্যবহার

Text এর ফন্ট সািইজ নির্দারণের জন্য সিএসএস এর font-size প্রপার্টি এর ব্যবহার

উপাদানের বর্ডার দেখানোর জন্য সিএসএস এর border প্রপার্টি এর ব্যবহার

বর্ডার এর ভিতরে স্পেস নির্দারনের জন্য সিএসএস এর padding প্রপার্টি এর ব্যবহার

বর্ডার এর বাহিরের দিকের স্পেস নির্দারনের জন্য সিএসএস এর margin প্রপার্টি এর ব্যবহার

এইচটিএমএল স্টাইল ট্যাগ

<style> – একটি document মধ্যে সমস্ত স্টাইল এর তথ্যকে সঙ্গায়িত করে

<link> –  document এবং external রিসোর্স ফাইল এর মধ্যে সম্পর্ক নির্দারণ করে

https://youtube.com/devicesupport

https://youtube.com/devicesupport
http://m.youtube.com

https://youtube.com/devicesupport

https://youtube.com/devicesupport
http://m.youtube.com