Synchronization without tables is pretty intuitive. All you have to do is upload your working local files to the live server. First, when tables are involved we have to consider how the table will translate to the live MySQL server. Second, we need our connection script(s) to connect to the live MySQL server, which in most cases will have different paths, users, and passwords. Finally we have to consider which tables to modify, local or remote.
We need to use MySQL statements to create the live tables. PHPMyAdmin makes this easy in its export feature. Most web hosts provide a live PHPMyAdmin which allows us to transfer our local to the live rather seamlessly.
Having our connection script in a seperate document makes it easy for us to updateour web application in a single move. However, changing the live and local, and synching files can create hassles. instead of having a seperate connection script for the live and local version, we can use conditional logic to determine which server the script resides.
The global $_SERVER array can give the designer feedback on a number of server elements. Try a foreach on this global variables to see what is available.
In a basic database driven website this is less of an issue, because most of the table changes are from a single user - the web author. Once the datbase begins taking additional user management, the author has to determine what content has changed on the4 database and when.
For example, if the author manages a users table locally, and new users are adding themselsves the the live version, the author risks the chance of removing those new user records when synchronizing the local tables to the live version.
Authors will soon learn the nature of this obstcale once data management and development occurs from more than one party.