Re: Newbie asks about multi-lingual website strategies
| From: | Jason Pruim | Date: | Tue, 27 Nov 2007 14:15:29 +0000 |
| Subject: | Re: Newbie asks about multi-lingual website strategies | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-265066@lists.php.net to get a copy of this message | ||
On Nov 27, 2007, at 8:37 AM, Jeff Benetti wrote:
I'm a noob so keep the comments to a noob's level please. I am doing a website and my client wants the bulk of the text to be bilingual (French and English). The last site I did used php and mysql so I am getting comfortable with that technology. Typically I am using a single php file and my menu constantly points to the same file with different id options example "index.php?id=30" and I want to use the same idea to choose a language example "index.php?lang=fr&id=30". Pretty straight forward for many of you folks but before I start reinventing the wheel I wondered if anyone could offer any suggestions. I have a couple of approaches in mind.I'm actually in the process of planning this as well... English and Spanish...
1: Session vars, I have never used this but it seems straight forward. Drawbacks?Sessions are easy enough to use, just make sure that you are setting the variable in the right place... On a site I did the stored variable was always 1 behind what I wanted it to be... I moved the setting of the variable, and it worked :)
2: Cookies again not too big a deal, never used cookies either but it doesn't seem to be mystifying however the fact that the user can turn cookies off makes me not want to go this route. 3: Use the mysql database and log each ip address and record the preference and maybe the last time on the site. I am leaning in this direction because I think it is the most robust but will it be slow? First I have to get the ip then I have to check to see if it is in my data base and then get the language preference. It would be great to have a standardized function that I could use on all of my sites. I live in a bilingual country (Canada) so this could be a real selling point for my services.I don't know much about using mysql for storing IP's in canada... But in the US, all IP's except for businesses are dynamic, they could change every time a user would go to a site.. I could see that causing issues...
Any any and all comments are welcome, it will be a learning curve no matter which route I take so a little advice on the best direction pros cons would be great. And of course knowing that I will have many many thousands of people on my site (hee hee) which option will perform best once I start accumulating vistors. That's one problem I see with the mysql solution, I think it may start to be slow unless I start purging vistors who have not shown up in a while or limit the number of entries.I'm currently planning to store the text of the pages on my site in a database, so that I can very easily just change the language preference, and get the english, or spanish out of the database. I also think it will help speed up the site for when I have my thousands of users a second :) When you start doing it, let me know your experiences... I plan to actually start coding (If me and the site owner can see eye to eye on some stuff...) in january. -- Jason Pruim Raoset Inc. Technology Manager MQC Specialist 3251 132nd ave Holland, MI, 49424 www.raoset.com japruim@raoset.com