Wow, thanks for the link to php videos! Didn't think there would be a site like that. (used to go to youtube for php videos, although there are only a few). Should come in handy for some friends trying to learn!
I learned the basics such as how to create an array, define a variable, use if statements ect. and then just took apart existing scripts to see how they worked. Good luck!
I just read a book and started coding before I finished the third chapter. When I ran into things I needed a script to do that I couldn't code, I looked for open source solutions. And when those solutions didn't fit completely, I tore the code apart and rewrote it. Now I have a php system running on localhost on my computer as a control panel that integrates all of my websites. So you can learn a lot just by plugging along.
I learned vanilla ASP in college as the primary dynamic web language. When I got my current job, they were tentatively using ASP for the intranet site. One week after hiring me, they decided to go with a LAMP setup. Poof! I was up to my armpits in PHP. I learned through the O'Reilly books, w3schools, and existing code on our corporate websites. Now I've practically forgotten all the ASP I learned and am much more comfortable in PHP.
I learned HTML and Pascal in high school, and that mostly set the tone for the languages I learned later. I'm no programming pro, but I'm handy with most code.
With videos which i found from a torrent, online course to be exact from a guy named Mustaffa something like that and with lots of exercise
If you got a hosting, I think best way to learn is to try to code some examples and see the results.. Once you do it, I think you will never forget it
After learning html (pre-requisite), php was all about baby steps. Didn't touch my first sql db until about a year into it. I used just used it to make my life easier with includes & simple stuff. Learning these days must be much easier. 95% of the code you will ever need is laying around the internet somewhere (del.icio.us, sourceforge, php.net, google, jux2) so all you really have to know to make a pretty impressive site is there for you without much modification.
The best resource to use is google. For example, I didn't know how to make a random number with google, so I typed in random number php. If that didnt work, I also like to use: inurl:forums random number php or sitehp.net random number One way or another, someone will have tried to do it before. Note: don't look for "my php site ideas" as that probably won't work the way you want it to. Look for specific things, like random number, mysql, etc.