1 Reply Latest reply on May 2, 2012 8:52 AM by TSGal

    PHP API non-ASCII characters in field names

    JonJ

      Summary

      PHP API non-ASCII characters in field names

      Product

      FileMaker Server

      Version

      12.0.1.178

      Operating system version

      OSX 10.7.3

      Description of the issue

      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:
          $data-> getField('Ω_SystemField');

      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 11.0.3.309, on both OSX 10.7 and Win2008r2!

      Steps to reproduce the problem

      Name a field Ω_MyTestField and try to search on it via the PHP API.  Rename the field to __MyTestField and try again!

      Expected result

      A filemaker result object should be returned.

      Actual result

      A filemaker error object is returned, stating that the 'Field is missing'

      Exact text of any error message(s) that appear

      'Field is missing'

      Workaround

      Don't use non-ascii characters in finds.  Other operations (e.g. getting data) seem to be OK.