So when I upload this to my website FTP, it should parse and work correctly?
XAMPP is essentially a slimmed down package containing most of what web hosts usually use (Apache, with PHP as a module or similar and MySQL for database testing) so uploading it to your site will work nearly the same as running it on your local XAMPP.
The major difference will be settings however, web hosts often restrict settings and may apply PHP's safe mode which will disallow things such as fopen to be used on web addresses. Although most of safe mode's restrictions only affect specialty applications, you may not easily be able to retrieve data from an URL with PHP, which may or may not be a problem for API access.
If you have any experience with them, do you have any good tips with FTP and PHP use?
FTP is an older insecure protocol (you can capture ftp login passwords in plaintext, if somebody were able to be on your network), however it is simple to implement and is what most shared web hosts provide. Generally it is not an issue as long as you've no malware and a strongly passworded router or wireless network.
PHP wise you should always develop offline on XAMPP, trying to match settings if applicable to your web host's. Be sure to test every aspect of your application, this can help avoid putting untested code online, and have somebody use some automated script testing various exploits or malformed input (i.e. user names) to try to exploit the database.
An at least brief understanding of what you can do to secure PHP applications will be golden, such as the rule "never trust user input", always make sure that it is properly handled and cleaned, so that they cannot type anything they shouldn't.
I want to add a Google Maps API to my site. Would it be smart to have HTML with a query box that is displayed on the PHP page on a Google Maps API?
You can embed PHP within HTML (as long as it is a .php extension). For example, assume the HTML form is designed to POST (method="post") to the same page, you can use a PHP script to handle its contents (or lack of contents, such as when they first view the page)
A rough example:
<form action="thispage.php" method="post">
<input type="input" name="form_location"/>
<input type="submit"/>
</form>
<?php
if( isset($_POST['form_location']) ) {
//query the map API for the data in $_POST['form_location']
} else {
echo "No location has been entered";
}
?>
There are many ways of doing this however, and Google may allow AJAX instead of PHP.
You may wish to follow various tutorials to get used to PHP's form handling, and general interaction with user input first before moving on.
We've also various PHP tutorials in our tutorials section (there is a sticky which links to the area) and a FAQ sticky in this section as well, feel free to ask any more questions as always

Alexander.