Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Проблема записи кодировки в БД

Нашел один мод для xtc. Сделал из него плагин.

Но проблема в том, что в БД записывается текст в кривой кодировке.
Не могу разобраться как поправить.

Обрабатывает форму такой код

function RequestObject() {
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else if (window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLHTTP");
} else {
alert("Ihr Browser unterstützt diese Funktion leider nicht.");
}
}
var connect = RequestObject();

function storeText() {
if (connect.readyState == 4 || connect.readyState == 0) {
var data = escape(document.getElementById('shout_text').value);
connect.open("GET", 'shoutbox.php?message=' + data, true);
connect.onreadystatechange = getResponse;
connect.send(null);
}
}

function getResponse() {
if (connect.readyState == 4) {
var data = connect.responseText;
document.getElementById('shoutboxArea').innerHTML = data;
}
}


Сама форма
<div id="shoutboxArea">
<form action="" name="shoutbox_form" onsubmit="storeText(); return false;">
            <table width="100%"  border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td>Текст</td>
              </tr>
              <tr>
                <td><textarea name="shoutbox_input" cols="" rows="" id="shout_text" size="20" maxlength="30"></textarea></td>
              </tr>
              <tr>
                <td><table width="100%"  border="0" cellpadding="2" cellspacing="0">
                    <tr>
                      <td align="right">{$BUTTON_SUBMIT}</td>
                    </tr>
                  </table></td>
              </tr>
            </table>
</form>
</div>


Файл который записывает полученные занные в БД
$shoutbox_text = os_db_prepare_input($_GET['message']);
if ($_SESSION['shoutbox_use'] < 3){
os_db_query("insert into shoutbox (shoutbox_text, shoutbox_time) values ( '" . $shoutbox_text . "', now())");

  $_SESSION['shoutbox_use']++;
  echo SHOUTBOX_MSG_SEND;
} else {
  echo SHOUTBOX_MSG_DENY;
}


Искал решения в ПС, в итоге понял, что кодировку надо указывать в JS коде, но у меня ничего путного не вышло.
Заранее спасибо!


Смотри это нельзя прикрутить?


так а через iconv нельзя кодировку перед выполнение запроса менять?



Смотри это нельзя прикрутить?


Чет там сток много файлов))
Я примеры находил, но выдернуть не смог.

так а через iconv нельзя кодировку перед выполнение запроса менять?

Жень, спасибо. Что-то не пришло в голову через iconv кодировку выпрямлять. Попробую.


Во получилась но тоже с кодировкой проблема >:(


Ну да, смешно))


Источник



Copyright ShopOS