Los datos enviados en mysql es 0?

Así que, acabo de crear un formulario de registro de usuario simple.

Y aquí está el código para ello:

    Login or SignUp   

Signup

Email:
Username:
Name:
Password:
Confirm Password:
prepare($sql)){ $statement->bindParam(':username', $username); $param_username = trim($_POST['username']); if($statement->execute()){ if($statement->rowCount() == 1){ $username_err = "This username is already taken."; } else { $username = trim($_POST['username']); } } unset($statement); } } // Validate Password if(empty(trim($_POST['password']))){ $password_err = "Please enter a password."; } elseif(strlen(trim($_POST['password'])) prepare($sql)){ $statement->bindParam(':username', $param_username); $statement->bindParam(':password', $param_password); $statement->bindParam(':user_name', $param_user_name); $statement->bindParam(':email', $param_user_email); $param_username = $username; $param_password = password_hash($password, PASSWORD_DEFAULT); $param_user_email = $email; $param_user_name = $_POST['name']; if($statement->execute()){ header("location: login.php"); } else { echo "Something went wrong. Please try again later."; } } unset($statement); } unset($connect); } ?>

Pero cuando estoy enviando esos datos, el valor almacenado en la tabla mysql es 0 para todos los campos.

¿¿¿Que esta mal aquí???