Er is een manier, maar het wordt te duur naarmate u meer velden toevoegt. Hetzelfde gebeurt met veel CMS die ervoor kiezen om aanvullende gebruikersgegevens in die vorm op te slaan.
U kunt een werkende zoek-SQL krijgen door dit te gebruiken:
SELECT
users.*,
firstname.data AS firstname,
lastname.data AS lastname,
eyecolor.data AS eyecolor,
FROM
users
LEFT JOIN completed_form_fields AS firstname ON firstname.userid = users.id AND firstname.fieldkey = "firstname"
LEFT JOIN completed_form_fields AS lastname ON lastname.userid = users.id AND lastname.fieldkey = "lastname"
LEFT JOIN completed_form_fields AS eyecolor ON eyecolor.userid = users.id AND eyecolor.fieldkey = "eyecolor"
WHERE
firstname.data LIKE '%searchdata%'
OR lastname.data LIKE '%searchdata%'
OR eyecolor.data LIKE '%searchdata%'
Deze methode wordt erg groot en duur voor de MySQL-server naarmate je meer tabellen toevoegt. Daarom zou ik aanraden om niet meer dan 10-15 lidmaatschappen op die manier te gebruiken en nogmaals, ik zou het profiel maken om er zeker van te zijn.