查询不插入中/大文本

时间:2013-05-21 12:46:48

标签: php

我有这个非常尴尬的问题,我的查询不会插入中/大文本。当我尝试使用Tester插入/更新我的数据库记录时,它可以工作,但是当我尝试插入/更新四行文本时,它没有做任何事情(也不会给我一个错误) 。真正奇怪的是它确实处理了两个'lorem ipsum'段落。

我的查询看起来像这样(对于插入):


$ncp_id = $defaults->query("INSERT INTO ".$table[0]." (p_id, p_title, p_date, p_desc) VALUES ('','".$_POST['p_title']."','".$_POST['p_date']."','".$_POST['p_desc']."')");
$defaults->query("INSERT INTO ".$table[2]." (ncp_id, ncp_client_id, ncp_project_id) VALUES ('','".$_POST['c_name']."','".$ncp_id."')");

我的数据库字段是TEXT类型。

所有帖子数据都是合法的。当我打印这些时,我会看到应该插入

的文本

我没有更多信息或代码。我真的希望以前有人听说过类似的问题。

1 个答案:

答案 0 :(得分:1)

我认为真正的中间文本包含打破查询的特殊字符。

这就是你必须使用准备好的陈述

的原因

而不是在查询字符串中插入数据。

此外,我们对query()实现一无所知,是否可以返回这样的标量值。

此外,您必须配置DBAL和PHP以将数据库错误转换为PHP错误并使后者可用。这是最重要的部分。如果没有错误消息,您可以猜测年龄,而使用它时,您将立即知道问题。