Veja seus espaços reservados nomeados:
(:User_Name, :billingemail, :password, :purchasedata, :active_code)
e
$stmt->bindparam(":user_name",$uname);
$stmt->bindparam(":user_mail",$email);
$stmt->bindparam(":user_pass",$password);
$stmt->bindparam(":active_code",$code);
$stmt->bindparam(":purchasedata",$purchasedata);
- Eles não correspondem.
Cada espaço reservado nomeado deve correspondência e em letras maiúsculas.
Exemplo:
:user_name
e :User_Name
não o mesmo. então aqui:
(:user_name, :user_mail, :user_pass, :purchasedata, :active_code)
O manual é bastante explícito sobre isso:
e não vá viver com isso usando MD5, não é mais seguro.
Use
password_hash()
:Verificar erros:
- http://php.net/manual/en/pdo. tratamento de erros.php
- http://php.net/manual/en/function. relatório de erros.php
e verifique se os nomes das colunas estão corretos e se as letras podem ser um fator.