Как сопоставить ненужные символы в базе данных mysql с арабскими буквами с помощью PHP и MYSQL

0

Мой вопрос здесь кратко:

Сайт разработан с PHP как front end и mysql в качестве бэкэнд.

Я регистрируюсь на своем сайте, введя арабские буквы. И значение также вставляется в базу данных mysql. Но это не тот формат, в который я вошел. Это похоже на мусорные слова.

Теперь моя проблема в том, что когда я пытаюсь войти в систему, я не могу сопоставить ввод, который я ввел. Я застрял с этим местом.

Любые идеи или предложения будут полезны и благодарны.

спасибо заранее.

Теги:
arabic

2 ответа

1

Эта проблема должна быть решена на более ранней стадии. Арабский символ не вписывается в базу данных, не относящуюся к unicode. Это настоящая проблема.

Вы должны использовать таблицы Unicode, а также подключение Unicode к базе данных MySQL.

Установите стандартный набор символов вашей таблицы в utf8 и убедитесь, что соединение с вашей базой данных также использует этот набор символов:

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

Смотрите также: http://nl3.php.net/manual/en/function.mysql-set-charset.php

Проверьте набор символов вашего текущего соединения с помощью:

echo mysql_client_encoding($conn);

Смотрите также: http://nl3.php.net/manual/en/function.mysql-client-encoding.php

При создании таблиц сделайте что-то вроде этого:

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

Если вы сделали это и добавили пользователя, который содержит арабский символ в вашей таблице, вы увидите, что он отображается правильно. Теперь сравнение будет легко.

Удачи!

0

У меня была такая же проблема, но я ее исправил.

вы также можете включить php-код ниже:

mysql_set_charset("UTF8", $conn); $conn, это наше соединение mysql. вам также может потребоваться включить метатег на вашу веб-страницу:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 

надеюсь, что поможет

Сардар Джаф

Ещё вопросы

Сообщество Overcoder
Наверх
Меню