sql >> Databasteknik >  >> RDS >> Mysql

Hur man matchar skräptecken i mysql-databasen med arabiska bokstäver med PHP och MYSQL

Detta problem bör lösas i ett tidigare skede. Arabiska tecken passar inte i en icke-unicode databastabell. Det är det verkliga problemet.

Du bör använda Unicode-tabeller samt en Unicode-anslutning till din MySQL-databas.

Ställ in standardteckenuppsättningen för din tabell till utf8 och se till att anslutningen till din databas också använder denna teckenuppsättning:

$conn = mysql_connect($server, $username, $password);
mysql_set_charset("UTF8", $conn);

Se även:http://nl3.php.net/ manual/en/function.mysql-set-charset.php

Kontrollera teckenuppsättningen för din nuvarande anslutning med:

echo mysql_client_encoding($conn);

Se även:http://nl3.php.net/ manual/en/function.mysql-client-encoding.php

Gör något så här när du skapar dina tabeller:

create table user (
    // Your table definition
) default charset = UTF8

Om du har gjort dessa saker och lägger till en användare som innehåller arabiska tecken till din tabell, kommer du att se att den visas korrekt. Nu blir jämförelsen enkel.

Lycka till!



  1. while ($row =mysql_fetch_array($result)) - hur många loopar utförs?

  2. MySQL Inserts prestanda försämras på ett stort bord

  3. Rensa effektivt användarinmatad text

  4. Använder du lagrad procedur i Entity Framework 5 med komplex typ?