Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 months ago.
Improve this question
I am about to start to developing backend site of a php project. Companies and site admins will login to this site and manage their data on the project.
My previous admin panel experiences were full of agony and pain. So I want to make sure that I choose correct tools for my purpose.
By the way, please note, I'm not looking for scaffolding. There won't be much tables in my database. Instead, there will be complex logic between entities.
I want clear seperation of markup and logic code and easy-to-use and standardized user-interface.
Thank you.
Edit:
I understand this is very subjective. This is why I call it suggestion. I want to try a few of chunks of code before going along with one of them.
There is no perfect answer for this, it depends a lot of your (and your team) programming experience and your project's requirements.
As it talks about PHP and backoffice, I suggest you look at symfony framework. It's a RAD framework with great admin features and tons of plugins easing backpanel developement.
I understand you don't want scaffolding, in symfony you can choose to use a very customizable admin generator or build your own forms/listings (or mix between both, using generated as a good code base and extending it).
It comes with a great separation of concerns as it uses MVC paradigm, but aside from MVC it has form management sub-framework which can help a lot developing backoffice.
Be careful if you're not familiar with PHP5 OOP and MVC it could be little complex to learn and understand, but if your planning could allow you to have time to learn symfony programming, it's an experience I would recommand to every PHP developer.
This framework is very well documented, and as an introduction tutorial they offer a class around a website example with its backend application.
Of course, this is subjective and others would perhaps recommend you other choices.
Only recently went through a couple of frameworks about a month ago for a site I was working on and found CodeIgniter was easiest to get up and running and had the best documentation and tutorials.
http://codeigniter.com/
Alternatives are symphony, cakePHP and Kohona
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
Learning PHP, the most frustrating hurdle for me seems to be weeding through outdated tutorials, blog and forum posts to find relevant, modern guides.
I want to understand how to implement saving sessions data to databases the right way. However, most of the instructions I can find regard custom session handlers, and seem to be many years old, and this concerns me. I don't want to waste my time learning outdated procedures. Are custom handlers still the way to accomplish this? Are there better/newer modes of storing sessions to db's? I would greatly appreciate anyone taking the time to point me in the right direction. Many thanks!
To confirm what #rickdenhaan was saying in comments, custom handlers is the right way to go.
PHP doesn't provide a lot of different session handles. Maybe because Zend (which supports PHP) provide Zend Session tools.
To avoid reinventing the wheel you have to options :
Use a framework
That will handle all of this kind of stuff for you : session, MVC, ORM, config files etc
Most of the time this is the right choice for a new project, and Symfony and Laravel are great projects to start.
Use external modules
If you want a more modular approach, you can import externals modules with composer and create something that suits your particular needs.
This can be a great approach to refactor an existing project (either based on an old framework, or on legacy code)
And in this case, you still don't reinvent the wheel, you can use Zend Tools to handle your session :
https://github.com/zendframework/zend-session
Install it with composer and start working with it. Use it with built-in php tools session_set_save_handler()
I hope this answer your question in a broader way.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I am teaching myself web development, and right now I'm using HTML/CSS/PHP, but I am having difficulty understanding how the code for sites should be structured to avoid lots of repeat code and things like that.
I was wondering if there were some slightly complex websites that were open source, so I could view all the code (including the php) to see how things are actually done so I can create websites properly by example of these opensource sites.
If you're considering to use MVC paradigm, I would suggest you to study how a web framework is designed and implemented (such as symfony, codeigniter, yii, ror or zend), in order to learn how a big web app is structured (requests, security, cache, logins, database, forms, etc...) and then try to design and build your own one.
This will teach you a lot of valuable concepts such as:
How MVC works (Controller->Model->View)
Application Bootstrap (Single Entry Point)
Directory Structures
Database Access Layers (ORM, DAO, Abstract Factory)
Session Handling
Form creation (forms, decorators, validators)
Cache implementations and benefits
Helpers
Routing (friendly url's)
If you design your own framework propperly you'll have a base structure for all your web apps, and a lot of classes for common functionalities ready to use on your site (login, forms, html, etcetera).
You don't have to implement everything, you can use some libraries for the most complex tasks. Such as Propel or Doctrine for the ORM, or APC for the cache system, or PDO for database access, or apache mod_rewrite for rewriting urls.
I did this and learnt a lot about how to make decent web app.
SourceForge is a website that lists millions of open-source projects free for you to use and download.
Look at Q&A system OSQA.net, it's similar to StackExchange QA sites, but opensource
StackOverflow (StackExchange powered QA system) is not opensource itself, info here:
https://meta.stackexchange.com/questions/14656/is-the-stack-overflow-source-code-available
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'm looking for a content management system (CMS) written in PHP for a large and diverse website. Here's what I'm looking for:
Design flexibility -- The look and feel needs to be completely customizable. Specific pages may need to have design elements
Modular design -- I want to be able to add features myself if they're needed.
Production ready
Advanced user permissions
MySQL or Oracle
What I can sacrifice:
Steep learning curve -- I am experienced PHP and RoR developer. I'm alright with needing to take a few days/weeks to learn it.
Performance -- we don't get much traffic.
SEO -- This is on a local intranet, no need for SEO. Pretty URLs are nice, but not required.
If there isn't a CMS that meets these needs, my last option would be to build one from scratch using Kohana 3.0, which I'm already using on a daily basis.
Background: At my place of work we're looking to redesign/develop our existing website hosted on a local network. This site consists of somewhere between 600-1,000 static HTML pages, many of which contain varying design elements (like jQuery tabs). Though the site is pretty big, we probably only get around 100 hits per day. There will be customers (no coding experience) and fellow web-developers modifying the content on these pages.
http://modxcms.com/ -> modx modx modx an etomite fork
Modx's REVO release is OOP, but might not be release ready, but the EVO release is tested and true :)
it's great for modular design, design flexibility and above all extensibility.
Especially given that you are willing to go through a bit of a steeper learning curve, with some php knowledge you'll be able to get a lot out of modx. Using the "usual suspects" can be limiting in the areas of extensibility, where though it is possible, but everything can feel like a hack.
I would say the usual suspects Joomla and Drupal. Added benefit of huge communities.
I have had good experience with Etomite
It allows you to plug-in PHP code easily, it has nice template structure as well as static (Chunks) and dynamic (Snippets) modules that can easily be added to any page or template. I also found it had a good security structure. It probably does not have such a large community but the support forums are sufficiently active.
Using Joomla and TomatoCMS is so good, MVC structure
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I am planning to develop a portal using Joomla cms.
The portal has to be fully customized.
I would like to know some best tutorials and books for Joomla CMS customization.
Thanks
Really the best thing I've tried - and believe me I tried a lot - is by using Lynda.com. Its very cheap and it has some really great video tutorials about Joomla. You can also learn how to develop modules and components if you are an OOP developer.
http://www.lynda.com/search?q=joomla&x=0&y=0
Also for books I would suggest the "officials" from Core Devs of the Joomla Platform
Joomla-Programming
Joomla-Templates by Angie Radtke
In this order:
Joomla! 1.5: A User's Guide: Building a Successful Joomla! Powered Website (2nd Edition) by Barrie M. North
Joomla! 1.5 Template Design by Tessa Blakeley Silver
Learning Joomla! 1.5 Extension Development by Joseph LeBlanc
Mastering Joomla! 1.5 Extension and Framework Development: The Professional Guide to Programming Joomla! by James Kennard
Where you start on that list depends on your current ability and what your goals are. #1 is for beginners. If you want to do template design and already know html and css, then #2 is the place to start. If you are doing custom module and components and you already know PHP, then start with #3 and #4.
HowToJoomla is what you're looking for.
If you're going to be doing modules or components, the offical Joomla! wiki is by no means exhaustive, but can be useful for some common tasks. Check the 'Developers' section.
There are some decent tutorials at jlleblanc.com here:
http://www.jlleblanc.com/content/blogcategory/0/51/
If you're a bit more of a hardened dev, then the Joomla API docs can be useful, but I do admit they're hard to browse (it's not always obvious which package any given class will be in), so it's often easier to search them using Google or similar.
And there is Joomla! 1.7 - Beginner's Guide in several languages.
Joomla's documentation is mainly aimed at 1.5 right now. The API is not as documented as it could be, with a lot of method names that are things like printfooter() and the documentation says 'prints the footer' (I'm looking at you, pagination class).
The books recommended above are solid. There is a 1.7 MVC component tutorial as well that leaves out details, but between that and careful reading of source code and the Joomla API you can slowly get something out of it.
The biggest hurdle is going to be memorization. Lots of Joomla Class methods are not intuitive or the best documented (for instance, using the _() setup to run lots of arbitrary class/method combinations).
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I’m looking for a CMS based on CodeIgniter. Can you suggest what CMS I could use?
I want to learn how to build a CodeIgniter application based using a CMS as a reference.
PyroCMS have a good set of features, and modular design so you can use it as a base to develop a website. The code is in github, so you can download the latest version from it directly with ease, if you have git installed.
The creator of this CMS, Phil Sturgeon is also a member here, so you can put your question about this CMS here, and hopefully he can respond it directly.
You should all check Ionize CodeIgniter CMS
FuelCMS is the new kid on the block
ExpressionEngine 2 - costs, but is clearly the best.
PyroCMS - free and although looks ugly as sin, the v0.9.8-dev branch is very promising. Does lots more than just blogging.
DBlog - just blogging, but does it well.
You can check out Bonfire.
It is not a CMS, but a starting point for new projects build with CodeIgniter that require ready-made tools like:
User Management with Role-Based Access Control
Fully Modular codebase built around HMVC
Powerful, parent/child capable theme engine
FuelCMS comes with a decent UserGuide. have a look at the documentation for module creation. Design is very clean and takes a little time to understand the source. I've used PyroCMS as well. Its powerful yet documentation is poor(Phil Sturgeon plz make a better documentation). So FuelCMS is my pick.
Codefight CMS is based on codeigniter as well.
For free solutions, there are most probably better options available if you look beside just the Codeigniter ones. However, building sites on top of CMS's are in most cases very limiting. (Solely depending on the demanded level of the site of course.)
Take a look at this template library: https://github.com/bcit-ci/CodeIgniter/wiki/Simple-Template-Library/
Together with the active record class that codeigniter offers, you will be up and developing sites in no time at all. Without any boundaries of course!
MaxSite CMS is based on CodeIgniter. http://max-3000.com/
check ci cms, http://code.google.com/p/ci-cms/
I liked some parts of it, like modular seperation, install/uninstall for modules, themes and pretty url(seo) hyphens for the post urls.
Open Source CMS:
No CMS
CMS Canvas
Image CMS