【问题标题】:php and mysql - updating longblob field not workingphp 和 mysql - 更新 longblob 字段不起作用
【发布时间】:2012-01-17 21:57:35
【问题描述】:

我试图在我的架构中的一个表中更新一行中的一个字段,并且我的 php 日志中没有任何错误,但值没有更新到该字段中。我的更新查询是这样写的:

$dbQuery00 = "UPDATE `billing`.`sale_transaction` SET `Signature` = '$signatureUpload'  WHERE `TRANSCODE` = '$transID';";
$result = mysqli_query($dbObj,$dbQuery00) or trigger_error('Failed on dbQuery00'.mysqli_error(), mysqli_errno());

当我将 $result 变量发布到 error_log 时,它会显示应该更新的正确字段数,这只是一个但没有显示。

我更新的值是一个 png 文件,我将它插入到一个 longblob 字段中。我在其他地方也有类似的设置,但由于某种原因,这个特殊的小更新查询是不行的......任何建议都将不胜感激。

【问题讨论】:

  • 您确定$transID 是您所期望的(也就是说,您正在更新然后检查您期望的行)? $result 在这里只会是真或假,不会更新多个字段。
  • hmmmm .....是的,我已将 transID 发布到 error_log 及其应有的内容。让我再次运行我的脚本以再次查看错误日志中出现的内容。
  • 好的,所以签名值显示为“数组”,结果值显示为 1。我想我应该添加我将两者都转换为(字符串)以便在错误日志中看到它们
  • 不要在trigger_error()的第二个参数中给mysqli_errno()....mysqli错误号与php错误号无关。根据所需的行为,使用E_USER_ERROR(致命)、E_USER_WARNING(严重)或E_USER_NOTICE(好吧,注意它是;))。
  • 感谢您的回复,但我对错误捕获没有问题。我的问题是我发送到我的脚本的数据没有进入我试图更新的表中。我没有看到任何与数据相关的错误,所以我有点卡住了

标签: php mysql sql mysqli


【解决方案1】:

好吧,我不得不使用下面的代码来允许将 png 文件更新到我的 mysql 表中。

$imgData = addslashes(file_get_contents($_FILES["signatureUpload"]["tmp_name"]));

那一点点代码让我可以将发布的数据带到我的脚本中并更新表格中的图像。

【讨论】:

    猜你喜欢
    • 2013-04-02
    • 2012-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多