Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Не может вставить текст в поле TEXT (Махмуд) 01/02/2006 - 11:02:27
      Re: Не может вставить текст в поле TEXT (Сергей) 01/02/2006 - 11:27:47
      Re: Не может вставить текст в поле TEXT (Сергей) 01/02/2006 - 15:11:57

> Original message text:
> From: Махмуд - 01/02/2006 - 11:02:27
> Subject:Не может вставить текст в поле TEXT
> -----------------
> Привет всем.
>
> Грабли такие. Ставлю скрипт его же сетапом. Все создает нормально, но при попытке вставить начальные данные INSERTом в таблицу, где одно из полей - текст, выдает ошибку следующего содержания:
> Error: Data too long for column 'template' at row 1 in file c:\inetpub\wwwroot\install.php on line 880
> А там текста-то - кот наплакал. Шаблон для емайла оповещения пользователя.
> Где тут собака порылась?
> Win2000Pro, Mysql 5, PHP 5
>


From: Сергей - 01/02/2006 - 15:11:57
Subject:Не может вставить текст в поле TEXT
-----------------
Кажется разобрался... PHP я не знаю, но на Perl решение выглядит так:
1) в MySQL делаем всё по умолчанию (всё в utf8);
2) в скриптах после
$dbh = DBI->connect( $data_source, $username, $password);
и перед самим запросом обязательно указываем:
$dbh->do('SET character_set_results="cp1251"');
$dbh->do('SET character_set_connection="cp1251"');
$dbh->do('SET character_set_client="cp1251"');

Для отладки можна использовать такой блок:

# Проверка кодировок #################################
# (вставляем между $dbh = DBI->connect и $dbh->disconnect) ###
print "<table width=100% border=1 cellspacing=0>\n";
print "<tr valign=top align=center>\n<td>Variable_name</td>\n<td>Value</td>";
$sth = $dbh->prepare('SHOW VARIABLES LIKE "char%"');
$sth->execute();
while (my $ref = $sth->fetchrow_hashref())
{
print "<tr valign=top>\n<td>$ref->{'Variable_name'}</td><td>$ref->{'Value'}</td></tr>";
}
$sth->finish();
print "</table>\n";
# /Проверка кодировок #################################

Думаю, что в PHP что-нибудь подобное будет сделать несложно

Извиняюсь, что зазря обвинил MySQL 5 в глюкавости, просто в MySQL 4.1 всё работало сразу же после установки.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
26195



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |