"error", "message" => "Nama tidak boleh kosong"]); exit; } try { $stmt = $conn->prepare("INSERT INTO jalan (nama,status,panjang,koordinat) VALUES (?,?,?,?)"); if(!$stmt) { $err = $conn->error; file_put_contents('error_log.txt', date('[Y-m-d H:i:s]') . " JALAN PREPARE ERR: $err\n", FILE_APPEND); ob_clean(); echo json_encode(["status"=>"error","step"=>"prepare","message"=>$err]); exit; } $stmt->bind_param("ssds", $nama, $status, $panjang, $koordinat); if($stmt->execute()){ $id = $stmt->insert_id; ob_clean(); echo json_encode(["status"=>"success","id"=>$id]); } else { $err = $stmt->error; file_put_contents('error_log.txt', date('[Y-m-d H:i:s]') . " JALAN EXEC ERR: $err | Payload: $raw\n", FILE_APPEND); ob_clean(); echo json_encode(["status"=>"error","step"=>"execute","message"=>$err]); } $stmt->close(); } catch (Exception $e) { $err = $e->getMessage(); file_put_contents('error_log.txt', date('[Y-m-d H:i:s]') . " JALAN EXCEPTION: $err | Payload: $raw\n", FILE_APPEND); ob_clean(); echo json_encode(["status"=>"error","step"=>"exception","message"=>$err]); } ?>