Specific tables
mysqldump -uusername -ppassword database-name table1,table2,table3 | gzip > db.sql.gz
You can send the files using PHP ftp_connect and ftp_put
http://php.net/manual/en/function.ftp-put.php
I prefer to use linux shell for backups kept out of root backed up to a directory out of root and a copy is also passive ftp'd to a remote backup server which is only accessible on the network not from the net itself. But I also run a ecommerce business so keeping backups is essential.