【发布时间】:2010-12-03 11:19:14
【问题描述】:
我有一个 MySQL 表,其中包含“text”类型的“full_description”列。 在那一栏中是一个标准的 lorem ipsum(加上单词 END):
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et 多洛尔·麦格纳·阿里夸。 Ut enim ad minim veniam, quis nostrud 练习 乌兰科劳里斯 nisi ut aliquip ex ea commodo 后果。立即拒绝 dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur。例外罪 occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit 动画id est labourum。结束
然而,当在 php 中对其进行选择时,它只检索到这么多:
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et 多洛尔·麦格纳·阿里夸。 Ut enim ad minim veniam, quis nostrud 练习 乌兰科劳里斯 nisi ut aliquip ex ea commodo 后果。立即拒绝 多乐我
这是检索它的 php 代码:
function getPostingDetails($posting_id){
$getPosting = $this->PLAST->prepare('SELECT posting_id, poster_id, title, short_description, full_description FROM postings WHERE posting_id=?');
$getPosting->bind_param('i',$posting_id);
$getPosting->execute();
$getPosting->bind_result($row['posting_id'],$row['poster_id'],$row['title'],$row['short_description'],$row['full_description']);
$getPosting->fetch();
$getPosting->close();
return $row;
}
这是我得到的数组:
Array ( [posting_id] => 1 [poster_id] => 1 [title] => Test 1 [short_description] => This is a short description. [full_description] => Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor i )
其余字段都很好。 我究竟做错了什么?或者是否有我不知道的限制 SELECT 语句的设置或功能?在 MySQL 中?在 PHP mysqli 中?
谢谢
这是根据要求提供的表结构:
CREATE TABLE `postings` (
`posting_id` int(11) NOT NULL AUTO_INCREMENT,
`poster_id` int(11) NOT NULL,
`title` tinytext NOT NULL,
`short_description` tinytext NOT NULL,
`full_description` text NOT NULL,
PRIMARY KEY (`posting_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
【问题讨论】:
-
你能发布表定义吗? SELECT 返回的文本有 256 个字符。你没有限制吗?另一件事:如何将数据插入数据库?
-
我刚刚添加了它。我看不到限制在哪里...请注意,在 phpMyAdmin 中,full_description 完全显示。所以它被正确保存。只是在执行 SELECT 时被截断。
-
你使用的是什么框架?我认为这是对数据类型 TEXT 的一些默认限制。
-
@Lukasz,您可能希望添加 cmets 作为问题的答案,因为您正在努力寻找解决方案。 =)
-
不确定你所说的框架是什么意思,但我在 Windows 上使用 XAMPP(这是我的本地测试环境)。