I've been looking at this code for hours and I can not find the error:
function agregar_a_productos($datos) {
$ok = "false";
$codigo = $datos[0];
$sql = "SELECT COUNT(*) total_registro FROM item_oracle WHERE codigo_articulo='". $codigo."'";
$rs = $this->consulta($sql);
while ($row = mysqli_fetch_array($rs, MYSQLI_ASSOC)) {
$total_registro = $row["total_registro"];
if ($total_registro == 0) {
$sql = "INSERT INTO item_oracle (codigo_articulo,descripcion_articulo,categoria,subcategoria,terceracategoria,alquiler,disponibilidad_foto,marca,tipo,calibre,peso, longitud,capacidad,color,tamano,sistemafreno,gearratio,recuperaciondelinea,rodamentos,medidas,modelo,nombre) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$stmt = $this->consulta_prepared($sql);
$stmt->bind_param("ssssiissssssssssssss", $datos[0], $datos[1], $datos[2], $datos[3], $datos[4], $datos[5], $datos[6], $datos[7], $datos[8], $datos[9], $datos[10], $datos[11], $datos[12], $datos[13], $datos[14], $datos[15], $datos[16], $datos[17], $datos[18], $datos[19], $datos[20], $datos[21]);
$stmt->execute();
if ($stmt) {
$ok = "true";
}else{
$ok="error : ".$this->error;
}
} else {
$sql = "UPDATE item_otracle SET
descripcion_articulo=?,
categoria=?,
subcategoria=?,
terceracategoria=?,
alquiler=?,
disponibilidad_foto=?,
marca=?,
tipo=?,
calibre=?,
peso=?,
longitud=?,
capacidad=?,
color=?,
tamano=?,
sistemafreno=?,
gearratio=?,
recuperaciondelinea=?,
rodamentos=?,
medidas=?,
modelo=?,
nombre=?
WHERE codigo_articulo=?";
$stmt = $this->consulta_prepared($sql);
$stmt->bind_param("sssiisssssssssssssss",
$datos[1],
$datos[2],
$datos[3],
$datos[4],
$datos[5],
$datos[6],
$datos[7],
$datos[8],
$datos[9],
$datos[10],
$datos[11],
$datos[12],
$datos[13],
$datos[14],
$datos[15],
$datos[16],
$datos[17],
$datos[18],
$datos[19],
$datos[20],
$datos[21],
$datos[0]);
$stmt->execute();
if ($stmt) {
$ok = "true";
}
}
}
$arr = array('ok' => $ok);
return ($arr);
}