petr.pavel 19 Junior Poster

Hi Jacob,
the query for creating the database would be
create table login
`name` varchar(255),
`user` varchar(255),
`pass` varchar(255),
`birthday` date;

Please consider encrypting the password using MySQL function PASSWORD(). If your site gets hacked you won't compromise your users passwords. (It will be enough that the hacker gets their e-mails.)

I'm confused by the latest query. It uses a field 'username' but you ask for 'user'.
Also, the WHERE clause contains a hard coded value, I guess you were just testing.

I'm not sure if you know that UPDATE is for changing an existing record. INSERT is for creating a new one. If this is a 'register new account' kind of form then you want to use INSERT and not UPDATE here.

I don't see where you combine
$update_mybirthmonth, $update_mybirthday and $update_mybirthyear into $birthday.
I guess you wanted to write something like

$birthday = $update_mybirthyear.'-'.$update_mybirthmonth.'-'.$update_mybirthday;

Instead of the sequence of >=1 <= 31 (which doesn't take into account variability of number of days per month), try PHP function checkdate().

The gender select box has a wrong name. It's called update_mybirthmonth which eventually overwrites the previous select box' value.