I have many years of experience delivering custom application solutions with MS SQL Server and .Net. I also have some past experience with PHP.
I have a few questions:
Are the local and remote databases exactly the same?
If so, have you considered replication, mirroring or automating restore of a backup?
How many tables need to be synced up?
About how many records would change between each sync cycle?
How up to date does the remote database need to be (up to the minute, hour, day)?
Does the synchronization need to work both ways? Do changes on the remote db need to appear on the local one?
I can create a .Net application (either web or desktop) that reads data from the local database and calls a RESTful API. It can keep track of the last changes by a timestamp or log and look for records that have been added, updated or deleted since the last time it ran.
I can also create the PHP or .Net web application which exposes the RETSful API that accepts the data from the local .Net application. This web application will provide some validation and then update the remote database accordingly. The API will need to be secured with at least a user name and password to prevent abuse.
Message me to discuss the details so that I can provide a more accurate estimation of the cost.