Differences between revisions 1 and 10 (spanning 9 versions)
Revision 1 as of 2007-05-23 13:45:15
Size: 321
Editor: infno1613
Comment:
Revision 10 as of 2007-05-28 15:08:06
Size: 1660
Editor: dslb-084-058-237-229
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= CompleteSearch HowTo = = About character encoding (28May07 Markus)=
Line 3: Line 3:
== UTF-8 lowercase in PHP (23May07 Markus) == CompletionSearch supports ISO-8859-1 and the multibyte character encoding UTF-8.
UTF-8 is the default encoding with the following consequences:
Line 5: Line 6:
Requires extension mbstring (for functions like mb_strtolower). Following line require in php.ini  * The $AC->settings->encoding is 'utf-8' unless overriden in autocomplete_config.php
 * The texts in text.php are saved as UTF-8
 * The css file uses '@charset "utf-8";'
 * We use mb_strtolower (instead of strtolower) with parameter $AC->settings->encoding to enable UTF-8

We do the following depending on the defined encoding:
 * We UTF-8 encode $AC->settings->capitals if $AC->settings->encoding is UTF-8
 * In ajax.php we UTF-8 encode the query string if $AC->settings->encoding is UTF-8 and the charset of content_type is not UTF-8 (means the request is sent as a non-UTF-8 type)
 * We set the page encoding of index.php, options.php and change_options.php according to $AC->settings->encoding (<meta http-equiv="content-type" content="text/html;charset=<?php echo $AC->settings->encoding; ?>">
)
 * Texts from text.php are UTF-8 decoded by $AC->get_text() if $AC->settings->encoding is ISO-8859-1
 * We url encode the javascript code in function javascript_rhs (in generate_javascript.php) if $AC->settings->encoding is not UTF-8 (this is not necessary if utf-8 is used)



== The PHP Apache extension php_mbstring ==

The use of the mb_strtolower function (and other mb_ functions) requires the extension php_mbstring in php.ini:
Line 8: Line 26:
extension mbstring In windows:
extension=php_mbstring.dll

or in linux:
extension=php_mbstring.so
Line 11: Line 33:
(On geek, the mb_... functions were available by default, on Markus's laptop the line above had to be added.) (On geek, the mb_... functions were available by default, on Markus' laptop the line above had to be added.)

= About character encoding (28May07 Markus)=

CompletionSearch supports ISO-8859-1 and the multibyte character encoding UTF-8. UTF-8 is the default encoding with the following consequences:

  • The $AC->settings->encoding is 'utf-8' unless overriden in autocomplete_config.php

  • The texts in text.php are saved as UTF-8
  • The css file uses '@charset "utf-8";'
  • We use mb_strtolower (instead of strtolower) with parameter $AC->settings->encoding to enable UTF-8

We do the following depending on the defined encoding:

  • We UTF-8 encode $AC->settings->capitals if $AC->settings->encoding is UTF-8

  • In ajax.php we UTF-8 encode the query string if $AC->settings->encoding is UTF-8 and the charset of content_type is not UTF-8 (means the request is sent as a non-UTF-8 type)

  • We set the page encoding of index.php, options.php and change_options.php according to $AC->settings->encoding (<meta http-equiv="content-type" content="text/html;charset=<?php echo $AC->settings->encoding; ?>">

)

  • Texts from text.php are UTF-8 decoded by $AC->get_text() if $AC->settings->encoding is ISO-8859-1

  • We url encode the javascript code in function javascript_rhs (in generate_javascript.php) if $AC->settings->encoding is not UTF-8 (this is not necessary if utf-8 is used)

The PHP Apache extension php_mbstring

The use of the mb_strtolower function (and other mb_ functions) requires the extension php_mbstring in php.ini:

In windows:
extension=php_mbstring.dll

or in linux:
extension=php_mbstring.so

(On geek, the mb_... functions were available by default, on Markus' laptop the line above had to be added.)

CompleteSearch: FrontPage (last edited 2017-03-19 13:30:19 by Hannah Bast)