|
|
|
| Мне доступна для редактирования только функция bar. Единственным решением я вижу - это клонировать $result, но как этого сделать я не знаю.
function foo(){
$result = mysql_query("SELECT * FROM table_name");
$output = bar($result);
return $output;
}
function bar($result){
$block1 = create_block_1($result);
$block2 = '';
/*
В этой части функции мне необходима переменная $result
со всеми результатами, чтобы создать $block2.
*/
return $block1 . $block2;
}
function create_block_1($result){
// здесь вытаскиваются все строки из $result
while ($row = mysql_fetch_object($result)) {
$output .= $row->id;
}
return $output;
}
|
| |
|
|
|
|
|
|
|
для: Женечка
(31.07.2011 в 18:29)
| | Ммм... не очень понятно, какова цель клонирования? $result - это дескриптор, т.е. ссылка на результирующую таблицу где-то в дебрях библиотеки libmysql. Вам что требуется? Повторно пройтись по результатам или что-то другое? | |
|
|
|
|
|
|
|
для: cheops
(31.07.2011 в 18:32)
| | да, верно, я хочу ещё раз пройтись по результатам | |
|
|
|
|
|
|
|
для: Женечка
(31.07.2011 в 18:29)
| | Нашел решение.
Вызов функции:
mysql_data_seek($result, 0);
|
перемещает внутренний указатель в результате запроса к ряду с указанным номером. | |
|
|
|