我的函数获取$status
(0-error,1-success),$err_id
(db中的错误消息的id)和$field
(输入字段的名称)变量并获取错误来自db的消息,给定的vars。
在每个步骤中尝试die()
以检测错误发生的位置,并在功能die($status.$err_id.$field);
之后放置err
。没有成功。
用netbeans支付。标记调试在函数中停止的行
$ msg始终为空。无法从db获取它。 php错误日志中没有错误。可能是我的代码有错误?请看一下。
function err($status, $err_id = 0, $field = 0)
{
global $db;
if ($status == 0) {
$stmt = $db->prepare("SELECT msg FROM err_msgs WHERE field = ? AND id= ?") or die(htmlspecialchars($db->error));
$stmt->bind_param("si", $field, $err_id) or die(htmlspecialchars($stmt->error));
$stmt->execute() or die(htmlspecialchars($stmt->error));
$stmt->bind_result($msg) or die(htmlspecialchars($stmt->error));
>>debug stops here>> $stmt->fetch() or die(htmlspecialchars($stmt->error));
response('error', $msg);
$stmt->close();
die();
} else {
response('success', 'Success!');
}
}
答案 0 :(得分:0)
尝试切换这两行:
$stmt->execute() or die(htmlspecialchars($stmt->error));
$stmt->bind_result($msg) or die(htmlspecialchars($stmt->error));
到
$stmt->bind_result($msg) or die(htmlspecialchars($stmt->error));
$stmt->execute() or die(htmlspecialchars($stmt->error));
答案 1 :(得分:0)
我忘了在绑定结果后获取
$stmt->fetch()