pquery($sql, array($projectid)); } else { // Полный запрос выполняем через mysqli (PearDatabase с этим запросом даёт пустой результат) $host = $dbconfig['db_server']; $port = 3306; if (!empty($dbconfig['db_port']) && preg_match('/:?(\d+)/', $dbconfig['db_port'], $m)) $port = (int)$m[1]; $mysqli = new mysqli($host, $dbconfig['db_username'], $dbconfig['db_password'], $dbconfig['db_name'], $port); if ($mysqli->connect_error) { fwrite(STDERR, "mysqli connect: " . $mysqli->connect_error . "\n"); exit(1); } $mysqli->set_charset('utf8'); $ok = $mysqli->real_query($sql); if (!$ok) { fwrite(STDERR, "mysqli error: " . $mysqli->error . "\n"); exit(1); } $res = $mysqli->store_result(); $row = $res ? $res->fetch_assoc() : null; if ($res) $res->free(); $mysqli->close(); if (!$row) { echo "Проект с projectid={$projectid} не найден или запрос вернул пусто.\n"; exit(0); } echo json_encode($row, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); exit(0); } if (!$result) { fwrite(STDERR, "Ошибка запроса: " . print_r($adb->database->errorInfo(), true) . "\n"); exit(1); } $row = $adb->fetchByAssoc($result); if (!$row) { echo "Проект с projectid={$projectid} не найден или запрос вернул пусто.\n"; exit(0); } echo json_encode($row, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);