Как редактировать значения в возвращенном ресурсе результата mysql и пересылать отредактированный ресурс результата - PullRequest
0 голосов
/ 01 апреля 2009

Вот что я пытаюсь сделать ...

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

Как я могу перебирать строки результата, изменять некоторые значения и «переупаковывать» ресурс для возврата во Flash?

Я думал о -

$sql = sprintf("SELECT file_name FROM ....");
$result = mysql_query($sql);
while($row=mysql_fetch_array($result)){ 
    $row['file_name'] = performFunctionOn($row['file_name']);
}
$row = 0;
if(!mysql_data_seek($result,$row))continue;
return $result

Я пытаюсь изменить имя файла, которое хранится в базе данных, и стараюсь не посылать длинную строку обратно во Flash, что, как я понимаю, является простым способом сделать это.

большое спасибо Стивен

1 Ответ

2 голосов
/ 01 апреля 2009

Если вы хотите заменить все выбранные значения литеральной константой, вы можете сделать следующее:

$sql = sprintf("SELECT 'INeedToChangeThis' FROM ....");
$result = mysql_query($sql);
return $result

Если вы хотите изменить данные на лету, вам, вероятно, потребуется извлечь пользовательский класс из mysqli_stmt и переопределить mysqli_stmt::fetch, чтобы обновлять ссылочную переменную после вызова parent fetch.

Здесь - хорошее руководство о том, как извлечь пользовательский класс из mysqli_stmt.

...