[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: в textarea не отображается текст
skalka
ну есть значит элемент texarea в который по щелчку по записи в таблице должны выводиться комментарии к этой записи.

вывод осуществляеться так:

  jQuery("#comment").val(" ");
$.post('/content/inputtasks/textarea.php?id='+ identiftask,function(data){
par =data;

jQuery("#comment").text(par);
},"json")



здесь достаю комментарии из базы:
  try {


$db = mysql_connect('192.168.112.38', 'root', 'astalavista') or
die("Could not connect: " . mysql_error());
mysql_select_db('projectmanager');
mysql_query('SET NAMES cp1251',$db);
mysql_query('SET CHARACTER SET cp1251',$db);
$sql = "SELECT * FROM inputtasks WHERE idinputtask = '" .$_REQUEST['id'] ."'";

$result = mysql_query($sql,$db);


$row = mysql_fetch_assoc($result);

$log->WriteLogMessage($row['comment']);

$s = $row['comment'];


echo $s;
}
catch(Exception $e) {
$log->WriteErrorMessage($e);
}


так вот если в поле цифры - все работает, если английские буквы - php их достает но в texarea они не отображаються, если русский текст(он собственно и важен), $s = остается пустым, то есть даже из БД он его почему то не принимает. В чем загвоздка голову сломала уже(((




Спустя 11 минут, 19 секунд (22.09.2010 - 12:03) Renden написал(а):
skalka
может проблема в кодировке самой базы вы уверены что она cp1251?
А если сделать тестовый запрос типа:

mysql_connect('192.168.112.38', 'root', 'astalavista');
mysql_select_db('projectmanager');
$sql = mysql_query("SELECT * FROM inputtasks WHERE idinputtask='1'");
$row = mysql_fetch_array($sql);
echo $row['comment'];

Выведет руские?

Спустя 5 минут, 19 секунд (22.09.2010 - 12:08) skalka написал(а):
Вот эта строка -

 $log->WriteLogMessage($row['comment']);


как раз таки тестирует результат, в лог идет запись полученного значения, когда текст русский там просто пусто. База в cp1251 я проверяла.

Спустя 9 минут, 35 секунд (22.09.2010 - 12:18) skalka написал(а):
эммм, сначала не поняла суть ответа, если параметр жестко задаю( idinputtask='1' ) все точно так же, русский - игнор, английский - в логе есть, на форме нет, цифры - все прекрасно.

Спустя 3 минуты, 1 секунда (22.09.2010 - 12:21) skalka написал(а):
так, вот если убрать вот это

mysql_query('SET NAMES cp1251',$db);
mysql_query('SET CHARACTER SET cp1251',$db);


русский текст из базы достается. но кракозябрами. и в форме не отображаеться

Спустя 19 минут, 7 секунд (22.09.2010 - 12:40) Renden написал(а):
skalka
тогда я думаю ваша проблема в кодировке самой таблицы:(

Забыл сказать попробуйте воспользоваться ф-ей iconv например:

//..ваш код
echo iconv("UTF-8", "cp1251", $s);

Спустя 1 час, 1 минута, 16 секунд (22.09.2010 - 13:41) Michael написал(а):
1) Пробуйте:
'/content/inputtasks/textarea.php?id='+ encodeURIComponent(identiftask);


2) вы пишете "json". В таком случае вот эта data:
function(data){

будет объектом.

Спустя 16 часов, 27 минут (23.09.2010 - 06:08) skalka написал(а):
а какой тип указать?? просто когда указано json он хоть что то возвращает. когда html вообще ноль эмоций

Спустя 42 минуты, 50 секунд (23.09.2010 - 06:51) Michael написал(а):
ничего не указывайте

Спустя 19 минут (23.09.2010 - 07:10) skalka написал(а):
   $.post('/content/inputtasks/textarea.php?id='+ identiftask ,function(data){
par =data;
alert(par);
jQuery("#comment").val(par);
})



  try {


$db = mysql_connect('192.168.112.38', 'root', 'astalavista') or
die("Could not connect: " . mysql_error());
mysql_select_db('projectmanager');

$e = $_REQUEST['id'];

$sql = "SELECT * FROM inputtasks WHERE idinputtask =".$e;

$log->WriteLogMessage($sql);
$result = mysql_query($sql,$db);


$row = mysql_fetch_assoc($result);

$log->WriteLogMessage($row['comment']);


$s = iconv("cp1251","UTF-8",$row['comment']);


echo $s;
}
catch(Exception $e) {
$log->WriteErrorMessage($e);
}



так работает, в textarea отображается, но с русским по прежнему проблема, текст выводит в таком виде - ???????

я с этой кодировкой вечно маюсь, база в сз1251 а перекодировать надо в UTF-8 так??? или не так?? ))) user posted image

Спустя 6 часов, 19 минут, 50 секунд (23.09.2010 - 13:30) skalka написал(а):
о да да!!! наконец все заработало!!!

'set charset cp1251' добавила и убрала iconv и стало все путем? всем спасибо большое!!! :-)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.