1

My coding background has been always related to Microsoft, so my main coding strengths are C#, Winforms, ASP.NET Webforms and MVC and SQL Server.

I've been given the task to build a PHP app with cloud storage, the app must manage user accounts (logins and registration) and is mainly focused on storing text from user input and making it available from any pc or mobile device said user logs in.

In the future i need something that also can manage users schedules, appointments and alerts, also users in a teacher/student like hierarchy, and reportability.

  1. Seems like i need a MVC PHP framework and some kind of database, based on my needs, any suggestions?

  2. Any cloud database provider good for a php app? i've been looking for Google Cloud SQL Database, abd Amazon EC2. Are they any good for my needs or should i be looking to something else? (i.e. NOT a cloud database or some NoSQL solution)

Thanks in advance

0

Your project breaks down to three pieces:

  1. Responsive Front-end
  2. PHP Framework
  3. Some MySQL/MariaDB solution

Suggestions for a solution:

  1. If you don't have a solution for the front-end, you might as well try to implement Bootstrap, maybe buy one of the many templates out there.
  2. Your options are basically CakePHP, Laravel, Symphony, Zend, or implementing the MVC yourself.
    • To my knowledge, Symphony and Zend take too long to get up and are not new programmer friendly.
    • An MVC pattern shouldn't be difficult to implement, and may give you the practice you need to be effective in PHP for the project. There are PHP tutorials on the web.
    • Cake is the easiest, and it is well documented, and fantastic with CRUD applications. It make take you a couple of tries to get it working perfectly, but it is good. It can get in your way with its assumptions and requires you to build and finalize your database first to be effective. Use CakePHP if it is a one-off job.
    • If you are planning on doing more PHP work, look into Laravel. It is in active development, and there are other projects such as CMSs based on it. Its ORM and Template are supposed to be solid. Laravel knowledge also seems to be in demand.
  3. Where you host your database is secondary to its design, keep that in mind. Consider:
    • You can always host the database on the same web server.
    • Evaluate based on cost. It is almost trivial to connect a database to a PHP application, so migrating between one host to another is a matter of backing up and creating a new instance somewhere. If one service doesn't work, your only concern is downtime and testing.
    • You can use other types of databases, but any future maintainers will be most familiar with the traditional PHP/Mysql stack. Determine if previous SQL Server providers are a more viable option.
    • With that said, EC2 has worked well at my previous employers, and Google is Google.
  • Well, that looks more than enough to start looking, thanks! – FuuRe Oct 24 '14 at 18:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.