-4

我有一个非常尴尬的问题,即我的查询不会插入中/大文本。例如,当我尝试使用它插入/更新我的数据库记录时,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类型。

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

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

4

1 回答 1

1

我想真正的 mediumtext 包含破坏查询的特殊字符。

这就是为什么你必须使用准备好的语句

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

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

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

于 2013-05-21T12:57:20.463 回答