Doesn't look too bad.
You may leave away the html and head tags and replace them by php code (the closing head tag is missing a slash anyway).
Here's an example php to just echo your parameters:
$json = file_get_contents('php://input');
$data = json_decode($json, true);
echo "PHP: name:".$data["name"]." score: ".$data["score"]."\n";
(I chose text/plain because, like in your script the php script only outputs text here)
Then you should check the output of the request in your godot code to see if and what the script returns. Sometimes it might also run on an error and you might have to check the web server error log.
You're directly addressing $HTTPRequest in your code. So I guess there exists a child node "HTTPRequest", right?
You could add that to ´_ready()`
$HTTPRequest.connect("request_completed", self, "_http_request_completed")
And then add a simple output handler:
func _http_request_completed(result, response_code, headers, body):
print("rc: "+str(response_code)+", result: "+str(result),", body: "+body.get_string_from_utf8())