It seems to be that you're looking to do a POST
request. POST requests work, in PHP, identically to GET requests, just use the $_POST
superglobal instead of the $_GET
superglobal to get POST request parameters.
In a POST request, the data is sent just like GET (with a few disregardable differences), however it is not visible in the URL, so it fits the description of what you'd like perfectly. Send data like GET, but without user seeing it in the URL.
Example HTML form:
<form method="post" action="handler.php">
<input type="text" name="username"></input>
</form>
Then if the user submitted this form, you could get the post parameter "username" in PHP just as you would for GET.
<?php
$username = $_POST["username"];
?>
Then use it to your liking!
Also, it'd be remiss of me not to mention the intended usages of POST/GET requests. Traditionally, POST requests should be used when data is being sent to the server for storage/usage later such as in a database or online forum. Alternatively GET requests should be used for requesting ("getting") data from the server, and not providing data that will be stored. Using requests in this way is a best practice, but often ignored as it's not enforced by the language but is just a principle.