Solved

Set locale

Posted on 2010-11-16
3
379 Views
Last Modified: 2012-05-10
I have a script that extracts data from a mysql database. I works great until I extract a text that contains danish characters like æ, ø and å.

The output looks like this:
Tilmeld dig vores nyhedsbrev og v¿r med i konkurrencen om et gavekort p¿ 25.000 kr til dit favorit indk¿bscenter!

but it should look like this:
Tilmeld dig vores nyhedsbrev og vær med i konkurrencen om et gavekort på 25.000 kr til dit favorit indkøbscenter!

The script is this one:
 
<?php

$link = mysql_connect('mysql.myserver.dk:3306', 'username', 'password');

if (!$link) {

    die('could not connect: ' . mysql_error());

}

mysql_select_db('database_bk', $link);



$my_date=date('c');

$query="select * FROM `content_type_konkurrence` WHERE '$my_date' BETWEEN `field_konk_start_value` AND `field_konk_slut_value`";

$result=mysql_query($query) or die(mysql_error());



while($row=mysql_fetch_assoc($result)) {



    echo "

<a class='konk_link' href='" . $row['field_konk_url_value'] . "'><div class='konk_div'>

<img src='http://www.mydomain.dk/files/" . $row['field_konk_billede_value'] . "' alt='" . $row['field_konk_titel_value'] . "' class='konk_billede' />

<span class='konk_tekst'><b class='konk_titel'>" . $row['field_konk_titel_value'] . "</b><br /><br />" . $row['field_konk_tekst_value'] . "</span></div></a><br />";

	

}



mysql_close($link);

?>

Open in new window


What must I do to replace those anoying ¿ with the danish characters.

Best regards
Kasper K
0
Comment
Question by:Kasper Katzmann
  • 2
3 Comments
 
LVL 3

Accepted Solution

by:
Mestika earned 500 total points
Comment Utility
Hi Kasper,

I am myself danish so I have dealt with this problem numerous times before. There are a lot of good articles which takes care of this subject but here are some key points.

You need to both specify your Database and your PHP code.

One thing you can start to try is to set your database to use utf8, in your php - database code:
mysql_set_charset('utf8');

like this:

mysql_set_charset('utf8');
$query="select * FROM `content_type_konkurrence` WHERE '$my_date' BETWEEN `field_konk_start_value` AND `field_konk_slut_value`";
$result=mysql_query($query) or die(mysql_error())

More, you can set the default charset in your database (assuming you use MySQL) to utf8 in your my.ini file.
0
 

Author Closing Comment

by:Kasper Katzmann
Comment Utility
Ohh my god...

Was it that easy. I have tried with setlocale, but that didn't work at all. But you suggestion worked at once.

Thank you very much.
Jeg gi'r en øl (I buy you a beer)
0
 
LVL 3

Expert Comment

by:Mestika
Comment Utility
Yeah it is that easy, but trust me, I created a whole method to begin with to work around the problem until I discovered how little it took to make it work.

I'm looking forward to the beer :-)
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

Entering a date in Microsoft Access can be tricky. A typo can cause month and day to be shuffled, entering the day only causes an error, as does entering, say, day 31 in June. This article shows how an inputmask supported by code can help the user a…
Never store passwords in plain text or just their hash: it seems a no-brainier, but there are still plenty of people doing that. I present the why and how on this subject, offering my own real life solution that you can implement right away, bringin…
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now