|
|
|
|
|
для: Dima1999
(17.09.2005 в 09:30)
| | 1) Как вы выводите HTML-файлы в браузер?
2) Да | |
|
|
|
|
|
|
|
для: Dima1999
(17.09.2005 в 09:30)
| | >Что значит подставлю вместо контент значение из БД? Не понял.
вместо opr000JR.htm пишите файл который вы хотите перевести в CSV формат | |
|
|
|
|
|
|
|
для: Dima1999
(17.09.2005 в 00:18)
| | Такие вопросы:
1) >opr000JR.htm - это я просто для теста взял, потом вместо $content подставите значение из базы данных.
Что значит подставлю вместо контент значение из БД? Не понял.
2) Если я добалю в таблицу несколько строк (тоже с колспанами), будет ли работать приведнный выше код? | |
|
|
|
|
|
|
|
для: cheops
(16.09.2005 в 22:18)
| | Спасибо за все докиды. Завтра буду пробовать. | |
|
|
|
|
|
|
|
для: Dima1999
(16.09.2005 в 21:55)
| | А заголовки следует поместить в самое начало
<?php
header(".....attachment......");
header(.......итд..................);
?>
|
а приведённый выше код следует поместить вместо оператора
| |
|
|
|
|
|
|
|
для: cheops
(16.09.2005 в 21:48)
| | Нет, я имею в виду, что сперва было
<?
header(".....attachment......");
header(.......итд..................)
echo $text;
?>
| в результирующем файле, на который была ссылка. В новом коде этого ничего нет. Куда это вписывать? | |
|
|
|
|
|
|
|
для: Dima1999
(16.09.2005 в 21:32)
| | Хм... так а вроде остались... я у себя в результате первой строкой наблюдаю
Номер:;Фамилия;Имя:;Паспорт (св-во о рождении):;Город, страна:;Дата рождения:;Рейтинг:;Организация, тренер;Виза врача:;
|
| |
|
|
|
|
|
|
|
для: cheops
(16.09.2005 в 19:57)
| | А куда же делись хэдеры? | |
|
|
|
|
|
|
|
для: cheops
(16.09.2005 в 13:54)
| | Вот конечный вариант
<?php
$content = file_get_contents("opr000JR.htm");
$str_begin = 0;
$str_end = 0;
while(true)
{
$str_begin = strpos($content, '<tr', $str_end);
if($str_begin == 0) break;
$str_end = strpos($content, '</tr', $str_begin);
$tr[] = substr($content, $str_begin, $str_end - $str_begin);
}
foreach($tr as $line)
{
preg_match_all("|<td[^>]*>(.+)</td|iU",$line,$out);
$text = "";
foreach($out[1] as $value) $text .= $value.";";
$file[] = $text;
}
$content = implode("\r\n",$file);
echo $content;
?>
|
HTML-данные поступают в переменной $content и в результате содержимое CSV-файла также возвращается в виде переменной $content. | |
|
|
|
|
|
|
|
для: Dima1999
(16.09.2005 в 09:23)
| | Я сейчас убегаю не успеваю до ума довести скрипт - будем в два этапа резать сначала на массив подстрок, расположенных между <tr> и </tr>, а затем разбирать их
<?php
$content = file_get_contents("opr000JR.htm");
$str_begin = 0;
$str_end = 0;
while(true)
{
$str_begin = strpos($content, '<tr', $str_end);
if($str_begin == 0) break;
$str_end = strpos($content, '</tr', $str_begin);
$tr[] = substr($content, $str_begin, $str_end - $str_begin);
echo "$str_begin<br>";
echo "$str_end<br>";
}
echo "<pre>";
print_r($tr);
echo "</pre>";
?>
|
С регулярным выражением вечером продолжим. opr000JR.htm - это я просто для теста взял, потом вместо $content подставите значение из базы данных. | |
|
|
|
|