Behind section "Miscellaneous Variables" make a new section : ################################################################# # Translation Table # ################################################################# # $Translation reminds me of the contents of this field. # It will be shown as Uebersetzung in all German documents. ########## # Services: $Translation = 'Uebersetzung'; $and = 'und'; $English = 'Englisch'; $Chinese = 'Chinesisch'; Modify section "output_html_query_form Subroutine" ################################################################# # output_html_query_form Subroutine # ################################################################# # The general idea is to have the query form display everything in the mother tongue # of the searching person, but to perform the actual search on the field contents. # "name" still refers to "Database Definition Variables". # "value" is the actual content of the field in my data files # Everything behind the $ signs refers to my translation table. # For the following example, a German would see a selection field # with Uebersetzung / Englisch / Englisch und Chinesisch in section "search_results_body Subroutine", after "@fields = split (/\|/, $row);", put this: ################################################################# # Translation # ################################################################# # This section does the actual translation work for showing search results to the visitor ########## # In my setup file, "Database Definition Variables" lists Service as field number two. # So, for this example, people looking for a Translator, will acually search field number two. # I dont substitute globally, since there are a lot of fields (like names, ZIP-codes etc.), that don't # need to be changed. # Make this for every field you want to translate. if ($fields[2]) { $fields[2] =~ s/Translations/$Translations/g; $fields[2] =~ s/English/$English/g; $fields[2] =~ s/Chinese/$Chinese/g;