PHP - «нет доступных кортежей для этого результата», даже если код результата правильный - PullRequest
0 голосов
/ 30 октября 2019

У меня есть этот кусок кода:

$sql = "...." ; 

$res = $db->query($sql);

$results = array();
//if ($db->next_result($res)) {
    while (false !== ( $riga = $db->fetch_array( $res ) ) ) {
    //while ($riga = $db->fetch_array( $res ) ) {
        $results[] = $riga;                                 
    }
    $db->next_result($res);
//}

// $n = 0;
// while ( $db->next_result($res) ) {
    // $n = $n + 1;
// }

$db->free_results($res);

$myFile = "/var/tmp/testResults";
$fh = fopen($myFile, 'w+') or die("can't open file");
fwrite($fh, var_export($results, true) . "\n");
fclose($fh);

echo json_encode($results); 

У меня есть PHP 5.3.3 на Centos ... в логах он постоянно говорит:

PHP Warning:  odbc_fetch_array(): No tuples available at this result index in...

где это вызов $db-> fetch_array ($ res), который вызывает в классе:

    public function fetch_array($results) {
        return odbc_fetch_array($results);
    }

Так что после прочтения я прочитал, что это может быть вызвано несколькими результирующими наборами, поэтому я попытался увеличить переменную $ n и решил, что это всегдаодин набор записей, на самом деле я всегда получаю правильную структуру jsonified в текстовом файле testResults, так что я не знаю, что может быть ... любой прием был бы оценен? может быть баг сам по себе odbc?

Спасибо! Ура, Луиджи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...