We have developed a job-portal where users can view jobs and and also post jobs. We have used Php and MySQL. We hosted this on web faction. Now we want to develop the mobile app of the job portal for android, ios and windows. As the database should be synchronous and aligned dynamically with apps and website database. As the back-end code has to be changed to Java in android and c# in windows, how to manage a single synchronous database?
You need a Service Oriented Architecture. Because you are sharing data across all those platforms, Web Services..
Basically rather that calling a "function" you make an HTTP request to a URL, parameters are passed in via the query string or Http header. XML or JSON is returned. Read up on it.
Thing is, your app need to be online at all times...
There are several ways to manage that.
At the lowest level, you can let the database server take care of it. If all applications connect to the same database on the same server and you correctly use SQL transactions, the MySQL server will ensure everyone sees a consistent view of the database.
But if you already need the internet connection to reach the database, why not have there a single web-server that manages the business logic together with the database access and returns the results in a format digestible for the various front-ends (android app, ios app, windows program, website). That way you only have to write the business logic once and only the front-end specific presentation code has to be written for each supported platform.