1

My form consists of different types of inputs.

Is there a way of checking if form has been submitted with any user input?

3 Answers 3

2

Is there a way of checking if an entire form is blank?

Without checking each individual input?

In short. No there is not.

You could treat $_POST as an array and check each entry in a loop, but you must be aware of items that are automatically filled, like $_POST['submit'] or something similar.

Sign up to request clarification or add additional context in comments.

Comments

0

Run the input through array_filter - it will return empty array if there is no single value in the array. If there is a value, the array will be non-empty.

Keep in mind that this way even if just one checkbox is checked form will be considered non-empty.

1 Comment

This will also remove any values which evaluate to false, e.g. 0.
-1

To see if anything is present (either a text input, or at least a checkbox value=1) you might use:

strlen(join($_POST))

Obviously only if it's a POST form, and that's not a big help either if you have radio or select boxes with a default. Also the submit button may not add a string by itself (don't give it a name=).

1 Comment

Imploding all the input array can be resource-costly. It can be abused for malicious purposes, esp. if you expose the whole $_POST array.

Your Answer

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