Multi layer architecture SQL Table vs database create table schema not null primary key types decimal(5,2) date and time types enum blob update tablename set columnname = value where ... delete from tablename where ... select columnname from tablename where .. order by columname limit 3 alter table ... drop tablename describe table tablename joins nested queries (and in vs =) min and max count and average and group by insert into tablename values ( ...) database decomposition might cost speed reduces redundency and possibility of inconsistency PHP Error supression with @ isset($varname) empty($varname) Error checking with die Arrays Not really arrays indexed by key, which can be string not always the same type foreach ($array as $item) foreach($array as %key => $item) Cookies session cookies deleting cookies size and number limits what if cookies are turned off Functions default arguments Objects __construct __tostring $this->thing $this->method() vs method() class vs local vs global variables print_r header("location: ...") Variables global superglobal $_REQUEST $_COOKIE $_POST $_GET Databases Know some way to fetch data like mysqli_query mysqli_num_rows mysqli_fetch_row mysqli_connect mysqli_select_db Error checking Login Pick random number Verify random number passwords always encrypted! Know this is vulnurable to snoop attack Advertising pay cost per click vs cost per impression conversion rate matters can buy keywords, liited by region, OS, platform, etc. can buy site ads Pagerank links are votes more important pages get more votes there are blackhat and whitehat search engine optimization techniques there are contests /robots.txt