2013-02-23 5 views
0

У меня есть такой код, чтобы получить через ODBC некоторые данные ...Php в то время как цикл возвращается каждый второе значение

 $data = odbc_exec($this->odbc_id, $odbc_query); 
    odbc_longreadlen($data, 10485760); //10MB = 10485760 
    while(odbc_fetch_row($data)) 
    { 
    $row = odbc_fetch_array($data); 
    if($row['graphID'] != "") { 
    $file_name_jp2 = "TI/" . $table_name . "/" . $row['graphID'] . ".jp2"; 
    $file = fopen ($file_name_jp2, "w"); 
    fputs($file, $row['graph']); 
    fclose($file); 
    set_time_limit(3600); 
} 

unset($row); 
} 

, но по некоторым причинам он выборки каждый каждый второй дб entrie ... Но почему? Что я пишу неправильно?

Что нужно изменить, чтобы получить все данные?

ответ

2

Вы используете как odbc_fetch_array, так и odbc_fetch_row, вы должны использовать один из других. Нечто похожее на:

while($row = odbc_fetch_array($data)) { 
    // As you were.. 
} 

И удалить строку:

$row = odbc_fetch_array($data); 
Смежные вопросы