Как сделать чтобы odbc_result вернула непосредственно значение?

azamat

Guest
Как сделать чтобы odbc_result вернула непосредственно значение?

Вопрос, возможно, глупый, но потерял уже пару часов.
К моему удивлению данный скрипт:
PHP:
if (odbc_fetch_row($res_sub))
{	
               $old = odbc_result($res_sub,"ID");
	do
	{						$new = odbc_result($res_sub,"ID");
	print $old.'-старая<br>';
	print $new.'-новая<br><br><br>';
               } while (odbc_fetch_row($res_sub));
}
печатает мне одинаковые id, хотя как я думал он должен печатать пары первый-очередной. Как я понял в old хранится непосредственно odbc_result на каждом шаге, как взять непосредственно значение. Заранее прошу прощения, если очень торможу.

Неужели никто не может помочь.

-~{}~ 22.07.04 16:14:

Блин, что, никто не знает?
 

tony2001

TeaM PHPClub
перечитай вслух свой вопрос и попробуй его понять сам для начала.
 

azamat

Guest
Да суть вопроса вот в чем:
Выборка [ID]:
44687
8349
1642

Вот это возращает скрипт:
44687-старая
44687-новая

8349-старая
8349-новая

1642-старая
1642-новая

Надо:
44687-старая
44687-новая

44687-старая
8349-новая

44687-старая
1642-новая
 

tony2001

TeaM PHPClub
объясняю.
у тебя выполняется все в такой последовательности:
odbc_fetch_row() - фетчим
odbc_result() - берем из отфетченных данных конкретную ячейку.
odbc_result() - берем из отфетченных данных конкретную ячейку.(опять. те же данные.
)
odbc_fetch_row() - фетчим
odbc_result() - берем из отфетченных данных конкретную ячейку.
понял/нет ?

а что тебе надо получить - это второй вопрос, объясняй и его заново.
 

azamat

Guest
Да, ты все правильно понял. Но на всякий случай еще раз:

1. фетчу, то есть теперь я на первой записи, забираю конкретную ячейку в первую переменную.
2. бегу по остальным записям, забираю эту же ячейку, но в другую переменную.
(это видно по скрипту)

Вопрос: Почему меняется первая переменная?

Спасибо, что пытаешься разобраться, потому что я уже совсем запутался и смотрю на все это тупыми глазами.
 

tony2001

TeaM PHPClub
потому, что у тебя странный код и ты не можешь сам понять что тебе надо.
зачем-то притянутые за уши do{} while() и какие-то "старые"-"новые" переменные.
сам определись в первую очередь.
 

azamat

Guest
Ладно, отойдем вообще от моего кода, который, конечно далек от совершенства.
Тогда вопрос поставлю так:

Выборка $r
[ID]:
1
2
3

Скрипт:
PHP:
odbc_fetch_row($r);
$var1 = odbc_result($r,'ID');
while (odbc_fetch_row($r))
{
    $var2 = odbc_result($r,'ID'); 
} 
print "$var1<br>";
print "$var2<br>";

Вопрос: Что напечатает скрипт?
 

saa

Guest
имхо:
1
3

-~{}~ 22.07.04 17:04:

Извиняюсь
1
2

-~{}~ 22.07.04 17:04:

А может и
1

-~{}~ 22.07.04 17:04:

точно 1!
 

azamat

Guest
Блин, сам уже проверил этот кусочек, именно:
1
3

А в работающем коде,
3
3
только в своих значениях, конечно

-~{}~ 22.07.04 17:06:

Нет :), именно
1
3
 

saa

Guest
azamat, делай var_dump() в цикле и все тебе будет видно.
 

saa

Guest
Того что хочешь увидеть, и увидишь что хочешь.
 

azamat

Guest
Все, дело было не в бобине, проблема в водителе, если культурно сказать, но все равно всем спасибо, особенно saa, наставил на путь истинный. Как дурак, блин впился в кусок кода, 3 часа потерял :(
 
Сверху