0

I am working on a website I volounteered to do for free (because it's for an organization I'm part of, and because it will make our lives easy).

Our budget is "as low as possible", ideally 0, therefore I'm looking for free solutions before paid ones. There's just a lot of extensions and I can't try them all, therefore I'm relying on your experiences with them.

Of course, I need the basic "data from this form field gets saved in that column" functionality and the "this form field initially shows the data from that column" that is needed to edit existing rows. I guess this is pretty standard.

But then, I also need to do some more complex things that maybe are just me having to write the right JS and maybe it's something some extensions will do natively. I have no idea. I'll write down how the site works, partly as a memo for myself and partly so you can see if some functionality of this or that extension would help me more.

The event I want to manage is a gaming convention. We decide a place and time and then we warn our mailing list about the event. Anyone who wants to bring a game has a couple weeks to fill the database with their games, which are most often made of two separate parts, a ruleset (which should be reusable by anyone else who wants to bring the same game) and a custom description.

For instance the game might be "Cthulhu Death May Die" (a tabletop game) and the custom description might be a list of expansion packs used and additional rules, or it might be "D&D 4e - Fourthcore" (a roleplaying game) and an incipit for the Crucible of the Gods adventure to goad players in.

I figure that the user who wants to propose a game will be asked to select a ruleset (or create one on a popup if their game is not there) and type in a brand new description. The rulesets can not be edited without the intervention of a site admin, the descriptions can be changed by the user that created them and only until the moment in time where we pass from populating the list of games to voting on them.

(So, four tables, one for the rulesets, one for the actual games, one for the list of events and a single-row one for the status of the current event, like "game subscription open" or "voting open" or "vote closed")

Then all users who want to partecipate to the event will be able to give star ratings to each custom description (another table)


  • Is there any free extension that allows to manage form filling and queries from an interface, rather than writing code?

  • Does the extension provide sanitization? This is the most important thing to me because I don't know how to sanitize properly and it's my first time working with databases. I guess the alternative is learning how jForms works?

  • Does the interface also have a back-end component to build the tables, or will I need to create them from the site's MySQLi interface?

  • Will the interface be able to use the user IDs from Joomla!4's user database?

1 Answer 1

1

Your requirements are asking a lot for a 'Free' component so I will suggest the extensions I would be looking at for doing this and leave it to you research whether they have free versions with enough functionality to do what you want.

RS Forms is a very good Form builder that will allow you to do the validation, has conditional processing and importantly for your requirement the data received can be mapped to DB tables. There are other extensions of similar capabilities but that is the one I am most familiar with. Good for putting data into tables and with some effort can get basic reading functionality working.

Next step up would be application builders like Fabrik and Chronoforms that allow you to create some fairly involved form based applications within Joomla with reading and writing to tables and form validations etc.

Next set up from there would be the extension/component builder/creator services that allow you to define the tables and views and other elements and then they generate an installable extension that you install on your website. Component Creator is one that played with a few years ago and there was another one that was also well advanced but I can't recall its name. One is an online service you build via their website while the other you install on a Joomla installation and build your extension from within Joomla.

1
  • Well, I feel like my requirements are mostly "can write to DB from a form, with sanification", and all the rest is a list of pluses that should make it possible to choose a best answer as stackexchange requires.
    – Zachiel
    Sep 10, 2022 at 12:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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