Spójrz na swoje nazwane symbole zastępcze:
(:User_Name, :billingemail, :password, :purchasedata, :active_code)
i
$stmt->bindparam(":user_name",$uname);
$stmt->bindparam(":user_mail",$email);
$stmt->bindparam(":user_pass",$password);
$stmt->bindparam(":active_code",$code);
$stmt->bindparam(":purchasedata",$purchasedata);
- Nie pasują.
Każdy nazwany symbol zastępczy musi dopasuj i literami.
Przykład:
:user_name
i :User_Name
są nie to samo.
więc tutaj:
(:user_name, :user_mail, :user_pass, :purchasedata, :active_code)
Instrukcja jest na ten temat dość jednoznaczna:
i nie korzystaj z tego przy użyciu MD5, nie jest to już bezpieczne.
Użyj password_hash()
:
Sprawdź błędy:
- http://php.net/manual/en/pdo. obsługa błędów.php
- http://php.net/manual/en/function. raportowanie-błędów.php
i upewnij się, że nazwy kolumn są poprawne, a wielkość liter może być czynnikiem.