hostmaked
1.11.2013 - 14:20
Здравствуйте.
Есть html странички c кодом.
Город 1 - Команда желтых
<br><br><b>Текущая неделя ( 28 октября 2013 - 03 ноября 2013 )</b><br><br>побед - 13, поражений - 7<br>В гонке с красными побед - 2, поражений - 4
<br>В гонке с синими побед - 1, поражений - 3<br>В гонке с зелеными побед - 10, поражений - 0<br><br><br>
Всего шесть городов, по 4 команды в каждом. Данный кусок кода идентичен. всего 24 команды
Хочу вытянуть из этого куска цифры - к-во побед и к-во поражений и для наглядности поместить в таблицу (
пример таблицы)
Правдами и неправдами мне удалось вытянуть все цифры. Но никак не удается запихнуть их в такую табличку. Делал так:
цикл -
вытянул страничку,
вырезал этот кусок кода,
из него вытянул в переменные "победы", "поражения", "разница"
и здесь загвоздка - не знаю каким образом записывать последовательно вытянутые цифры в нужные ячейки таблицы.
конец цикла
ПХП только начал изучать, прошу сильно не бить и подтолкнуть в нужном направлении. Спасибо
Игорь_Vasinsky
1.11.2013 - 14:24
я б на вашем месте работал бы с БД
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
exotica
1.11.2013 - 14:30
добавляй новую строку в таблице, в конце цикла
<tr>
<td>Название команды</td>
<td>Победы</td>
<td>Поражения</td>
<td>Разница</td>
</tr>
_____________
[FAQ]Регистрации пользователей, сохранение в БД---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
hostmaked
1.11.2013 - 14:43
Цитата (Игорь_Vasinsky @ 1.11.2013 - 14:24) |
я б на вашем месте работал бы с БД |
с базами никогда не работал, только только знакомлюсь с языком. Да и надеюсь что есть все же проще способ чем загонять эти цифры в бд а потом из нее вытягивать
Игорь_Vasinsky
1.11.2013 - 14:50
а где вы информацию собирались хранить?
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
hostmaked
1.11.2013 - 15:14
Цитата (Игорь_Vasinsky @ 1.11.2013 - 14:50) |
а где вы информацию собирались хранить? |
хранить в смысле записывать в бд, не нужно. Нужно взять цифры и вывести их в хтмл таблицу на страничке. Когда эти цифры изменятся на источнике, соответственно новые данные перезапишутся (обновятся)
Игорь_Vasinsky
1.11.2013 - 15:20
аа... это тебе парсер нужно. и опыт в php
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Используй для этого DOM. (Document Object Model)
http://php.net/manual/en/book.dom.phpТам примеры есть:
Example
<?php
$doc = new DOMDocument();
$doc->loadHTML('<HTML><A HREF="ss">asd</A>');
$body = $doc->getElementsByTagName('body')->item(0);
print htmlspecialchars(innerHTML($body));
Покажите входящие данные, и как Вы хотите что-бы было.
И твой код.
hostmaked
7.11.2013 - 17:32
Цитата (Dezigo @ 1.11.2013 - 16:17) |
Используй для этого DOM. Покажите входящие данные, и как Вы хотите что-бы было. И твой код. |
До дома еще как до неба боком если честно))
Входящие:
Есть 24 странички (6 городов по 4 комы):
http://hod.lialso.com/keepers/exemp/city1-blu.html
http://hod.lialso.com/keepers/exemp/city1-green.html
http://hod.lialso.com/keepers/exemp/city1-red.html
http://hod.lialso.com/keepers/exemp/city1-yellow.html
http://hod.lialso.com/keepers/exemp/city2-blu.html
http://hod.lialso.com/keepers/exemp/city2-green.html
http://hod.lialso.com/keepers/exemp/city2-red.html
http://hod.lialso.com/keepers/exemp/city2-yellow.html
http://hod.lialso.com/keepers/exemp/city3-blu.html
http://hod.lialso.com/keepers/exemp/city3-green.html
http://hod.lialso.com/keepers/exemp/city3-red.html
http://hod.lialso.com/keepers/exemp/city3-yellow.html
http://hod.lialso.com/keepers/exemp/city4-blu.html
http://hod.lialso.com/keepers/exemp/city4-green.html
http://hod.lialso.com/keepers/exemp/city4-red.html
http://hod.lialso.com/keepers/exemp/city4-yellow.html
http://hod.lialso.com/keepers/exemp/city5-blu.html
http://hod.lialso.com/keepers/exemp/city5-green.html
http://hod.lialso.com/keepers/exemp/city5-red.html
http://hod.lialso.com/keepers/exemp/city5-yellow.html
http://hod.lialso.com/keepers/exemp/city6-blu.html
http://hod.lialso.com/keepers/exemp/city6-green.html
http://hod.lialso.com/keepers/exemp/city6-red.html
http://hod.lialso.com/keepers/exemp/city6-yellow.html
Нужно из каждой из них вытянуть из строки "Всего побед - X, поражений - Y" собственно сами X и Y, вычислить разницу Z=X-Y. И занести переменные XYZ в таблицу
http://hod.lialso.com/keepers/exemp/table.phpМой код:
<?php
echo '<table border="1">';
echo'<style type="text/css">
.tg-table-light { border-collapse: collapse; border-spacing: 0; }
.tg-table-light td, .tg-table-light th { background-color: #fff; border: 1px #bbb solid; color: #333; font-family: sans-serif; font-size: 100%; padding: 10px; vertical-align: top; }
.tg-table-light .tg-even td { background-color: #eee; }
.tg-table-light th { background-color: #ddd; color: #333; font-size: 110%; font-weight: bold; }
.tg-table-light tr:hover td, .tg-table-light tr.even:hover td { color: #222; background-color: #FCFBE3; }
.tg-bf { font-weight: bold; } .tg-it { font-style: italic; }
.tg-left { text-align: left; } .tg-right { text-align: right; } .tg-center { text-align: center; } .tg-center-w {text-align: center;color: green;} .tg-center-l {text-align: center;} .tg-center-s {text-align: center;}
</style>
<table class="tg-table-light">
<tr>
<th rowspan="2">Команда<br /> Город</th>
<th colspan="3" >Синие</th>
<th colspan="3" >Красные</th>
<th colspan="3" >Зеленые</th>
<th colspan="3" >Желтые</th>
</tr>
<tr >
<th>↑</th>
<th >↓</th>
<th>∑</th>
<th>↑</th>
<th >↓</th>
<th>∑</th>
<th>↑</th>
<th >↓</th>
<th>∑</th>
<th>↑</th>
<th >↓</th>
<th>∑</th>
</tr>';
include "cities.php"; http://hod.lialso.com/keepers/exemp/city1-blu.html";
for($i=0;$i<=23;$i++){
$content=file_get_contents($name[$i]);
$tag_in="<br><b>";
$tag_out="<br><br><b>";
$position=strpos($content,$tag_in);
$content=substr($content,$position);
$position=strpos($content,$tag_out);
$content=substr($content,0,$position);
$content=str_replace("<br><br>","<br>",$content);
$content=str_replace("</b><br><br>","</b><br>",$content);
preg_match_all("/<\/b><br>(.*?)<br>/", $content, $content);
$var=ereg_replace("Всего","",$content[1][0]);
$digit1 = substr($var, 13, 3);
$digit1 = chop($digit1, ',');
$digit2= substr($var, 38, 3);
$result=$digit1-$digit2;
$city=array('Город1','Город2','Город3','Город4','Город5','Город6');
$j=0;
while($j<1){
echo '<td>'.$digit1.'</td>';
echo '<td>'.$digit2.'</td>';
echo '<td>'.$result.'</td>';
$j++;}
}
?>
Натолкните на путь исправления пож-ста
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.