So, if I wanted to make a website, what language would I have to learn? HTML, XHTML, PHP, Javascript? I have no idea what the difference is between them.
HTML is a must, Period. Unless your going with a hosting site with ftp. Now if you want your sight to do anything cool like upload files, or stuff, your probably needing some javascript knowledge. You could use many program languages in a website from perl-my favorite- to things like C and ruby and many others. Torrent some beginer's guides to figure out what exactly you want your website to do, then you can figure out what you will need to know.
Rollback Post to RevisionRollBack
If you found me helpful, How about some added reputation?
If you want to make a good looking site with functionality(login, member area, etc), you will need to know HTML, CSS, PHP and Javascript. If you just want to make a text based site, HTML is all you would need.
You would have to make sure the server your site is hosted on allows PHP and other scripting languages, I recommend XAMPP for learning the scripting and learning HTML and others.
thanks for the quick replys. On thenewbostons site, he has a playlist for xhtml and css, so would that be good? I am pretty good at c++ and thought it would be cool to get into web development and design.
thanks for the quick replys. On thenewbostons site, he has a playlist for xhtml and css, so would that be good? I am pretty good at c++ and thought it would be cool to get into web development and design.
You should also check out w3schools.com for great tutorials.
But also note that w3schools has no affiliation with W3C, and that some of the information could be wrong/outdated.
Start with HTML. HTML is the backbone of a page. All the content is here.
Go to CSS. CSS is what styles your page and makes it look good.
Then Javascript/jQuery, for some added form and functionality. (jQuery is a library for Javascript, it basically tries to make scripting easier and more powerful)
PHP for things like login forms, submitting and storing information. All depending, you might want to learn MySQL as well. PHP can take information that it's given and produce HTML on the page based on what info it's given and how it's told to process it. MySQL can store values (usernames, passwords, etc) for future reference. PHP and MySQL go hand in hand.
Take that and compare that to what site you want to make.
You will probably want to start with the basics. I recommend starting with HTML and then going to CSS. After that, go to php. Others may recommend a different order.
You can find really good HTML and CSS tutorials at the site below. I find their tutorials to be current. http://www.w3schools.com
Now if you want your sight to do anything cool like upload files, or stuff, your probably needing some javascript knowledge.
Just a note: Javascript alone won't let you upload a file (not even with AJAX). Javascript is run client-side, so it can't access the filesystem of the server. You need to know a server-side language/framework (such as PHP or ASP.Net) in order to have anything be uploaded.
Now, through AJAX, you can have the Javascript send a request to the server. That request will then be handled by the server-side language, which is what will actually commit the upload to the filesystem. You don't actually need the Javascript to do that, though. All the AJAX does is allow you to generate requests and receive responses without needing to reload the page.
Anyways, to the OP:
Websites are a stack of technologies. In order to get the most out of your site, you need to know at least one of the languages at each layer. You should also learn what each of the layers does. I'll give you a rundown:
Client-Side Presentation What it Does: This is the stuff people see. It gets sent to a browser as part of a response from a web-server. It comes in the form of a Document Object Model which is then parsed and rendered by the web browser. By itself, it's static. It's for display/data organization purposes only.
Languages Used:
-HTML
-XML
-CSS
Client-Side Scripting What it Does: These can add some interactivity to your site. Javascript is run on the client's browser and is used for manipulating the DOM, usually being triggered by events. Things like Actionscript are interpreted by outside programs and don't really interact with the DOM. All of these can generate and receive requests.
Languages Used
-Javascript
-Actionscript
-Silverlight
Server Request Handling What it Does: Before a request is acted upon, you have the chance to transform it at the sever level. As an example of what you can achieve with this, go to any blog made with modern blogging software. As you move throughout the blog, you'll notice that the URL is formatted oddly, something like (www.blogname.com/page/2/). That's actually a cleverly-disguised GET request. The request's URL is intercepted at this level and then transformed so the server can handle it. It's pretty neat.
Languages Used:
-Regular Expressions (for Apache, not sure how to do the same on IIS)
Server-side Scripting What it Does: This lets you generate responses. The output of these scripts is sent directly to the client. With Apache, that request doesn't get modified any. With IIS, it swaps out any objects you have with their HTML representations before sending it on. What separates this from the client-side scripting layer is access to the server's resources, including any databases. It's far more powerful and loads more secure (client-side scripts can be modified by the client, so they're useless for security).
Languages Used:
-PHP
-ASP.Net
-Ruby on Rails
-Plenty of others
Database System What it Does: The database system allows you to not only store data but also work with that data. Be sure to learn how to actually use a database. Databases are powerful tools, capable of so much more than just storing data, and all too many people under-utilize them. They're highly optimized for what they do, so use them as much as you can.
Languages Used:
-ANSI SQL (and all of its flavors)
If you found me helpful, How about some added reputation?
You should probably want to learn HTML first.
okay thanks
But also note that w3schools has no affiliation with W3C, and that some of the information could be wrong/outdated.
Start with HTML. HTML is the backbone of a page. All the content is here.
Go to CSS. CSS is what styles your page and makes it look good.
Then Javascript/jQuery, for some added form and functionality. (jQuery is a library for Javascript, it basically tries to make scripting easier and more powerful)
PHP for things like login forms, submitting and storing information. All depending, you might want to learn MySQL as well. PHP can take information that it's given and produce HTML on the page based on what info it's given and how it's told to process it. MySQL can store values (usernames, passwords, etc) for future reference. PHP and MySQL go hand in hand.
Take that and compare that to what site you want to make.
You can find really good HTML and CSS tutorials at the site below. I find their tutorials to be current.
http://www.w3schools.com
Twitter: http://twitter.com/zuinag
Just a note: Javascript alone won't let you upload a file (not even with AJAX). Javascript is run client-side, so it can't access the filesystem of the server. You need to know a server-side language/framework (such as PHP or ASP.Net) in order to have anything be uploaded.
Now, through AJAX, you can have the Javascript send a request to the server. That request will then be handled by the server-side language, which is what will actually commit the upload to the filesystem. You don't actually need the Javascript to do that, though. All the AJAX does is allow you to generate requests and receive responses without needing to reload the page.
Anyways, to the OP:
Websites are a stack of technologies. In order to get the most out of your site, you need to know at least one of the languages at each layer. You should also learn what each of the layers does. I'll give you a rundown:
Client-Side Presentation
What it Does: This is the stuff people see. It gets sent to a browser as part of a response from a web-server. It comes in the form of a Document Object Model which is then parsed and rendered by the web browser. By itself, it's static. It's for display/data organization purposes only.
Languages Used:
-HTML
-XML
-CSS
Client-Side Scripting
What it Does: These can add some interactivity to your site. Javascript is run on the client's browser and is used for manipulating the DOM, usually being triggered by events. Things like Actionscript are interpreted by outside programs and don't really interact with the DOM. All of these can generate and receive requests.
Languages Used
-Javascript
-Actionscript
-Silverlight
Server Request Handling
What it Does: Before a request is acted upon, you have the chance to transform it at the sever level. As an example of what you can achieve with this, go to any blog made with modern blogging software. As you move throughout the blog, you'll notice that the URL is formatted oddly, something like (www.blogname.com/page/2/). That's actually a cleverly-disguised GET request. The request's URL is intercepted at this level and then transformed so the server can handle it. It's pretty neat.
Languages Used:
-Regular Expressions (for Apache, not sure how to do the same on IIS)
Server-side Scripting
What it Does: This lets you generate responses. The output of these scripts is sent directly to the client. With Apache, that request doesn't get modified any. With IIS, it swaps out any objects you have with their HTML representations before sending it on. What separates this from the client-side scripting layer is access to the server's resources, including any databases. It's far more powerful and loads more secure (client-side scripts can be modified by the client, so they're useless for security).
Languages Used:
-PHP
-ASP.Net
-Ruby on Rails
-Plenty of others
Database System
What it Does: The database system allows you to not only store data but also work with that data. Be sure to learn how to actually use a database. Databases are powerful tools, capable of so much more than just storing data, and all too many people under-utilize them. They're highly optimized for what they do, so use them as much as you can.
Languages Used:
-ANSI SQL (and all of its flavors)