HTML - проблемы с передачей данных строчного массива

Olegnab

Guest
HTML - проблемы с передачей данных строчного массива

Добрый день !

Подскажите, Please, в чем грабли -
на стороне сервера формируем .xml для передачи клиенту;
заголовок и окончание файла читаем из готовых текстовых файлов (передаются нормально).
Модифицируется только табличная часть, которая
берется из текстового массива.
Примерно так -

$m[$i] = "<Row ss:StyleID=\"s34\">\13\10";
....................
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename='a.xml'");
.....................
while ($j != $i) {
print $m[$j];
$j = $j + 1;
}
.........................

При передаче клиенту строк из массива начинаются чудеса -
символы 13 и 10 заменяются на 10 и 8, соответственно .xml
получаем нечитабельный...

Заранее спасибо !

Олег
 

Кром

Новичок
Заголовки тут лишние, к проблеме отношения не имеют.
Смотри, что у тебя происходит в цикле. Лично мне твои манипуляции непоятны.
Что за $i? Почему у тебя цикл не доходит до строки с $i? Вобщем разберись с циклом для начала.
 

Olegnab

Guest
Добрый день !
Дело не в коде (здесь просто вырезки, для примера)
Процесс такой -
Было желание избежать общения с biff и вообще упростить себе жизнь ;
1. В Excel создаем форму любой сложности, сохраняем
как .xml
2. Вырезаем из формы заголовок и окончание, и сохраняем
в отдельных тектовых файлах.
3. При запросе клиента по HTTP заполняем некий массив
строками сначала из файла с заголовком,
затем строками с выборкой из базы данных MYSQL (прямым присвоением строк), затем - добавляем в массив окончание файла.
4. Передаем массив построчно клиенту, как файл .xml
(... header .. цикл ... print $m[$index];)
-у клиента запускается excel и открывается наша заполненная форма (price-list, счет-фактура, что угодно).
Что происходит -
при передаче данных из текстовых файлов - все в порядке. Строки, которые были сформированы , например так -
($m[$index ] = "<Row ss:StyleID=\"s34\">\13\10";)
передаются "коряво". Символы \13\10 в полученном
файле перекодируются в \10\8
при открытии .xml имеем ошибку...
 
Сверху