Field logic has no option for "is empty" or "is not empty"

Not my Mautic, clients, so no ‘back-stage’ access. But they just cleared cache and updated to latest version (2.12.1).
I want to build a honeypot - so need the ‘is not empty’ option in my campaign builder - but there isn’t one. Any ideas why?
Everywhere I look it says do x, y, z - and choose ‘is not empty’. I’ve followed the steps, but there’s no such option.
Thanks.

Please elaborate what you want to accomplish.

In campaign builder you can use a condition (Type “Contact field value”), select the appropriate field and chose “empty” as operator.

Stupid as that. I was trying to use FORM FIELD VALUE - where no ‘empty’ option exists. Yes, it’s on the ‘CONTACT FIELD VALUE’ - thanks Pete. bangs head on wall

You’re welcome. No need to hurt yourself. :wink:

For this purpose is actually unnecessary to save the honeypot value on a custom field. We do not need this value. For all other contacts the field is totally useless.

Actually, only checking if the form field (textbox) was empty would be enough.

But this is the question: inside a campaign, how can I check (condition) if a textbox inside a form is empty or not?
These 2 criteria are missing here (but are present in the condition for contact field value):

Condition of contact field, with empty:

Condition of form field (textbox), empty is missing:

  1. I do not know how to add these options there - could someone implement these, so that we have a consistent selection list?
  2. Until then, can I use the like or “not like” operators to test empty? How?

Hi Ionut,
Just curious, did you find a solution for this issue? any workaround? Thanks.

Hi, workaround is always to manage this on the segment level. For example you can exclude anyone in the segment from this campaign who has the given field empty.

Hi @joeyk,
Thanks for your tip, but this is a form field, not a contact field - the info doesn’t get saved to a contact field. And I can’t use form field conditions at the segment level.

During a campaign, I’m deciding whether a specific form field is empty after form submission. Based on this condition I have to send an email to the owner.
As it seems this condition is not yet implemented at the form field level (not sure why), I was forced to create a contact field to save the info. This way I can check if it’s empty or not.

Hi!

You can do this 2 different ways:

  1. you can segment contacts who filled out a certain field and use segment membership condition in your campaign.

  2. You can use the mautic sql conditions plugin for this as a campaign decision.
    Campaign Sql Conditions – Mautic Extendee
    It’s a free plugin.

You need a bit of SQL knowledge to form the querry, but once it’s done, you’ll love it.

Joey

I will look into the plugin as I am very familiar with SQL. Thank you!
But, please, could you share with me how the segmentation would be possible in this case? I’m stuck here, I don’t know how this could be done. I’ve looked at all the filters and couldn’t find anything form related. Thanks a lot.

Once you create the SQL condition (a certain table has an certain value in Mautic), then you can choose this condition in a campaign builder as yes / no.

You are looking to write something like this:

Are there results for THIS CONTACT in the form table, where FIELD = empty?

Hi Ilo, no, I found no solution. I would be glad to see how exactly did you implement the hint of Joey.

Hi,

First of all, I’m happy about this question, because it shows how cool Mautic actually is. You can do ANYTHING with Mautic out of the box, and if not, then you can find the right set of generic plugins to do so.

The SQL conditions plugins is probably the most underrated plugin. It can solve any conditions related issue in the hands of a skilled marketer (or marketer with the proper tutorial (for a followup tutorial you are welcome to visit https://joeykeller.com))

The problem here is you want to check if a person left out a form field when filling out the form. This would be easy, but since we don’t save the form values into filed data (which very often makes much sense), we can’t run a condition so easiely.

Enter SQL conditions plugin.

With this plugin you can check any data on the database connected to a contact. The condition can be used in the campaign, just like any other condition:

And from here we can choose the specific condition itself:

Next step: Let’s understand how this condition really works:

After successful installation you are able to craft a mysql query and check for any value in any table in the Mautic DB connected to a contact. This is very important, because the query runs using that contact’s id, who is in the campaign. (A quick note: you can run other query as well not connected to the contact and then you can do some serious magic with Mautic, but this is another tutorial.)

So the query is executed, and if there is a result, then the outcome of the condition is YES, if there is no result, then the outcome is no.

In my example I have a table called ticketlines, which is stored as form_results_110_ticketline.
I am looking for any contact, who has not filled out the column product.

If I want to check if a contact with the ID 1000 did fill out that field at all, I can run the following query:

SELECT l.id AS fillout FROM form_results_110_ticketline f, leads l WHERE f.product != ""
AND l.email = f.email AND l.id = 1000 GROUP BY l.id

If the field product is filled out, then I will get as many lines back from mysql how many times this person filled out the product field. If it wasn’t filled out, then I’ll get an empty set. This will determine the outcome of the condition, so you’ll have a yes or no.

Now let’s add the magic ingredient, a specific syntax needed to inject the current ID of the contact whom the campaign is running for. Your final sql query looks like this:

SELECT l.id AS fillout FROM form_results_110_ticketline f, leads l WHERE f.product != ""
AND l.email = f.email AND l.id = :contactId GROUP BY l.id

Let me know if you have any questions, and plz support the plugin’s maintainer so we can enjoy this amazing plugin in Mautic 5 as well.

1 Like