What if my server does not fulfill Urdu phpBB Requirements?
If your web server does not fulfill the UrduBB requirements, then you can still create a phpBB forum in Urdu using our package. However, there will be some problems.
MySQL
MySQL did not have Unicode support before Version 4.1. If you are using an earlier version for your database server, then all the Urdu text will be stored in your database in Latin1 encoding instead of UTF8. Since Latin1 is a single byte encoding while UTF8 is multibyte, this would mean that the data would be stored byte-by-byte in the database. Hence, string operations on the data do not work correctly. For example, comparison of two strings might not work. Also, any substring operation would return n bytes rather than characters. Since Urdu characters are composed of 2 bytes in UTF8, this means when you ask for the first 20 characters, you get the first 20 bytes instead which could contain 10 (or more) characters.
mbstring
mbstring provides PHP with multibyte character encoding support. By itself, PHP does not have any Unicode support. mbstring needs to be compiled into PHP, so ask your hosting provider if it is available.
In Urdu phpBB, we use mbstring to set the character set used in phpBB to be UTF-8 and to overload the built-in PHP string functions with their multibyte equivalents in mbstring.
Without mbstring, any string functions in phpBB would operate on a byte-by-byte basis and you would get similar errors as discussed in the MySQL section above.
Let us discuss some specific cases.
In phpBB, the user name is truncated to 25 characters. If a user chooses a name containing Urdu characters and mbstring is not installed on your system, then he will be able to register using a name up to 25 characters. However, when he tries to login, phpBB will truncate his name to the first 25 bytes (which means 12.5 characters in Urdu or more if any ASCII characters are included in the name). This results in the user not being able to login if his/her name is longer than 25 bytes. To fix this, please ensure that users do not register with names longer than 12 characters.
Another problem is the truncation of the topic titles. By default, the topic title can be up to 60 characters long. However, lack of mbstring limits it to 60 bytes (which equals 30 Urdu characters).
You will also note some question marks wherever anything is excerpted. For example, on the front page, only the first n characters of the the topic titles are shown. The byte-based truncation here results sometimes in only the first byte of a multibyte Unicode Urdu character being included in the substring. Since this single byte is not a valid Unicode character, it shows up as a question mark.
