PHP and checkbox on browse

Tags: #<Tag:0x00007f98beef64e8>

I’m considering buying the PHP templates from SV. I have a very modest app that I intend to move to Linux / Apache. I need the capability, in one of the browse forms, to select multiple records and then initiate a process using the selected records. I’m thinking this might be a checkbox within the row within the browse. Is there a template set already in Clarion that provides this capability? And, does it render that way in the PHP compiled versions? If no to the first question, is there a template set that someone would recommend that operates this way under PHP? I was thinking about Mike Hansen’s super tagging but I’m not sure if it works this way in PHP.

The Clarion PHP templates have not been updated since 2010 (and even that was a tiny bugfix), so I don’t think anybody would recommend them in 2019. As they weren’t developed by SV in house, they were never properly supported by SV and are, effectively, dead. They were a great idea which could have become a great product, but that didn’t eventuate. SV will be happy to take your money, but you won’t get any value out of the product. There is really no Linux/Apache solution for Clarion apps.

Well, dang. None?

Thanks David.

May be worth trying the Clarion2Java stuff that Andrew Barnham produced - at least that’s later than the PHP templates, and as it’s free you’ve nothing to lose :slight_smile:

NB not tried it myself but others have had success with it see the Discussions tab for latest bugs/queries etc

https://sourceforge.net/p/clarion2java/discussion/

Certainly not that I’m aware of. Don’t get me wrong, the Clarion/PHP templates DO work, but if you require anything more advanced than SoftVelocity’s Problem Tracker, I would steer well clear. In essence, the PHP templates do little more than generate a CRUD interface to your database tables. They don’t understand Clarion code at all, so any and all logic must be coded directly in PHP. In terms of a CRUD generator, it actually wasn’t a bad starting point in 2009. Today, not so much.

Unfortunately it doesn’t provide an out-of-the-box solution to turning a Clarion app into something you can put on the web, but I suppose one could incorporate some of the Java code produced in a web app. To be honest, I’d expect it to be more trouble than just starting from scratch.

Frankly, crud is just about all I need. Is a different question but related. I don’t know PHP well. In the end, what I want is for this to run on a Raspberry Pi under a LAMP stack. Does the PHP template produce an executable that I’m not going to be able to move over to Linux anyway? Or, are they a bunch…?.. different files that could be transported to a Raspberry Pi? What is it that’s produced by the PHP templates? An exe? Something else? The app that I’m working on has about 20 to 30 procedures that are predominantly browses and update forms.

If you go with the PHP templates, am pretty sure you will not be pleased with your purchase. It generates PHP and it would be usable on linux, though. There’s no compiled .EXE.

If you don’t know PHP, there are relatively few people that would be able to help you troubleshoot simply by looking at the generated code. If you do know PHP, you might find the system wanting.

1 Like

Hi Andrew,

There are no good options for you here.
If you really must use PHP then I recommend your cheapest approach is probably to find a PHP developer and get them to do it for you. You could learn PHP and do it yourself but that sounds like a lot of time, and probably you’ll make mistakes leading to security holes.

Of course if you are gonna use PHP then you also need to have some mechanism to upgrade the PHP engine on the device on a very-regular basis. PHP is regularly updated to deal with security issues, and failure to update pretty soon after an issue is fixed will likely lead to your device being compromised.

Cheers
Bruce

The templates produce a bunch of .php files (ascii text files containing PHP code) which you upload to your web server. Each browse list and update form is a separate PHP file.

You mention that you are mostly dealing with browses and updates. My question would be how much logic have you written in Clarion code (or is automatically written using third party extensions) that relates to these browses and updates? The Clarion PHP templates will basically give you what you could generate using the new application wizard in Clarion. Beyond that, you’ll need to write PHP code.

Hi Donn,

Maybe you’d be better off using a PHP Generator rather than Clarion for this.

See https://www.keycdn.com/blog/php-code-generator

Two of the listed generators are completely free and another has a free version.
All claim to be RAD and so need less PHP knowledge to use.

Hi,

Give a try to CRUDigniter, a free tool to generate CRUD code for a Codeigniter v3 project.
CRUDigniter allows you to automatically create complete Codeigniter CRUD for your database tables, with form validation rules, column associations and form controls.
http://www.crudigniter.com

Thank you, Flavio. I’ll look into it.

Andy Flewelling
Cell - 207-831-4430

Hi,

Another great CRUD tool for CRUD with PHP and CodeIgniter is GroceryCRUD:
https://www.grocerycrud.com

Interesting date/time picker on this page https://www.grocerycrud.com/examples/orders_example/

Thanks, Jeff. This is helpful.

Andy Flewelling
Cell - 207-831-4430

From my own personal experience, I often find that the time saved when using CRUD generators like GroceryCRUD is quickly lost when you need to do something that is in any way, shape, or form, outside of the box. And for the most part, the “box” that most CRUD generators come in is very small and simplistic.

By all means, use a database abstraction library (like ADOdb, which the Clarion/PHP templates use) to help with the heavy lifting, but to roll your own CRUD system from scratch for a simple app is only 1 or 2 hours work anyway. In other words, you’ll probably have it done in the same time it would have taken you to choose a CRUD generator, learn how it works, get an app half working, and then realise it will be more trouble than it’s worth to try to bend the framework into doing exactly what you require it to do. YMMV.