求助! php mysql insert 长字符串不能插入问题.

zdfss 2013-11-05 05:21:40
语句是这样的:
$sql = "INSERT INTO `{$table->column_list_page}` set nID='{$_REQUEST['NodeID']}',Title='{$_REQUEST['Title']}',Author='{$_REQUEST['Author']}',Content='{$_REQUEST['Content']}',Note='{$_REQUEST['Note']}',editor='{$_SESSION['adminUserInfo']['aUserID']}',time='".time()."'";

$db->query($sql);}

插入几页字符没有问题,插入从word 中复制的十页以上的文档时,无法插入.

求救啊!


...全文
225 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zdfss 2013-11-06
  • 打赏
  • 举报
回复
引用 8 楼 zixiao123 的回复:
任何从php插入到mysql里的数据,最好做转义处理。 $str = isset($_REQUEST['str']) ? addslashes($_REQUEST['str']):'';
就是这个,我的PHP.INI 中设置 magic_quotes_g=Off,改成On,就行了. 查看资料得知: addslashes(string)参数 描述 string 必需。规定要检查的字符串。 提示和注释 提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备合适的字符串。 注释:默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。 结贴,给分.
zixiao123 2013-11-05
  • 打赏
  • 举报
回复
任何从php插入到mysql里的数据,最好做转义处理。 $str = isset($_REQUEST['str']) ? addslashes($_REQUEST['str']):'';
zdfss 2013-11-05
  • 打赏
  • 举报
回复
程序在服务器上,明天加了再请教
一起混吧 2013-11-05
  • 打赏
  • 举报
回复
$db->query($sql); echo mysql_error(); //贴出错误信息
zdfss 2013-11-05
  • 打赏
  • 举报
回复
引用 4 楼 jordan102 的回复:
贴出错误信息以供分析 echo mysql_error();
我是搞asp.net的,PHP没有接触过,这次是赶鸭子上轿,以前别人做的系统,有这个问题没有解决,要我来解决。 主要是把word中的表格帖到fckeditor 中,再存入数据库。小的没有问题,大的问题就来了。 不怕你笑话,还不会用echo mysql_error(); 请教如何用?
一起混吧 2013-11-05
  • 打赏
  • 举报
回复
贴出错误信息以供分析 echo mysql_error();
zdfss 2013-11-05
  • 打赏
  • 举报
回复
引用 2 楼 xuzuning 的回复:
1、你直接使用 $_REQUEST 数据,就可能因为特殊字符未转义和导致插入失败 2、你可能用的是 text 类型字段,那么上限为 64k。文字多了就可能超限
数据库字段使用的是MEDIUMTEXT类型,应没有超出上限。 你说的第一条,请都如何不直接使用 $_REQUEST 数据,或如何转义? PHP新手求助了。
xuzuning 2013-11-05
  • 打赏
  • 举报
回复
1、你直接使用 $_REQUEST 数据,就可能因为特殊字符未转义和导致插入失败 2、你可能用的是 text 类型字段,那么上限为 64k。文字多了就可能超限
zdfss 2013-11-05
  • 打赏
  • 举报
回复
在mysql 中,直接放进去,可以用,MSYQL没问题.

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧