用PHP向sql插入TEXT类型数据时,为什么只能插入很少的一部分

用PHP向sql插入TEXT类型数据时,为什么只能插入很少的一部分,第1张

1、首先

TEXT[(M)]

最大长度为65,535(216–1)字符的TEXT列。

可以给出可选长度M。则MySQL将列创建为最小的但足以容纳M字符长的值的TEXT类型

2、其次

我也遇到过这样的问题,把字段类型设大点就行了,比如longtext。

大概才4000字的一段文字如果汉字是4000个,但实际包涵的字符数就不止这些了,还有空格什么的,特别是用 富文本编辑器(比如FCKeditor) 处理过的,有加粗等效果的那比实际的就大多了。

把页面编码格式和数据库编码格式设置成一致就可以了吧

页面设置在编码前加入mysql_query("set names gb2312")或者mysql_query("set names utf8")跟数据库编码保持一致就好

在浏览器浏览的时候点右键设置为一致的编码

这个比较好解决,方便的方法是,把你的TEXT的name属性,和数据库的字段一一对应起来。然后SQL语句就可以这样子写了。

<?php

$cols

=

''

$vals

=

''

foreach($_POST

as

$key

=>

$value){

$cols

.=

",`$key`"

$vals

.=

",'$value'"

}

$sql

=

"insert

into

tables

(".substr($cols,1).")

values

(".substr($vals,1).")"

//这里就是插入数据库的 *** 作了。

?>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9638587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存