2015-12-12 2 views
0

У меня есть такая структура таблицы.Вставить данные на Хинди в базе данных с помощью mysqli

enter image description here

Я хочу, чтобы вставить значения в столбце examples, которые могут быть либо на хинди или английском языке. Для того, чтобы вставить значения, я добавил процедуру следующим образом:

PROCEDURE `insertCategories`(parentCatID INT(11), categoryName VARCHAR(100), categoryType VARCHAR(100), examples VARCHAR(200)) 
BEGIN 
    DECLARE parentID INT(11) DEFAULT parentCatID; 
    DECLARE categoryTitle VARCHAR(100) DEFAULT categoryName; 
    DECLARE catType VARCHAR(100) DEFAULT categoryType; 
    DECLARE catExamples VARCHAR(200) DEFAULT examples; 
    IF categoryTitle !='' AND catType!='' THEN 
    INSERT INTO categories(cat_title, parent_catID, `types`, examples) VALUE(categoryTitle, parentID, catType, catExamples); 
    END IF; 
END$$ 

Я пытаюсь вызвать эту процедуру с помощью $executingProcedure = $mysqli->query("CALL insertCategories(0, 'Exporter', 'BC', 'निर्यातक')");

Но он сохраняет значение как

निर्यातक 

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

EDIT

Я попробовал его в mysql и он работает, но мне нужно сделать это с помощью mysqli.

EDIT

Похоже проблема была в HTML части. Добавлен следующий тег, и все работает нормально.

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

Почему вы используете sproc? – Strawberry

+0

Возможный дубликат [Как сохранить данные в юникоде на языке хинди] (http://stackoverflow.com/questions/12435867/how-to-store-the-data-in-onicode-in-hindi-language) –

+0

@ManojSalvi Я уже пробовал это и искал сайты, но не работал для меня. –

ответ

0

Вам необходимо добавить набор символов в utf-8.

Короче говоря, вам необходимо добавить следующую строку в любом месте <head> на обеих страницах, которые вы сохраняете, и где вы показываете. Он будет работать неважно, вы сохраняете mysqli или mysql.

<meta charset="UTF-8"> 

Будет работать.

+0

Брат, В вашей базе данных установлено значение Collation для utf8_bin? latin1_swedish_ci \t также должен работать. –

+0

Добавление кода не помогло. Я добавил тег, упомянутый в редактировании, и он сработал. –

1

Использование utf8_general_ci сортировка для example столбец в структуре вашего стола. И используйте следующую инструкцию PHP в своем скрипте PHP.

header('Content-type: text/html; charset=UTF-8'); 
+0

Спасибо за ответ. уже решена проблема. –

Смежные вопросы