mysqli bind_param更新查询不起作用


mysqli bind_param update query Not Working

<?php
include_once 'dbconnect.php';
$flds= "UPDATE OFFICE SET OADD02=? WHERE OFFNO=$OFFNO";
$stmt = $mysqli->prepare($flds);
$stmt->bind_param('s',$OADD02);
$stmt->execute();
$stmt->close();

我执行上述操作,bind_param失败。我的流程是这样的:

  • 用户进入表单以更新信息(信息通过 mysqli 查询显示(;
  • 他们点击提交。

初始化和填充$stmt有效,但是当我开始bind_param页面时,页面变为空白。这是网址:http://gccitech.com/iclub/office.php?ONO=4&ftype=m

尝试绑定两个参数:

$flds= "UPDATE OFFICE SET OADD02=? WHERE OFFNO=?";
$stmt = $mysqli->prepare($flds);
$stmt->bind_param('ss',$OADD02, $OFFNO);

我猜想,$OFFNO是一根绳子。如果是整数,请使用以下命令:

$stmt->bind_param('si',$OADD02, $OFFNO);

通读本文后,我注意到了几件事。您需要一个文件,但尚未声明$mysqli这意味着连接字符串可能不起作用。

您是否还对其进行了检查,以查看是否会出现任何错误?尝试使用此代码来检查错误,您将更好地了解正在发生的事情

if ($sql = $mysqli->prepare($query)){
            $sql->bind_param("s",$OADD02);
            $sql->execute();
        } else {
            echo "Failed prepare statement" . $this->conn->error . $this->conn->error;
        }

这样,您将能够打印出MySQL错误。完成此操作后,请提出错误,我可以尝试提供帮助。

此外,您尚未声明$OFFNO这意味着查询也无法正确执行。如果您声明了$mysqli和$OFFNO的连接,并确保使用上面的 if 语句进行错误检查,您应该能够看到它不起作用的原因。