This video tutorial teaches how to start with HTML5. Some basic changes that you need to know before starting to learn HTML5.
Technologies involved to learn HTML5: Javascript API. CSS3. HTML5.
Some of the things we’ll be learning throughout this course: New Elements New Attributes CSS3 Selectors Rounded Corners Shadow Effects Video and Audio 2D/3D Graphics Local Storage offline caching web workers Drag and Drop Geolocation Working with Google Maps API. Forms Sockets Canvas ..etc
HTML5 File index.html
1
2
3
4
5
6
7
8
9
10
< !doctype html>
HTML5 Tutorials: from Technotip
This is a video tutorial sponsored by or produced by Technotip.com
< !doctype html>
HTML5 Tutorials: from Technotip
This is a video tutorial sponsored by or produced by Technotip.com
Doctype: no more Googling or copy pasting or relying on your fancy text editors to get the clumsy looking doctypes. With HTML5, the doctype has been simplified and is easy to remember.
Doctypes for HTML6, HTML7 ? The doctype will stay the same for HTML5, HTML6, HTML7, HTML8, HTML9, HTML10, HTML11, HTML12 etc :-) This is a promise from W3C.
Previous HTML versions(like xHTML, HTML4, HTML4.0.1 etc) depended on SGML, but HTML5 and onwards it doesn’t depend on SGML. When the browser parses the first line(i.e., the doctype of HTML5), it’ll execute in HTML5 standards mode.
By using a doctype the browser is able to be more precise in the way it interprets and renders your pages. If you don’t specify any doctype, it still works, but it may cause the browser to render things wrongly. And it may take more time for the browser to fail gracefully, after trying to figureout all possible ways to parse the tags and to try its best to present your web pages properly.
Meta tag It has also been simplified and now, only character set information is enough.
CSS – Cascading Stylesheet
1
In HTML5 there is no need to write the type attribute with link tag. Because CSS has been declared as the standard and default style for HTML5.
JavaScript
1
In HTML5 there is no need to write the type attribute with script tag. Because JavaScript has been declared as the standard and default scripting language for HTML5.
Embeded JavaScript
1
2
3
If you’re writing embeded javascript, then you can simply start with a opening script tag and a closing script tag. Here too, you need not specify the type attribute.
Upgrade your web pages to HTML5 To upgrade your web pages to HTML5 standards, simply make these small changes: 1. doctype. 2. remove type attribute from link and script tags. 3. remove and if needed replace deprecated tags(will discuss in coming video tutorials) from your website.
In this video tutorial we shall illustrate the use of comparison operators in MongoDB.
Comparison Operators $all $in $nin – not in $ne – not equal to $gt – greater than $gte – greater than or equal to $lt – less than $lte – less than or equal to
JavaScript file load.js – in path: C:/test/load.js
db.person.insert({
name : 'Satish',
age : 25,
skills : ['nodejs', 'mongoDB', 'HTML5']
});
db.person.insert({
name : 'Kiran',
age : 27,
skills : ['PHP', 'mySQL', 'HTML5']
});
db.person.insert({
name : 'Sunitha',
age : 24,
skills : ['html', 'ASP']
});
db.person.insert({
name : 'Jyothi',
age : 23,
skills : ['html', 'ASP']
});
db.person.insert({
name : 'Varsha',
age : 30,
skills : ['.NET', 'Java']
});
db.person.insert({
name : 'Amogh',
age : 29,
skills : ['C#', 'ASP']
});
db.person.insert({
name : 'Satish',
age : 25,
skills : ['nodejs', 'mongoDB', 'HTML5']
});
db.person.insert({
name : 'Kiran',
age : 27,
skills : ['PHP', 'mySQL', 'HTML5']
});
db.person.insert({
name : 'Sunitha',
age : 24,
skills : ['html', 'ASP']
});
db.person.insert({
name : 'Jyothi',
age : 23,
skills : ['html', 'ASP']
});
db.person.insert({
name : 'Varsha',
age : 30,
skills : ['.NET', 'Java']
});
db.person.insert({
name : 'Amogh',
age : 29,
skills : ['C#', 'ASP']
});
This JavaScript file contains some simple data, to be inserted into MongoDB server. It contains, persons name, age and skills(in array form) person is the collection name, we’re creating.
C:\mongodb>cd bin
C:\mongodb\bin>mongo 127.0.0.1/satish C:/temp/load.js
MongoDB shell version: 2.4.3
connecting to: 127.0.0.1/satish
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.3
connecting to: test
C:\mongodb>cd bin
C:\mongodb\bin>mongo 127.0.0.1/satish C:/temp/load.js
MongoDB shell version: 2.4.3
connecting to: 127.0.0.1/satish
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.3
connecting to: test
Once these data/documents are loaded into new database, we start operating on this data using comparison operator.
$lt – less than – Matches vales that are less than the value specified in the query. $lte – less than or equal to – Matches values that are less than or equal to the value specified in the query.
Here we’re inserting some data/record/documents into the collection person.
Database’s Before running the script
1
2
3
4
5
6
7
8
9
10
11
12
13
C:\>cd mongodb
C:\mongodb>cd bin
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.3
connecting to: test
> show dbs
admin 0.203125GB
company 0.203125GB
local 0.078125GB
> exit
bye
C:\>cd mongodb
C:\mongodb>cd bin
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.3
connecting to: test
> show dbs
admin 0.203125GB
company 0.203125GB
local 0.078125GB
> exit
bye
Before running the script, we have only 3 databases.
Running the script
1
2
3
C:\mongodb\bin>mongo 127.0.0.1/satish C:/temp/load.js
MongoDB shell version: 2.4.3
connecting to: 127.0.0.1/satish
C:\mongodb\bin>mongo 127.0.0.1/satish C:/temp/load.js
MongoDB shell version: 2.4.3
connecting to: 127.0.0.1/satish
Here, mongo is the JavaScript shall. 127.0.0.1 is nothing but our localhost. satish is the new database we are creating. C:/temp/load.js is the path of load.js file. We’re loading the contents of load.js file into new database satish.
Database’s After running the script
1
2
3
4
5
6
7
8
9
10
11
12
13
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.3
connecting to: test
> show dbs
admin 0.203125GB
company 0.203125GB
local 0.078125GB
satish 0.203125GB
> use satish
switched to db satish
> show collections
person
system.indexes
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.3
connecting to: test
> show dbs
admin 0.203125GB
company 0.203125GB
local 0.078125GB
satish 0.203125GB
> use satish
switched to db satish
> show collections
person
system.indexes
New database satish has been added and it has person collection, which we loaded from the JavaScript file.
Note: This method will be handy while migrating our application from one mongoDB server to another mongoDB server. There is import/export options in mongoDB, but this method is also helpful if we have some custom data to be inserted. nontheless a useful tool to have.
1 or true means, those {key: value} pairs need to be returned. 0 or false means, excluding those {key: value} pairs, all other {key: value} pairs(records) needs to be returned.
> db.info.find({name: 'Apple'}, {product: true, emp_no: false}).forEach(printjson);
Wed May 08 12:11:30.184 JavaScript execution failed: error: {
"$err" : "You cannot currently mix including and excluding fields.
Contact us if this is an issue.",
"code" : 10053
} at src/mongo/shell/query.js:L128
> db.info.find({name: 'Apple'}, {product: 0, emp_no: 1}).forEach(printjson);
Wed May 08 12:11:40.840 JavaScript execution failed: error: {
"$err" : "You cannot currently mix including and excluding fields.
Contact us if this is an issue.",
"code" : 10053
} at src/mongo/shell/query.js:L128
> db.info.find({name: 'Apple'}, {product: true, emp_no: false}).forEach(printjson);
Wed May 08 12:11:30.184 JavaScript execution failed: error: { "$err" : "You cannot currently mix including and excluding fields. Contact us if this is an issue.", "code" : 10053
} at src/mongo/shell/query.js:L128
> db.info.find({name: 'Apple'}, {product: 0, emp_no: 1}).forEach(printjson);
Wed May 08 12:11:40.840 JavaScript execution failed: error: { "$err" : "You cannot currently mix including and excluding fields. Contact us if this is an issue.", "code" : 10053
} at src/mongo/shell/query.js:L128
We can not combine true(1) and false(0) together in the second parameter.
Special Provision! But we can do it with _id(ObjectId)
Operation of second document/record in ‘info’ collection. This illustrates that the syntax for sub-objects, array and the normal key/value pair is same.
If we use findOne() method on this collection, and the condition being the name key, then the oldest document will be returned. Only one key: value pair is returned, as findOne() returns only single object.
In this video tutorial we shall learn about normalization, and the way mongoDB handles relationship between two collections(Primary Key and Foreign Key concept in RDBMS)
Normalization: It refers to the process of organizing the data to minimize redundancy and dependency.
There is no 1 way of doing this in mongoDB. You could implement it according to the needs of your application.
For Example, Normalization is good in the application wherein we do more of write operation. De-normalization is good, wherein we only read.
In today’s tutorial, we shall see how we can implement relationship between two collections/tables and query the database using this relationship.
Here we store the _id value present in the second record of info collection inside first record’s company_id field of ceo collection. This way we build a relation between two collections info and ceo.
Next, we query mongoDB to get some results based on this relationship.
This command(in first line) retrieves the document in the ‘info’ collection which matches the company_id value present in ceo collection and _id of info collection.
Note: In traditional database systems(RDBMS) we accomplish the same by using primary key and foreign key concept. And make use of JOINS (Equi JOIN, RIGHT JOIN, LEFT JOIN) to query the database, which actually consumes more time and resources. In mongoDB, there is no need of JOIN’s and hence is faster than RDBMS.