PHP API non-ASCII characters in field names
I've just been testing server 12 prior to migrating our production server, and I've noticed an issue with the php api.
We tend to name system fields with a leading omega character (Ω, or in case this doesn't render on the forum page, the HTML character Ω). This is handy, as they always sort at the bottom of lists, beyond 'z',
However, when I use the filemaker PHP API to access the databases, it is not able to search on any field with an omega in its name (e.g. Ω_SystemField):
$Search->addFindCriterion( "Ω_SystemField" , $SearchCritereon ) ;
On executing the find, it returns a filemaker error object with the string "Field is missing". Rename the field to remove the Ω and the find works perfectly.
Strangely, though, if I want to get data from a field with an Ω in its name, that is fine:
This is new in Server 12 -- we've been using the Ω character in fields, and searching them via the PHP API quite happily in FMs 126.96.36.1999, on both OSX 10.7 and Win2008r2!
Name a field Ω_MyTestField and try to search on it via the PHP API. Rename the field to __MyTestField and try again!
A filemaker result object should be returned.
A filemaker error object is returned, stating that the 'Field is missing'
'Field is missing'
Don't use non-ascii characters in finds. Other operations (e.g. getting data) seem to be OK.
Thank you for your post.
I have forwarded your post to our Development and Testing departments for review. I will keep you updated as information becomes available to me.