Wow, not to throw cold water on you but you may have bitten off more than you know.
For myself I would be very hesitant to give a 4 month time frame. That type of project is so hugh I would spend a few weeks just to figure out the cost and time estimates. And then I would still way over shoot the time estimate, as you never know what you may have overlooked in your original evaluation of the project. I would likely be more inclined to break the project into many different parts and give them a time frame for each segment. This way the clients testing and changes gets done, in a time frame not part of your estimate, after you have completed a segment, then once a segment is good on to the next. So even if all the various segments combined time breaks down to be 4 months, the extra time for testing and afterthought changes, by the client, after a segments delivery, could extend it to double the original combined time estimate.
Now, off the top of my head to build exactly what facebook has I would think it would take even the best programmers much longer than 4 months, by themselves. Maybe a full programing team could do it in a few months.
If you wish to just have something simple, like where a user posts on a "wall" and then "friends" can be approved to see it, you maybe able to do that in 4 months.
But before you can do even that, you need to know HTML and CSS inside and out, first. You should be able to, from memory, do 80% to 90% of all your HTML and CSS. I see a lot of new programmers trying to learn both php and html at the same time and they run into a lot of trouble when they don't understand the differences between them and how they each work, independent of the other.
After HTML and CSS you will need to have a moderate knowledge of PHP, Javascript and MySQL. But even at a moderate knowledge you will still have to learn some.
As for any tutorial it will get you started with php but that is all. The level of knowledge you need for this project is well beyond that of any tutorial and mostly comes through experience.
Best of luck in the project. Whether you complete in time of not I am sure you will learn a lot.
A quick tip. You should start by making a plan. I usually make an outline (point, sub-point, sub-sub-point, ect) and for large project a diagram of the sites architecture. These helps a ton in knowing, in advance, all the parts you will need to assemble and how they will interact with other parts so you can write the code for the parts not yet made and not have to come back and completely redo what you thought you had finished.