我正在尝试将我的用户使用 Web 表单输入并使用 PHP 传递到服务器的长文本(大约 2500 个字符)保存到我的数据库中。
当我查看 phpmyadmin 时,文本被裁剪了。我如何配置我的表以获得完整的文本?这是我的表配置:
CREATE TABLE `extra_879` (
`id` bigint(20) NOT NULL auto_increment,
`id_user` bigint(20) NOT NULL,
`title` varchar(300) NOT NULL,
`content` varchar(3000) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id_user` (`id_user`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
查看限制为 3000 个字符的字段 content,但文本总是在 690 个字符 处被裁剪。感谢您的帮助!
编辑:我发现了问题,但我不知道如何解决。查询总是在同一个字符中获取裁剪,一个特殊的字符:ù
编辑 2:这是裁剪后的查询:
INSERT INTO extra_879 (id,id_user,title,content) VALUES (NULL,'1','Informazione Extra','
Riconoscimenti
Laurea di ingegneria presa a le 22 anni e in il terso posto della promozione
Diploma analista di sistemi ottenuto il rating massimo 20/20, primo posto della promozione.
Borsa di Studio (offerta dal Ministero Esteri Italiano) vinta nel 2010 (Valutazione del territorio attraverso le nueve tecnologie)
Pubblicazione di paper; Stima del RCS della nave CCGS radar sulla base dei risultati di H. Leong e H. Wilson. http://www.ing.uc.edu.vek-azozayalarchivospdf/PAPER-Sarmiento.pdf
Tesi di laurea: PROGETTAZIONE E REALIZZAZIONE DI UN SIS-TEMA DI TELEMETRIA GSM PER IL CONTROLLO DELLO STATO DI TRANSITO VEICOLARE E CLIMA (ottenuto il punteggio pi')
它在 (ottenuto il punteggio più alto) 短语时得到裁剪,就在 ù 出现时...
编辑 3:我使用 jquery + ajax 发送查询
$.ajax({type: "POST", url: "handler.php", data: "e_text="+ $('#e_text').val() + "&e_title="+ $('#extra_title').val(),
最佳答案
回答您更新的问题:
您(显然)正在尝试插入 unicode 文本。并且您的表的字符集设置为 latin1
。那不会飞。
将您的表字符集更改为 utf-8。
ALTER TABLE extra_879 CONVERT TO CHARACTER SET utf8;
更多信息 here .
关于mysql - 为什么我不能在我的 MySQL 数据库中保存长文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8862717/