the error now returns:
No user found with that name.
That's perfect!
That means that the username you searched for wasn't in the database. That's good because it means there were no errors. You connected to the database, you performed a query but it returned 0 results.
Now, all you have to do is add a user to the database and search for them.
Binding params is relatively new to php. It's purpose is to prevent things like SQL injection when getting query strings like $_GET. Basically, the way it works is this.
In your query you substitute the ? for the insecure variables you want to put in the query.
You then prepare the query. Then you bind the variables to the query. In the bind_param the 's' simply tells the bind command that you're passing a string and it substitutes the first ? (which it now knows is a string) for the $_GET["name"]. If you have say 3 ?'s in your query:
SELECT id from user where username = ? and birthday = ? and country = ?
$stmt->bind_param("sss", $_GET["username"], $_GET["birthday"], $_GET["country"])
Then, you execute the query and finally get the results.
Very glad you got it working!