2009-04-01 4 views
0

Вот что я пытаюсь сделать ...Как изменить значение в возвращаемом тузд результате ресурсе и вперед отредактированного ресурс результата

Im использованием 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, который я понимаю, это простой способ сделать это ,

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

ответ

2

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

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

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

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

+0

Привет, на самом деле я хочу получить имя_файла из базы данных, а затем выполнить функцию, которая изменит имя_файла. так что я могу сделать - $ sql = sprintf («SELECT» myFunction (имя_файла) FROM ... если это так - отлично. спасибо – undefined

+0

спасибо, можете ли вы описать это дальше, пожалуйста ... Я вырыл в папке amfphp, чтобы увидеть где я могу перехватить переменную и посмотрел руководство для mysqli_stmt. Как я буду делать то, что вы предлагаете. – undefined

+0

См. обновленное сообщение. – Quassnoi