LINUX.ORG.RU

php и M$ office XML = переносы строк


0

1

есть вот такая вот задача-мне нужно из многострочной TEXTAREA вводить данные в office xml файл в первозданном виде-то есть тоже многострочно

вопрос вот в чем -

новая строка там задается вот так вот -

<w:p>
<w:pPr>
<w:rPr>
<w:lang w:val=«EN-US»/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:lang w:val=«EN-US»/>
</w:rPr>
<w:t>какой-то текст</w:t>
</w:r>
</w:p>

сл-но,для добавления одной строки мне нужно

1) найти ее начало,для записи тегов до текста
2) найти ее конец и закрыть теги

вопрос - как? как распарсить textarea и найти начало и конец строк?там веть есть еще и вирт. и физич. методы переноса строк...

конечно,проще понапихать много текстбоксов - дабы не париться с разбором-но это неудобно. textarea гораздо удобнее


Ответ на: комментарий от iSage

да,оно

новый вопрос

маркер,показывающий куды ставить новый текст выглядит просто как отдельное слово.в xml это как то так

<w:r>text1</w:r>

то есть это надо менять многократно на код в первом посте,дабы получить список

пишу для теста выдаваемого xml код

============

arr=explode(«\n»,$_POST['text1']); //разбиваем строки по знаку переноса строки

$str=";
foreach($arr as $k=>$v){

$str.='<w:p><w:pPr><w:rPr>
<w:lang w:val=«EN-US»/></w:rPr></w:pPr><w:r><w:rPr><w:lang w:val=«EN-US»/></w:rPr><w:t>'.$v.'</w:t></w:r></w:p>';

$lala=htmlspecialchars($str); //чтобы браузер не парсил xml
echo '</br>';
echo $lala;
echo '</br>';
}

==============

в итоге видем вот такие чудеса

http://s015.radikal.ru/i331/1011/0f/ef70d2714176.png

почему оно столько раз дублируется?

для наглядности строки в textarea назвал вот так

__________________1
__________________2
__________________3


что я делаю не так?


wozap
() автор топика
Ответ на: комментарий от boombick

чет я туплю...


$links = explode(«\n»,convert_($_POST['text1']));

$result =";


foreach ($links as $link) {
$result .= '<w:p><w:pPr><w:rPr><w:lang w:val=«EN-US»/></w:rPr></w:pPr><w:r><w:rPr><w:lang w:val=«EN-US»/></w:rPr><w:t>' . $link . '</w:t></w:r></w:p>';
}

echo $aa=htmlspecialchars($result);

wozap
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.