Погледнете наименуваните заместители:
(:User_Name, :billingemail, :password, :purchasedata, :active_code)
и
$stmt->bindparam(":user_name",$uname);
$stmt->bindparam(":user_mail",$email);
$stmt->bindparam(":user_pass",$password);
$stmt->bindparam(":active_code",$code);
$stmt->bindparam(":purchasedata",$purchasedata);
- Не съвпадат.
Всеки именуван контейнер трябва съвпадение и с главни букви.
Пример:
:user_name
и :User_Name
сане същото.
така че тук:
(:user_name, :user_mail, :user_pass, :purchasedata, :active_code)
Ръководството е доста изрично по този въпрос:
и не влизайте на живо с това при използване на MD5, вече не е безопасно.
Използвайте password_hash()
:
Проверете за грешки:
- http://php.net/manual/en/pdo. error-handling.php
- http://php.net/manual/en/function. error-reporting.php
и се уверете, че имената на колоните ви са правилни и буквите може да са фактор.