<p>I am currently working on a web application that uses PHP and MySQL, but I do not have shell access to the server (working on that problem already...).  Currently, I have source control with subversion on my local computer and I have a database on the local computer that I make all changes to.  Then, once I've tested all the updates on my local computer I deploy the site manually.  I use filezilla to upload the updated files and then dump my local database and import it on the deployment server.</p>

<p>Obviously, my current solution is not anywhere near ideal.  For one major thing, I need a way to avoid copying my .svn files...  Does anyone know what the best solution for this particular setup would be?  I've looked into Capistrano a bit and Ant, but both of those look like it would be a problem that I do not have shell access...</p>

I'm using
Weex
to synchronize a server via FTP. Weex is basically a non-interactive FTP client that automatically uploads and deletes files/directories on the remote server. It can be configured to not upload certain paths (like SVN directories), as well as to keep certain remote paths (like Log directories).
Unfortunately I have no solution at hand to synchronize MySQL databases as well...
Maybe you could log your database changes in "SQL patch scripts" (or use complete dumps), upload those with Weex and call a remote PHP script that executes the SQL patches afterwards.