Спасите! Совсем пропал с запросом

Fotofun

Новичок
Спасите! Совсем пропал с запросом

Есть база:
PHP:
CREATE TABLE `rts_gold` (
  `id` int(11) NOT NULL auto_increment,
  `unik` varchar(139) default NULL,
  `trade_moment` varchar(128) default NULL,
  `code` varchar(25) default NULL,
  `bid` float default NULL,
  `ask` float default NULL,
  `open` float default NULL,
  `max` float default NULL,
  `min` float default NULL,
  `last` float default NULL,
  `avg` float default NULL,
  `volume` float default NULL,
  `pos` float default NULL,
  `trades` int(11) default NULL,
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=cp1251;

/*Data for the table `rts_gold` */

insert  into `rts_gold`(`id`,`unik`,`trade_moment`,`code`,`bid`,`ask`,`open`,`max`,`min`,`last`,`avg`,`volume`,`pos`,`trades`)
values 
(1,    NULL,   '2008-01-25 17:59:59',   'GOLD-3.08',   925.3,   925.6,  919.5,  930.1,  918.9,  925.6,  925.932,  17931,62988,  731),
(2,NULL,'2008-01-25 17:59:59','GOLD-3.08',925.3,925.6,919.5,930.1,918.9,925.6,925.932,17931,62988,731),
(3,NULL,'2008-01-25 17:59:40','GOLD-6.08',935.1,936.6,936.3,940,935.2,936.5,938.651,496,1692,11),
(4,NULL,'2008-01-28 11:31:18','GOLD-3.08',922.2,922.9,926,926,921.2,922,923.094,596,62460,55),
(5,NULL,'2008-01-28 11:22:41','GOLD-6.08',933.2,934.5,933.5,933.5,933.5,933.5,933.5,2,1696,1),
(6,NULL,'2008-01-31 17:59:57','GOLD-3.08',927.6,927.7,929,932.7,922.8,926.9,927.069,15267,58310,758),
(7,NULL,'2008-01-31 17:07:18','GOLD-6.08',931.5,950,937,946.9,935.8,936.8,940.048,1124,2324,35),
(8,'2008','2008-02-14 17:59:14','GOLD-3.08',907.5,907.7,912.3,916.1,904.1,906.6,910.844,4937,39640,331),
(9,'2008-02-14 17:59:14 GOLD-3.08','2008-02-14 17:59:14','GOLD-3.08',907.5,907.7,912.3,916.1,904.1,906.6,910.844,4937,39640,331),
(10,'2008-02-14 17:20:59 GOLD-6.08','2008-02-14 17:20:59','GOLD-6.08',917.7,919.2,924.1,925.2,916.3,917.4,922.76,257,1604,8);
Делаю на нее запрос:
PHP:
<?php
include 'base.php';
$db = new b_db;
echo ("start<br>");
//вытаскиваю существующие номера контрактов
$db->query("select DISTINCTROW code from rts_gold limit 0,10");
while($db->next_record()) $coder[] = array('code'=>$db->f('code'));
print_r($coder);
// по найденным номерам контрактов достаю поля bid, ask
for($i=0; $i<count($coder); $i++) {
print($coder[$i]['code']);
$db->query("select * from rts_gold  where 'code'=\"".$coder[$i]['code']."\" order by id desc limit 0,1");
	$db->next_record();
	$codem[] = array('bid'=>$db->f('bid'), 'ask'=>$db->f('ask'));
	echo("_____<br>");
}
	print_r($codem);
echo("OK");
exit();
?>
Но почему то втора половина запроса не работает. Идут пустые значения.
Спасите!

-~{}~ 15.02.08 16:28:

Вот такой результат (второй массив пуст):
start
Array ( [0] => Array (
Код:
 => GOLD-3.08 ) [1] => Array ( [code] => GOLD-6.08 ) )
GOLD-3.08_____
GOLD-6.08_____
Array ( [0] => Array ( [bid] => [ask] => ) [1] => Array ( [bid] => [ask] => ) )
OK
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Отформатируй месгу, пожалуйста.
 

Fotofun

Новичок
Извиняюсь, отформатировал как мог :)
Запрос идет по полю "code", там по существу два значения.
Они правильно достаются:GOLD-3.08 и GOLD-6.08
Потом я делаю запрос, чтобы достать последние значения полей bid и ask для каждого из них.... и получаю нули
 

baev

‹°°¬•
Команда форума
[telepathic mode on]
По-моему, где-то не хватает
PHP:
$db = new b_db;
[telepathic mode off]
 

Fotofun

Новичок
нет, коннект к базе идет. Первый же запрос по таблице отрабатывает.
 

baev

‹°°¬•
Команда форума
Извиняюсь, отформатировал как мог
— надо не «как мог», а как в Правилах написано.
Жмите на «редактировать» и используйте псевдотеги 'code' и 'php'
 

Fotofun

Новичок
Да никаких ошибок нет. Я же привел результат работы скрипта. Второй массив codem просто пуст.

-~{}~ 15.02.08 16:51:

Автор оригинала: baev
— надо не «как мог», а как в Правилах написано.
Жмите на «редактировать» и используйте псевдотеги 'code' и 'php'
Нажал, на php выскакивает окошко в которое можно вставить только одну строчку.... Или я что не вкурил?
 

baev

‹°°¬•
Команда форума
Fotofun, Вы такой непонятливый.

Еще раз: отформатируйте код, прочитайте текст по ссылке.
 

Fotofun

Новичок
Добавил по дебагу отражение уведомолений, но там нет по этой сути ничего.
Warning: Call-time pass-by-reference has been deprecated; If you would like to pass it by reference, modify the declaration of [runtime function name](). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file in /usr/home/..../.....inc on line 262
Но это к сути дела не имеет

-~{}~ 15.02.08 16:55:

Текст я прочитал. отформатировал
 

Gas

может по одной?
Fotofun
это написано абсолютно точно о твоей проблеме
мы не знаем как у тебя реализован класс `b_db` (только не нужно здесь приводить его код), мы не видим второго sql запроса (вместо него php-код) и помочь тоже не можем. Ты должен сделать это сам, прочитав ссылки по отладке.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
В чем проблемы то?
выведи во 2-м случае
$query
 

Fotofun

Новичок
Извиняюсь за ламерство.
Вот так?
PHP:
$querys =$db->query("select * from rts_gold  where 'code'=\"".$coder[$i]['code']."\" order by id desc limit 0,1");
echo $querys;
То результатат:
Resource id #15
Resource id #17

Для двух запросов ....
PHP:
у
-~{}~ 15.02.08 17:22:

Может я по другому вопрос составлю. Подскажите пример, когда ищутся последние значения отсортированные по какому-нибудь полю. Может все проще....
 

Fotofun

Новичок
На echo "select * from rts_gold where 'code'=\"".$coder[$i]['code']."\" order by id desc limit 0,1";
получается вроде все чисто:
PHP:
select * from rts_gold where 'code'="GOLD-3.08" order by id desc limit 0,1
и на втором цикле
PHP:
select * from rts_gold where 'code'="GOLD-6.08" order by id desc limit 0,1
По print_r тот же результат....
Может точки и минусы в поле сравнения не нравятся?
 

Fotofun

Новичок
Поменял кавычки на прочтые, но результат нулевой....
PHP:
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);

include 'base.php';
$db = new b_db;

//rts
echo ("start<br>");
$db->query("select DISTINCTROW code from rts_gold limit 0,10");
// while($db->next_record()) $coder[] = array('id'=>$db->f('id'), 'code'=>$db->f('code'));
while($db->next_record()) $coder[] = array('code'=>$db->f('code'));
print_r($coder);

for($i=0; $i<count($coder); $i++) {
print($coder[$i]['code']);
print("<br>*<br>");
echo "select * from rts_gold  where 'code'='".$coder[$i]['code']."' order by id desc limit 0,1";
print("<br>*<br>");
$db->query("select * from rts_gold  where 'code'='".$coder[$i]['code']."' order by id desc limit 0,1");
	$db->next_record();
	$codem[] = array('bid'=>$db->f('bid'), 'ask'=>$db->f('ask'));
	echo("_____<br>");
}
	print_r($codem);
echo("OK");
exit();
?>
start
Array ( [0] => Array (
Код:
 => GOLD-3.08 ) [1] => Array ( [code] => GOLD-6.08 ) ) GOLD-3.08
*
select * from rts_gold where 'code'='GOLD-3.08' order by id desc limit 0,1
*
_____
GOLD-6.08
*
select * from rts_gold where 'code'='GOLD-6.08' order by id desc limit 0,1
*
_____
Array ( [0] => Array ( [bid] => [ask] => ) [1] => Array ( [bid] => [ask] => ) )
 OK
 
Сверху