CodeIgniter中遇到PHP错误
帮助: 遇到一个PHP错误 严重性:警告 消息:非法字符串偏移量“periode” 文件名:models/k3m.php 行号:32 遇到一个PHP错误 严重性:警告 消息:非法字符串偏移量“bulan” 文件名:models/k3m.php 电话号码:33 致命错误:在第39行的C:\LaporBOS\htdocs\laporbos3\application\modules\laporan\u k3\models\k3m.php中对非对象调用成员函数row()CodeIgniter中遇到PHP错误,php,codeigniter,Php,Codeigniter,帮助: 遇到一个PHP错误 严重性:警告 消息:非法字符串偏移量“periode” 文件名:models/k3m.php 行号:32 遇到一个PHP错误 严重性:警告 消息:非法字符串偏移量“bulan” 文件名:models/k3m.php 电话号码:33 致命错误:在第39行的C:\LaporBOS\htdocs\laporbos3\application\modules\laporan\u k3\models\k3m.php中对非对象调用成员函数row() I have error: 函
I have error:
函数saldo_bank($param){
$periode=$param['periode'];
$bulan=$param['bulan'];
$bulan=$this->get_bulan2($periode,$bulan);
$sql=“选择IFNULL(SUM(IFNULL(jumlah_debet,0)),0)-IFNULL(SUM(IFNULL(jumlah_kredit,0)),0)作为saldo
来自buku_银行
其中年份(tanggal)=“$this->session->userdata(“tahun_anggaran”)。”
和月(tanggal)<$bulan”;
$data=$this->db->query($sql)->row();
返回$data->saldo;
}
发生这种情况是因为您在调用result()之前调用了row(),所以请更改此设置
function saldo_bank($param) {
$periode = $param['periode'];
$bulan = $param['bulan'];
$bulan = $this->get_bulan2($periode,$bulan);
$sql="SELECT IFNULL( SUM(IFNULL(jumlah_debet,0) ),0) - IFNULL( SUM(IFNULL(jumlah_kredit,0) ),0) AS saldo
FROM buku_bank
WHERE YEAR(tanggal) =".$this->session->userdata("tahun_anggaran")."
AND MONTH(tanggal) < $bulan";
$data = $this->db->query($sql)->row();
return $data->saldo;
}
对此
$data = $this->db->query($sql)->row();
传递的数组内部的偏移量不可用。请尝试检查该数组是否存在偏移量 传递调用的偏移量并将其设置为变量。 检查$param数组,并将其写在函数顶部
$data = $this->db->query($sql)->result()->row();
“periode”或“bulan”是否存在于数组中。
$param
param是一个字符串,但您将其视为数组。var\u dump($param)
如果类型是数组,则问题是您没有periode,而bulan键,如果类型是string
,那么就有了。如果没有行号,就很难判断,但我假设即使解决了另一个问题,您仍然需要在第()行之前添加result()
echo "<pre>";
print_r($param); exit;
$periode = $param['periode'];