Add CoolSMS PHP SDK, and update Composer dependencies

This commit is contained in:
Kijin Sung 2016-11-03 20:19:28 +09:00
parent 40c43e8fa0
commit c719fc0500
242 changed files with 3487 additions and 28983 deletions

View file

@ -17,9 +17,12 @@ http://simplehtmldom.sourceforge.net/
Install
-------
composer.phar require
- package name: "sunra/php-simple-html-dom-parser": "dev-master"
composer.phar
```json
"require": {
"sunra/php-simple-html-dom-parser": "v1.5.0"
}
```
Usage
-----

View file

@ -1,7 +1,4 @@
<?php
// say me who add "О╩©" into start of file?
// Becouse of this 3 symbol before <?php - php get error
// i think it Sublime Text
namespace Sunra\PhpSimple;
@ -9,12 +6,18 @@ require 'simplehtmldom_1_5'.DIRECTORY_SEPARATOR.'simple_html_dom.php';
class HtmlDomParser {
static public function file_get_html() {
return call_user_func_array ( '\file_get_html' , func_get_args() );
}
/**
* @return \simplehtmldom_1_5\simple_html_dom
*/
static public function file_get_html() {
return call_user_func_array ( '\simplehtmldom_1_5\file_get_html' , func_get_args() );
}
// get html dom from string
static public function str_get_html() {
return call_user_func_array ( '\str_get_html' , func_get_args() );
/**
* get html dom from string
* @return \simplehtmldom_1_5\simple_html_dom
*/
static public function str_get_html() {
return call_user_func_array ( '\simplehtmldom_1_5\str_get_html' , func_get_args() );
}
}

View file

@ -1,17 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 45
/svnroot/simplehtmldom/!svn/ver/179/trunk/app
END
google.htm
K 25
svn:wc:ra_dav:version-url
V 56
/svnroot/simplehtmldom/!svn/ver/179/trunk/app/google.htm
END
index.php
K 25
svn:wc:ra_dav:version-url
V 55
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/index.php
END

View file

@ -1,99 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/app
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2009-02-23T09:04:02.699587Z
179
me578022
d0e60b4b-9046-0410-940c-b97530268c78
google.htm
file
2010-08-17T19:13:52.500237Z
72a16a066c5a729cd5ddaf6e39082b05
2009-02-23T09:04:02.699587Z
179
me578022
60128
js
dir
index.php
file
2010-08-17T19:13:52.502237Z
3793524c0c846be09274b428d4972b60
2008-12-14T19:02:48.351607Z
176
me578022
4496

View file

@ -1,891 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="ctl00_Head1"><title>
FootballScoresLive - Previous Results
</title><meta name="Keywords" content="football,soccer,score,goals,penalty,penalties,red cards,yellow cards,results,england,
english,scotland,scottish,wales,welsh,europe,european,sms,results by sms" /><meta name="Description" content="FootballScoresLive offers continuous updates of scores from football (soccer)
matches in Britain, Europe, North and South America, and Asia, free direct to your web browser,
and by SMS to your mobile." /><link href="page.css" rel="stylesheet" type="text/css" /><link href="news.css" rel="stylesheet" type="text/css" /><link href="results.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
<script type="text/javascript" src="MMfuncs.js"></script>
<script type="text/javascript" src="swfdetect.js"></script>
<script type="text/vbscript" src="swfver.vbs"></script>
<link rel="shortcut icon" href="/favicon.ico" /><style type="text/css">
.atlas__delta { font-family:Lucida Console; }
</style></head>
<body onload="MM_preloadImages('images/buttons/englishNational_hl.jpg','images/buttons/englishLeagues_hl.jpg',
'images/buttons/futureFixtures_hl.jpg','images/buttons/italianLeagues_hl.jpg','images/buttons/leagueTables_hl.jpg','images/buttons/login_hl.jpg','images/buttons/favourites_hl.jpg','images/buttons/personalise_hl.jpg','images/buttons/previousResults_hl.jpg','images/buttons/scottishLeagues_hl.jpg','images/buttons/seasonTicket_hl.jpg','images/buttons/spanishLeagues_hl.jpg','images/buttons/sponsored_hl.jpg','images/buttons/supermarket_hl.jpg','images/buttons/livescores_hl.jpg')"
onunload="MM_callJS('CheckFlash();')">
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
<form name="aspnetForm" method="post" action="MatchResults.aspx" id="aspnetForm">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="dB6ayi9LZ+8oLEEG+Bb0EaB7S0yWNAwmwFJYNlmIPIfC1cvZYgBlKWTvoA4O9/nWx6kKCiBPFnSnfWNC5mLsqwKJAqRalzt4zBR7te1bjeJGgN0H2d1aCn3KgK2DLo6jp/xsNAQLvdqugFXdJ+7RvO58WASnJAH4vjnV2vTi6kKfuRGvNvzsfcybchbHQ+T2yUU9pTrLfSRSC6qEw00ANEJLyR8cnnsgTQhOcXFIPwCbFQEljWnQHmV6l+YMt9GeyxuhD7qL+JcVOPkqZ4TROE1TWmVLD8kOwmpEaMwINDlz/veOnNh/HVdabDznCkdFd3yzhpyyx4/mqWqp4GmkbsFyiUvZoKYin/4xf7L1Z0NfMamm3lZZMFpWz8AhmWcL99qa5kcLgjtXMzZvOKn6K/pud0lEVkvl3Kz2jXgzZPxh3qdX4Nx5anjttd6NKyF3wSlfVMk0j8zoZmja8HaqpwZZfSFnn+U7wWO6D9vzZKDJ/nxUbJHqEaLYYz+QD6zWHVfsEi3cZJlit0oOWatl8AjSHKPmFi3oD9jD3K/FiuhYFYkyk07Jpoe/6YvKgeisZaFYDQrqTTVGYul9rQRVRkUc0UVrt7TZJ/d08EXYKhWYRBx2xxQt3Yfbefr45GCComTUGOjml7DVITe9811QIXfgw5GaECa6aBi2hvYSB6gdhFlqrdqi/HK2DTcXFTyN5n749O3MgVJGSQtXP/xsTp3J1t2lOSMlz9hZYwQUDqOpaWZG2Ae8JmzhvdClyw1AxhJolgEGsutAtYhXFc16ihtjYd/JXx47zeBoB8temPCNJwpFmAN3iXV9nhu5RZ6q8hSnpfCBCn756EDnykItEhTStGovLsJG+QdRNsLE56mNtIxFxeAGrwLWJ260+QsRcvimNAERfZtow7Vx/JPMJLfXrvd1G6u0jP/uqJAQPP8WjVUUfAK5yJHi2PzzGTtFDPd7TJenlgzzyzTcPjJKib+W+CRBBboPRnro9659+79nZwYXdbHHDlQiNcBKZfYKohFHSteJRn4/XnUI2MAi+j9a5JfGs7syF7OWjvFCevTrS/toNPaPzM+muJF3/cLQA0kuM/OvaS+9Kj16BCdNfy6mPZMy6pD95xMGomu1adBwKvaTLMmjrt5Kgh5RxGrUf+pl1IoY9u8=" />
<script src="/WebResource.axd?d=OSFApkHgVTFGp_WGnj5w0YyfbDgId8eejj1HHj2udCziBXq1lnucLLMhY2b4ssXravjY6R0n3Xz5xE3pKbfs7VC_WlWODN-9NNOB8qqY6cA1&amp;t=633112977674076250" type="text/javascript"></script>
<script src="/WebResource.axd?d=OSFApkHgVTFGp_WGnj5w0YyfbDgId8eejj1HHj2udCziBXq1lnucLLMhY2b4ssXravjY6R0n3Xz5xE3pKbfs7blAzxonPUmCsga2GgPJUY41&amp;t=633112977674076250" type="text/javascript"></script>
<div>
<table id="Table_01" width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="2" rowspan="2" width="394" height="111" >
<a href="LiveScores.aspx">
<img src="images/fsl_logo.jpg" width="394" height="111" border="0" alt="FootballScoresLive logo" /></a></td>
<td height="81" width="100%" valign="middle" background="images/grass_top.jpg" align="center">
<a id="ctl00_lnkScores2Mobile" title="Click here for Live Scores to your mobile" href="live-premiership-football-scores-via-sms.aspx" style="display:inline-block;"><img title="Click here for Live Scores to your mobile" src="images/scores2mobile.jpg" border="0" /></a>
</td>
<td width="174" height="81" align="center" valign="middle" background="images/grass_top.jpg">
<a href="Register.aspx"><img src="images/btn_reg.gif" border="0" /></a>
</td>
</tr>
<tr style="color: yellow;">
<td width="237" height="30" align="center" valign="middle" background="images/visitors_bg.jpg" class="body12">
<strong>
For <span style="color: red">FREE</span> goals to your mobile</strong>
<a id="ctl00_HyperLink1" class="navlink" href="fixtures.aspx">Click Here</a></td>
<td align="center" valign="middle" bgcolor="#000000" class="body12">
<table width=100% border="0" cellpadding="0" cellspacing="0">
<tr style="color: white;">
<td>
<input type="submit" name="ctl00$LoginView5$btnLogin" value="LogIn" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$LoginView5$btnLogin&quot;, &quot;&quot;, false, &quot;&quot;, &quot;login.aspx&quot;, false, false))" id="ctl00_LoginView5_btnLogin" />
</td>
<td>&nbsp;
</td>
</tr>
</table>
</td>
</tr>
<!--
<tr>
<td height="16" colspan="4" bgcolor="#000000">
&nbsp;|&nbsp;<a href="default.aspx" class="navlink">Home</a>
&nbsp;|&nbsp;<a href="live-premiership-football-scores-via-sms.aspx" class="navlink">SMS Service</a>
&nbsp;|&nbsp;<a href="LiveScores.aspx" class="navlink">Live Scores</a>
&nbsp;|&nbsp;<a href="MatchResults.aspx" class="navlink">Previous Results</a>
&nbsp;|&nbsp;<a href="fixtures.aspx" class="navlink">Future Fixtures</a>&nbsp;|&nbsp;
<a id="ctl00_LoginStatus2" class="navlink" href="javascript:__doPostBack('ctl00$LoginStatus2$ctl02','')">Login</a>&nbsp;|&nbsp;
<a href="login/personal.aspx" class="navlink">Personalise</a>&nbsp;|&nbsp;
<br />
</td>
</tr>
-->
<tr height="100%">
<td width="174" align="center" valign="top" background="images/grass_left.jpg">
<!--
<a href="#" onclick='window.external.AddFavorite(location.href,document.title);' class="navlink">
<img src="images/favourites.jpg" border="0"/></a>
-->
<br />
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<a href="#" onclick='window.external.AddFavorite(location.href,document.title);' class="navlink">
<img src="images/buttons/favourites.jpg" border="0" alt="Add this page to your favourites" name="fav" width="165" height="21" onmouseover="MM_swapImage('fav','','images/buttons/favourites_hl.jpg',1)" onmouseout="MM_swapImgRestore()" />
</a>
</td>
</tr>
<tr>
<td><img src="images/buttons/seasonTicket.jpg" border="0" alt="Season Ticket Goal Alerts - coming soon" name="season" width="166" height="22" onmouseover="MM_swapImage('season','','images/buttons/seasonTicket_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td><img src="images/buttons/mobile.jpg" border="0" alt="Mobile Goal Alerts" name="mobile" width="166" height="20" /></td>
</tr>
<tr>
<td><a href="live-premiership-football-scores-via-sms.aspx">
<img src="images/buttons/englishLeagues.jpg" alt="English Leagues" name="engLg" width="166" height="19" border="0" onmouseover="MM_swapImage('engLg','','images/buttons/englishLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><img src="images/buttons/englishNational.jpg" border="0" alt="English National Team - coming soon" name="engNat" width="166" height="18" onmouseover="MM_swapImage('engNat','','images/buttons/englishNational_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td>
<a href="live-scottish-premier-league-football-scores-via-sms.aspx">
<img src="images/buttons/scottishLeagues.jpg" border="0" alt="Scottish Leagues" name="scotLg" width="166" height="18" onmouseover="MM_swapImage('scotLg','','images/buttons/scottishLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td>
<a href="live-spain-football-scores-via-sms.aspx">
<img src="images/buttons/spanishLeagues.jpg" border="0" alt="Spanish Leagues" name="spanLg" width="166" height="18" onmouseover="MM_swapImage('spanLg','','images/buttons/spanishLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td>
<a href="live-italy-football-scores-via-sms.aspx">
<img src="images/buttons/italianLeagues.jpg" border="0" alt="Italian Leagues" name="italLg" width="166" height="18" onmouseover="MM_swapImage('italLg','','images/buttons/italianLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><a href="LiveScores.aspx"><img src="images/buttons/livescores.jpg" border="0" alt="Live Scores" name="world" width="166" height="20" onmouseover="MM_swapImage('world','','images/buttons/livescores_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><img src="images/buttons/supermarket.jpg" border="0" alt="Football Supermarket - coming soon" name="super" width="166" height="20" onmouseover="MM_swapImage('super','','images/buttons/supermarket_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td><a href="MatchResults.aspx"><img src="images/buttons/previousResults.jpg" border="0" alt="Previous Results" name="prev" width="166" height="20" onmouseover="MM_swapImage('prev','','images/buttons/previousResults_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><a href="fixtures.aspx"><img src="images/buttons/futureFixtures.jpg" border="0" alt="Future Fixtures" name="future" width="166" height="20" onmouseover="MM_swapImage('future','','images/buttons/futureFixtures_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><img src="images/buttons/leagueTables.jpg" border="0" alt="League Tables - coming soon" name="lgTbl" width="166" height="20" onmouseover="MM_swapImage('lgTbl','','images/buttons/leagueTables_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td><img src="images/buttons/sponsored.jpg" border="0" alt="Sponsored Links - coming soon" name="spons" width="166" height="20" onmouseover="MM_swapImage('spons','','images/buttons/sponsored_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><img src="images/buttons/personalise.jpg" border="0" alt="Personalise" name="pers" width="166" height="20" onmouseover="MM_swapImage('pers','','images/buttons/personalise_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td>
<input id="ctl00_LoginStatus1" type="image" name="ctl00$LoginStatus1$ctl03" class="navlink" src="images/buttons/login.jpg" alt="Login" border="0" />
</tr>
<tr>
<td>
<br />
</td>
</tr>
</table>
<a href="fixtures.aspx">
<img src="images/fsl_phone_static.jpg" width="130" height="238" border="0" />
</a>
<div id="ctl00_FixtureSelectPanel">
<table border="0" cellpadding="0" cellspacing="0">
<tr style="background-color:Black; color:Green">
<td colspan="2">
<img id="ctl00_Image1" src="images/fixtures.jpg" border="0" /></td>
</tr>
<tr style="background-color:White">
<td align="left">
<select name="ctl00$FixtureDropDown" id="ctl00_FixtureDropDown" title="Choose the date you want to see the fixtures" class="body">
<option value="18/12/2008 00:00:00">18/12/2008</option>
<option value="19/12/2008 00:00:00">19/12/2008</option>
<option value="20/12/2008 00:00:00">20/12/2008</option>
<option value="21/12/2008 00:00:00">21/12/2008</option>
<option value="22/12/2008 00:00:00">22/12/2008</option>
<option value="23/12/2008 00:00:00">23/12/2008</option>
<option value="26/12/2008 00:00:00">26/12/2008</option>
<option value="27/12/2008 00:00:00">27/12/2008</option>
<option value="28/12/2008 00:00:00">28/12/2008</option>
<option value="29/12/2008 00:00:00">29/12/2008</option>
<option value="30/12/2008 00:00:00">30/12/2008</option>
<option value="01/01/2009 00:00:00">01/01/2009</option>
<option value="02/01/2009 00:00:00">02/01/2009</option>
</select>
</td>
<td align="right">
<input type="image" name="ctl00$FixtureButton" id="ctl00_FixtureButton" title="Click to see the fixtures on your chosen date" src="images/go.gif" align="absmiddle" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$FixtureButton&quot;, &quot;&quot;, false, &quot;&quot;, &quot;fixtures.aspx&quot;, false, false))" border="0" />
</td>
</tr>
</table>
</div>
<br />
<div style="text-align: center">
<table border="0" cellpadding="2" cellspacing="0">
<tr>
<td>
<a href="live-premiership-football-scores-via-sms.aspx">
<img src="images/flags2/england.jpg" border="0" alt="English Leagues goal alerts by SMS" /></a></td>
<td>
<a href="live-scottish-premier-league-football-scores-via-sms.aspx">
<img src="images/flags2/scotland.jpg" border="0" alt="Scottish Leagues goal alerts by SMS" /></a></td>
<td>
<a href="live-spain-football-scores-via-sms.aspx">
<img src="images/flags2/Spain.jpg" border="0" alt="Spanish Leagues goal alerts by SMS" /></a></td>
<td>
<a href="live-italy-football-scores-via-sms.aspx">
<img src="images/flags2/Italy.jpg" border="0" alt="Italian Leagues goal alerts by SMS" /></a></td>
</tr>
</table>
</div>
<br />
<img src="images/status.gif" width="110" height="127" /><br />
<br />
<img src="images/events.gif" width="110" height="115" /><br />
</td>
<td width="100%" colspan="2" align="center" valign="top">
<div id="ctl00_ContentPlaceHolder1_UpdatePanel1">
<h1>Historical Football Archive - Updated Daily!</h1>
<br />
<p class="body12">Missed the details of your football club's latest performance?
Whether you support Manchester United or Cambridge United, Premiership club or Conference club,
you will find it all here, with our fantastic soccer library of results over the last two weeks.
These pages contain the history & detailed results package for every football game from around the world
from the last 14 match days, including not only every goal scored, but, game results, names of goal scorer,
match results, red cards and plenty more! This service is automatically updated every 24 hours,
simply select a date from the drop down menu :-
</p>
<select name="ctl00$ContentPlaceHolder1$DropDownList1" id="ctl00_ContentPlaceHolder1_DropDownList1">
<option selected="selected" value="17/12/2008 00:00:00">Wed 17/12/2008</option>
<option value="16/12/2008 00:00:00">Tue 16/12/2008</option>
<option value="15/12/2008 00:00:00">Mon 15/12/2008</option>
<option value="14/12/2008 00:00:00">Sun 14/12/2008</option>
<option value="13/12/2008 00:00:00">Sat 13/12/2008</option>
<option value="12/12/2008 00:00:00">Fri 12/12/2008</option>
<option value="11/12/2008 00:00:00">Thu 11/12/2008</option>
<option value="10/12/2008 00:00:00">Wed 10/12/2008</option>
<option value="09/12/2008 00:00:00">Tue 09/12/2008</option>
<option value="08/12/2008 00:00:00">Mon 08/12/2008</option>
<option value="07/12/2008 00:00:00">Sun 07/12/2008</option>
<option value="06/12/2008 00:00:00">Sat 06/12/2008</option>
<option value="05/12/2008 00:00:00">Fri 05/12/2008</option>
<option value="04/12/2008 00:00:00">Thu 04/12/2008</option>
</select>
<br /><br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl00_CompGames1_lblCompName">&nbsp;SCOTLAND - DIVISION 2</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl00_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
19:45
</td><td>Pst </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">STRANRAER</td><td align="right">0</td><td align="left">0</td><td align="left">PETERHEAD</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
&nbsp;
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_CompGames1_lblCompName">&nbsp;ENGLAND - FA TROPHY - FIRST ROUND</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">SWINDON SUPERMARINE</td><td align="right">1</td><td align="left">0</td><td align="left">EASTBOURNE BOROUGH</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Replayed if draw.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>EDENBOROUGH</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">74<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">EDENBOROUGH</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl02_CompGames1_lblCompName">&nbsp;EUROPE (UEFA) - UEFA CUP - GROUP STAGE</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl02_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">AC MILAN</td><td align="right">2</td><td align="left">2</td><td align="left">VfL WOLFSBURG</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>17</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>AMBROSINI</td></tr><tr><td>56</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>PATO</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>55</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ZACCARDO</td></tr><tr><td>81</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SAGLIK</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">81<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">SAGLIK</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td bgcolor="Red">
1
</td><td>
&nbsp;
</td><td align="right">AJAX</td><td align="right">2</td><td align="left">2</td><td align="left">SLAVIA PRAHA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>4</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>VERTONGHEN</td></tr><tr><td>90</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball-pen.gif\' alt=\'penalty\'></td><td nowrap=nowrap>SUAREZ</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>13</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>CERNY</td></tr><tr><td>41</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>JAROLIM</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">90<img align="top" width="17" height="16" border="0" src="images/ball-pen.gif" alt="penalty">SUAREZ</a>
</td>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">CLUB BRUGGE</td><td align="right">0</td><td align="left">1</td><td align="left">FC COPENHAGEN</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>58</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SANTIN</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">58<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">SANTIN</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">DEP. LA CORUNA</td><td align="right">1</td><td align="left">0</td><td align="left">NANCY</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BODIPO</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">74<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">BODIPO</a>
</td>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">FEYENOORD</td><td align="right">0</td><td align="left">1</td><td align="left">LECH POZNAN</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>26</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>DJURDJEVIC</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">26<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">DJURDJEVIC</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">HAMBURGER SV</td><td align="right">3</td><td align="left">1</td><td align="left">ASTON VILLA</td><td bgcolor="Red">
1
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>18</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>PETRIC</td></tr><tr><td>30</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>OLIC</td></tr><tr><td>57</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>OLIC</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>82</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>DELFOUNESO</td></tr><tr><td>84</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/redcard.gif\' alt=\'red card\'></td><td nowrap=nowrap>SIDWELL</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">84<img align="top" width="17" height="16" border="0" src="images/redcard.gif" alt="red card">SIDWELL</a>
</td>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">PORTSMOUTH</td><td align="right">3</td><td align="left">0</td><td align="left">HEERENVEEN</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>40</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>CROUCH</td></tr><tr><td>42</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>CROUCH</td></tr><tr><td>90</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>HREIDARSSON</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">90<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">HREIDARSSON</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">ST ETIENNE</td><td align="right">2</td><td align="left">2</td><td align="left">VALENCIA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>29</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ILAN</td></tr><tr><td>44</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ILAN</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>33</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>MORIENTES</td></tr><tr><td>72</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ZIGIC</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">72<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">ZIGIC</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl03_CompGames1_lblCompName">&nbsp;INTERNATIONAL TOURNAMENTS - OMAN FOUR NATIONS TOUR</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl03_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
14:00
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">OMAN</td><td align="right">3</td><td align="left">1</td><td align="left">CHINA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>47</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BASHEER</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SALEH</td></tr><tr><td>84</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SALEH</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>53</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BO</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">84<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">SALEH</a>
</td>
</tr><tr class="row_alt">
<td>
16:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">ECUADOR</td><td align="right">1</td><td align="left">0</td><td align="left">IRAN</td><td bgcolor="Red">
1
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>55</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>MARTINEZ</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>90</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/redcard.gif\' alt=\'red card\'></td><td nowrap=nowrap>NEJAD</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">90<img align="top" width="17" height="16" border="0" src="images/redcard.gif" alt="red card">NEJAD</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl04_CompGames1_lblCompName">&nbsp;ITALY - FA CUP - ROUND 16</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl04_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
16:00
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">FIORENTINA</td><td align="right">0</td><td align="left">1</td><td align="left">TORINO</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>19</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BIANCHI</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">19<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">BIANCHI</a>
</td>
</tr><tr class="row_alt">
<td>
20:00
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">ROMA</td><td align="right">2</td><td align="left">0</td><td align="left">BOLOGNA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>82</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>VUCINIC</td></tr><tr><td>86</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>VUCINIC</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">86<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">VUCINIC</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl05_CompGames1_lblCompName">&nbsp;ITALY - SERIE C1A</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl05_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
13:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">PRO SESTO</td><td align="right">0</td><td align="left">0</td><td align="left">LECCO</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
&nbsp;
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl06_CompGames1_lblCompName">&nbsp;ITALY - SERIE C2A</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl06_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
13:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">MEZZOCORONA</td><td align="right">1</td><td align="left">3</td><td align="left">SAMBONIFACESE</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>55</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>48</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr><tr><td>66</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">74<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">&nbsp;</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl07_CompGames1_lblCompName">&nbsp;SCOTLAND - FA CUP - THIRD ROUND</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl07_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
13:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">LOCHEE UTD</td><td align="right">1</td><td align="left">1</td><td align="left">AYR UTD</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Replayed if draw.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>86</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>HAGAN</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>60</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>WILLIAMS</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">86<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">HAGAN</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl08_CompGames1_lblCompName">&nbsp;WORLD (FIFA) - FIFA CLUB WORLD CHAMPIONSHIP - SEMI</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl08_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
10:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">PACHUCA (MEX)</td><td align="right">0</td><td align="left">2</td><td align="left">LIGA D.U. QUITO(ECU)</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Playing at Tokyo, Japan. Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>4</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BIELER</td></tr><tr><td>26</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BOLANOS</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">26<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">BOLANOS</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
</div>
<table border="0" cellpadding="5" cellspacing="0" style="width: 100%; height: 100%">
<tr class="newslinkspace">
<td style="width: 100%">
View complete <a href="ResultsArchive.aspx" class="newslink">archive of FootballScoresLive.com Match Results</a>
</td>
</tr>
</table>
</td>
<td width="125" align="right" valign="top">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="120" height="600">
<param name="movie" value="http://www.footballscoreslive.com/images/fslSMSNew.swf" />
<param name="quality" value="high" />
<embed src="http://www.footballscoreslive.com/images/fslSMSNew.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="120" height="600"></embed>
</object>
<script type="text/javascript"><!--
google_ad_client = "pub-1398285862595543";
google_ad_width = 120;
google_ad_height = 600;
google_ad_format = "120x600_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "336699";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_text = "000000";
google_color_url = "008000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</td>
</tr>
<tr>
<td>
<img src="images/spacer.gif" width="174" height="1" alt="" /></td>
<td>
<img src="images/spacer.gif" width="220" height="1" alt="" /></td>
<td>
<img src="images/spacer.gif" width="281" height="1" alt="" /></td>
<td>
<img src="images/spacer.gif" width="125" height="1" alt="" /></td>
</tr>
<tr>
<td height="16" colspan="4" bgcolor="#000000">
&nbsp;|&nbsp;
<a class="navlink" href="disclaimer.aspx">Disclaimer</a>&nbsp;|&nbsp;
<a class="navlink" href="privacy.aspx">Privacy</a>&nbsp;|&nbsp;
<a href="aboutus.aspx" class="navlink">About Us</a>&nbsp;|&nbsp;
<a href="NewsArchive.aspx" class="navlink">News Archive</a>&nbsp;|&nbsp;
</td>
</tr>
</table>
</div>
<input type="hidden" name="__PREVIOUSPAGE" id="__PREVIOUSPAGE" value="Xh65BZM36Ruds-iXM2l7LB-dXtc__8RpYzxQLE4V_YQ1" />
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="2ybQ+H9cPYUzPPi/5ComPVhU+jAYPdxVR+fOu2ZZbs2RxuAweOrbEg/qP5f+1OYLQI+oQJb98YQDTTMw+x86m7Np3/NYQHDjzX76RjJfW9nS6SnJVUi1nLHSh9c7wgfVB7UNjywCsU0hiMY1IUsYkR/rClTQE4j3Q4a4ub3Cqrn+b7fY3itatSObxb3L0Pq9E9vx/RpYI3jhA2RPCnO1WEQF2kEBAba5qqLwESWolSSdLqs5DRta8kholg0zw5EA5/R9+XiPqWwbk4n/TnTtdMwQq2iExD4eyjsLsE7bWnw=" />
<script type="text/xml-script">
<page xmlns:script="http://schemas.microsoft.com/xml-script/2005">
<components>
<pageRequestManager id="_PageRequestManager" updatePanelIDs="ctl00$ContentPlaceHolder1$UpdatePanel1" asyncPostbackControlIDs="ctl00_ContentPlaceHolder1_DropDownList1" scriptManagerID="ctl00$ContentPlaceHolder1$ScriptManager1" form="aspnetForm" />
</components>
</page></script>
<script type="text/javascript">
</script>
</form>
</body>
</html>

View file

@ -1,144 +0,0 @@
<?php
error_reporting(E_ALL);
include_once('../simple_html_dom.php');
$html = file_get_html('google.htm');
//$html = file_get_html('youtube.htm');
//$html = file_get_html('Product.ibatis.xml');
$lang = '';
$l=$html->find('html', 0);
if ($l!==null)
$lang = $l->lang;
if ($lang!='')
$lang = 'lang="'.$lang.'"';
$charset = $html->find('meta[http-equiv*=content-type]', 0);
$target = array();
$query = '';
if (isset($_REQUEST['query'])) {
$query = $_REQUEST['query'];
$target = $html->find($query);
}
function stat_dom($dom) {
$count_text = 0;
$count_comm = 0;
$count_elem = 0;
$count_tag_end = 0;
$count_unknown = 0;
foreach($dom->nodes as $n) {
if ($n->nodetype==HDOM_TYPE_TEXT)
++$count_text;
if ($n->nodetype==HDOM_TYPE_COMMENT)
++$count_comm;
if ($n->nodetype==HDOM_TYPE_ELEMENT)
++$count_elem;
if ($n->nodetype==HDOM_TYPE_ENDTAG)
++$count_tag_end;
if ($n->nodetype==HDOM_TYPE_UNKNOWN)
++$count_unknown;
}
echo 'Total: '. count($dom->nodes).
', Text: '.$count_text.
', Commnet: '.$count_comm.
', Tag: '.$count_elem.
', End Tag: '.$count_tag_end.
', Unknown: '.$count_unknown;
}
function dump_my_html_tree($node, $show_attr=true, $deep=0, $last=true) {
$count = count($node->nodes);
if ($count>0) {
if($last)
echo '<li class="expandable lastExpandable"><div class="hitarea expandable-hitarea lastExpandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
else
echo '<li class="expandable"><div class="hitarea expandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
}
else {
$laststr = ($last===false) ? '' : ' class="last"';
echo '<li'.$laststr.'>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
}
if ($show_attr) {
foreach($node->attr as $k=>$v) {
echo ' '.htmlspecialchars($k).'="<span class="attr">'.htmlspecialchars($node->$k).'</span>"';
}
}
echo '&gt;';
if ($node->tag==='text' || $node->tag==='comment') {
echo htmlspecialchars($node->innertext);
return;
}
if ($count>0) echo "\n<ul style=\"display: none;\">\n";
$i=0;
foreach($node->nodes as $c) {
$last = (++$i==$count) ? true : false;
dump_my_html_tree($c, $show_attr, $deep+1, $last);
}
if ($count>0)
echo "</ul>\n";
//if ($count>0) echo '&lt;/<span class="attr">'.htmlspecialchars($node->tag).'</span>&gt;';
echo "</li>\n";
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html <?=$lang?>>
<head>
<?
if ($lang!='')
echo '<meta http-equiv="content-type" content="text/html; charset=utf-8"/>';
else if ($charset)
echo $charset;
else
echo '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>';
?>
<title>Simple HTML DOM Query Test</title>
<link rel="stylesheet" href="js/jquery.treeview.css" />
<link rel="stylesheet" href="js/screen.css" />
<style>
.tag { color: blue; }
.attr { color: #990033; }
</style>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.treeview.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#html_tree").treeview({
control:"#sidetreecontrol",
collapsed: true,
prerendered: true
});
});
</script>
</head>
<body>
<div id="main">
<h4>Simple HTML DOM Test</h4>
<form name="form1" method="post" action="">
find: <input name="query" type="text" size="60" maxlength="60" value="<?=htmlspecialchars($query)?>">
<input type="submit" name="Submit" value="Go">
</form>
<br>
HTML STAT (<?stat_dom($html);?>)<br>
<br>
<div id="sidetreecontrol"><a href="?#">Collapse All</a> | <a href="?#">Expand All</a></div><br>
<ul class="treeview" id="html_tree">
<?
ob_start();
foreach($target as $e)
dump_my_html_tree($e, true);
ob_end_flush();
?>
</ul>
</div>
</body></html>

View file

@ -1,891 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="ctl00_Head1"><title>
FootballScoresLive - Previous Results
</title><meta name="Keywords" content="football,soccer,score,goals,penalty,penalties,red cards,yellow cards,results,england,
english,scotland,scottish,wales,welsh,europe,european,sms,results by sms" /><meta name="Description" content="FootballScoresLive offers continuous updates of scores from football (soccer)
matches in Britain, Europe, North and South America, and Asia, free direct to your web browser,
and by SMS to your mobile." /><link href="page.css" rel="stylesheet" type="text/css" /><link href="news.css" rel="stylesheet" type="text/css" /><link href="results.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script>
<script type="text/javascript" src="MMfuncs.js"></script>
<script type="text/javascript" src="swfdetect.js"></script>
<script type="text/vbscript" src="swfver.vbs"></script>
<link rel="shortcut icon" href="/favicon.ico" /><style type="text/css">
.atlas__delta { font-family:Lucida Console; }
</style></head>
<body onload="MM_preloadImages('images/buttons/englishNational_hl.jpg','images/buttons/englishLeagues_hl.jpg',
'images/buttons/futureFixtures_hl.jpg','images/buttons/italianLeagues_hl.jpg','images/buttons/leagueTables_hl.jpg','images/buttons/login_hl.jpg','images/buttons/favourites_hl.jpg','images/buttons/personalise_hl.jpg','images/buttons/previousResults_hl.jpg','images/buttons/scottishLeagues_hl.jpg','images/buttons/seasonTicket_hl.jpg','images/buttons/spanishLeagues_hl.jpg','images/buttons/sponsored_hl.jpg','images/buttons/supermarket_hl.jpg','images/buttons/livescores_hl.jpg')"
onunload="MM_callJS('CheckFlash();')">
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
<form name="aspnetForm" method="post" action="MatchResults.aspx" id="aspnetForm">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="dB6ayi9LZ+8oLEEG+Bb0EaB7S0yWNAwmwFJYNlmIPIfC1cvZYgBlKWTvoA4O9/nWx6kKCiBPFnSnfWNC5mLsqwKJAqRalzt4zBR7te1bjeJGgN0H2d1aCn3KgK2DLo6jp/xsNAQLvdqugFXdJ+7RvO58WASnJAH4vjnV2vTi6kKfuRGvNvzsfcybchbHQ+T2yUU9pTrLfSRSC6qEw00ANEJLyR8cnnsgTQhOcXFIPwCbFQEljWnQHmV6l+YMt9GeyxuhD7qL+JcVOPkqZ4TROE1TWmVLD8kOwmpEaMwINDlz/veOnNh/HVdabDznCkdFd3yzhpyyx4/mqWqp4GmkbsFyiUvZoKYin/4xf7L1Z0NfMamm3lZZMFpWz8AhmWcL99qa5kcLgjtXMzZvOKn6K/pud0lEVkvl3Kz2jXgzZPxh3qdX4Nx5anjttd6NKyF3wSlfVMk0j8zoZmja8HaqpwZZfSFnn+U7wWO6D9vzZKDJ/nxUbJHqEaLYYz+QD6zWHVfsEi3cZJlit0oOWatl8AjSHKPmFi3oD9jD3K/FiuhYFYkyk07Jpoe/6YvKgeisZaFYDQrqTTVGYul9rQRVRkUc0UVrt7TZJ/d08EXYKhWYRBx2xxQt3Yfbefr45GCComTUGOjml7DVITe9811QIXfgw5GaECa6aBi2hvYSB6gdhFlqrdqi/HK2DTcXFTyN5n749O3MgVJGSQtXP/xsTp3J1t2lOSMlz9hZYwQUDqOpaWZG2Ae8JmzhvdClyw1AxhJolgEGsutAtYhXFc16ihtjYd/JXx47zeBoB8temPCNJwpFmAN3iXV9nhu5RZ6q8hSnpfCBCn756EDnykItEhTStGovLsJG+QdRNsLE56mNtIxFxeAGrwLWJ260+QsRcvimNAERfZtow7Vx/JPMJLfXrvd1G6u0jP/uqJAQPP8WjVUUfAK5yJHi2PzzGTtFDPd7TJenlgzzyzTcPjJKib+W+CRBBboPRnro9659+79nZwYXdbHHDlQiNcBKZfYKohFHSteJRn4/XnUI2MAi+j9a5JfGs7syF7OWjvFCevTrS/toNPaPzM+muJF3/cLQA0kuM/OvaS+9Kj16BCdNfy6mPZMy6pD95xMGomu1adBwKvaTLMmjrt5Kgh5RxGrUf+pl1IoY9u8=" />
<script src="/WebResource.axd?d=OSFApkHgVTFGp_WGnj5w0YyfbDgId8eejj1HHj2udCziBXq1lnucLLMhY2b4ssXravjY6R0n3Xz5xE3pKbfs7VC_WlWODN-9NNOB8qqY6cA1&amp;t=633112977674076250" type="text/javascript"></script>
<script src="/WebResource.axd?d=OSFApkHgVTFGp_WGnj5w0YyfbDgId8eejj1HHj2udCziBXq1lnucLLMhY2b4ssXravjY6R0n3Xz5xE3pKbfs7blAzxonPUmCsga2GgPJUY41&amp;t=633112977674076250" type="text/javascript"></script>
<div>
<table id="Table_01" width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="2" rowspan="2" width="394" height="111" >
<a href="LiveScores.aspx">
<img src="images/fsl_logo.jpg" width="394" height="111" border="0" alt="FootballScoresLive logo" /></a></td>
<td height="81" width="100%" valign="middle" background="images/grass_top.jpg" align="center">
<a id="ctl00_lnkScores2Mobile" title="Click here for Live Scores to your mobile" href="live-premiership-football-scores-via-sms.aspx" style="display:inline-block;"><img title="Click here for Live Scores to your mobile" src="images/scores2mobile.jpg" border="0" /></a>
</td>
<td width="174" height="81" align="center" valign="middle" background="images/grass_top.jpg">
<a href="Register.aspx"><img src="images/btn_reg.gif" border="0" /></a>
</td>
</tr>
<tr style="color: yellow;">
<td width="237" height="30" align="center" valign="middle" background="images/visitors_bg.jpg" class="body12">
<strong>
For <span style="color: red">FREE</span> goals to your mobile</strong>
<a id="ctl00_HyperLink1" class="navlink" href="fixtures.aspx">Click Here</a></td>
<td align="center" valign="middle" bgcolor="#000000" class="body12">
<table width=100% border="0" cellpadding="0" cellspacing="0">
<tr style="color: white;">
<td>
<input type="submit" name="ctl00$LoginView5$btnLogin" value="LogIn" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$LoginView5$btnLogin&quot;, &quot;&quot;, false, &quot;&quot;, &quot;login.aspx&quot;, false, false))" id="ctl00_LoginView5_btnLogin" />
</td>
<td>&nbsp;
</td>
</tr>
</table>
</td>
</tr>
<!--
<tr>
<td height="16" colspan="4" bgcolor="#000000">
&nbsp;|&nbsp;<a href="default.aspx" class="navlink">Home</a>
&nbsp;|&nbsp;<a href="live-premiership-football-scores-via-sms.aspx" class="navlink">SMS Service</a>
&nbsp;|&nbsp;<a href="LiveScores.aspx" class="navlink">Live Scores</a>
&nbsp;|&nbsp;<a href="MatchResults.aspx" class="navlink">Previous Results</a>
&nbsp;|&nbsp;<a href="fixtures.aspx" class="navlink">Future Fixtures</a>&nbsp;|&nbsp;
<a id="ctl00_LoginStatus2" class="navlink" href="javascript:__doPostBack('ctl00$LoginStatus2$ctl02','')">Login</a>&nbsp;|&nbsp;
<a href="login/personal.aspx" class="navlink">Personalise</a>&nbsp;|&nbsp;
<br />
</td>
</tr>
-->
<tr height="100%">
<td width="174" align="center" valign="top" background="images/grass_left.jpg">
<!--
<a href="#" onclick='window.external.AddFavorite(location.href,document.title);' class="navlink">
<img src="images/favourites.jpg" border="0"/></a>
-->
<br />
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<a href="#" onclick='window.external.AddFavorite(location.href,document.title);' class="navlink">
<img src="images/buttons/favourites.jpg" border="0" alt="Add this page to your favourites" name="fav" width="165" height="21" onmouseover="MM_swapImage('fav','','images/buttons/favourites_hl.jpg',1)" onmouseout="MM_swapImgRestore()" />
</a>
</td>
</tr>
<tr>
<td><img src="images/buttons/seasonTicket.jpg" border="0" alt="Season Ticket Goal Alerts - coming soon" name="season" width="166" height="22" onmouseover="MM_swapImage('season','','images/buttons/seasonTicket_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td><img src="images/buttons/mobile.jpg" border="0" alt="Mobile Goal Alerts" name="mobile" width="166" height="20" /></td>
</tr>
<tr>
<td><a href="live-premiership-football-scores-via-sms.aspx">
<img src="images/buttons/englishLeagues.jpg" alt="English Leagues" name="engLg" width="166" height="19" border="0" onmouseover="MM_swapImage('engLg','','images/buttons/englishLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><img src="images/buttons/englishNational.jpg" border="0" alt="English National Team - coming soon" name="engNat" width="166" height="18" onmouseover="MM_swapImage('engNat','','images/buttons/englishNational_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td>
<a href="live-scottish-premier-league-football-scores-via-sms.aspx">
<img src="images/buttons/scottishLeagues.jpg" border="0" alt="Scottish Leagues" name="scotLg" width="166" height="18" onmouseover="MM_swapImage('scotLg','','images/buttons/scottishLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td>
<a href="live-spain-football-scores-via-sms.aspx">
<img src="images/buttons/spanishLeagues.jpg" border="0" alt="Spanish Leagues" name="spanLg" width="166" height="18" onmouseover="MM_swapImage('spanLg','','images/buttons/spanishLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td>
<a href="live-italy-football-scores-via-sms.aspx">
<img src="images/buttons/italianLeagues.jpg" border="0" alt="Italian Leagues" name="italLg" width="166" height="18" onmouseover="MM_swapImage('italLg','','images/buttons/italianLeagues_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><a href="LiveScores.aspx"><img src="images/buttons/livescores.jpg" border="0" alt="Live Scores" name="world" width="166" height="20" onmouseover="MM_swapImage('world','','images/buttons/livescores_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><img src="images/buttons/supermarket.jpg" border="0" alt="Football Supermarket - coming soon" name="super" width="166" height="20" onmouseover="MM_swapImage('super','','images/buttons/supermarket_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td><a href="MatchResults.aspx"><img src="images/buttons/previousResults.jpg" border="0" alt="Previous Results" name="prev" width="166" height="20" onmouseover="MM_swapImage('prev','','images/buttons/previousResults_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><a href="fixtures.aspx"><img src="images/buttons/futureFixtures.jpg" border="0" alt="Future Fixtures" name="future" width="166" height="20" onmouseover="MM_swapImage('future','','images/buttons/futureFixtures_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></a></td>
</tr>
<tr>
<td><img src="images/buttons/leagueTables.jpg" border="0" alt="League Tables - coming soon" name="lgTbl" width="166" height="20" onmouseover="MM_swapImage('lgTbl','','images/buttons/leagueTables_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td><img src="images/buttons/sponsored.jpg" border="0" alt="Sponsored Links - coming soon" name="spons" width="166" height="20" onmouseover="MM_swapImage('spons','','images/buttons/sponsored_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><img src="images/buttons/personalise.jpg" border="0" alt="Personalise" name="pers" width="166" height="20" onmouseover="MM_swapImage('pers','','images/buttons/personalise_hl.jpg',1)" onmouseout="MM_swapImgRestore()" /></td>
</tr>
<tr>
<td>
<input id="ctl00_LoginStatus1" type="image" name="ctl00$LoginStatus1$ctl03" class="navlink" src="images/buttons/login.jpg" alt="Login" border="0" />
</tr>
<tr>
<td>
<br />
</td>
</tr>
</table>
<a href="fixtures.aspx">
<img src="images/fsl_phone_static.jpg" width="130" height="238" border="0" />
</a>
<div id="ctl00_FixtureSelectPanel">
<table border="0" cellpadding="0" cellspacing="0">
<tr style="background-color:Black; color:Green">
<td colspan="2">
<img id="ctl00_Image1" src="images/fixtures.jpg" border="0" /></td>
</tr>
<tr style="background-color:White">
<td align="left">
<select name="ctl00$FixtureDropDown" id="ctl00_FixtureDropDown" title="Choose the date you want to see the fixtures" class="body">
<option value="18/12/2008 00:00:00">18/12/2008</option>
<option value="19/12/2008 00:00:00">19/12/2008</option>
<option value="20/12/2008 00:00:00">20/12/2008</option>
<option value="21/12/2008 00:00:00">21/12/2008</option>
<option value="22/12/2008 00:00:00">22/12/2008</option>
<option value="23/12/2008 00:00:00">23/12/2008</option>
<option value="26/12/2008 00:00:00">26/12/2008</option>
<option value="27/12/2008 00:00:00">27/12/2008</option>
<option value="28/12/2008 00:00:00">28/12/2008</option>
<option value="29/12/2008 00:00:00">29/12/2008</option>
<option value="30/12/2008 00:00:00">30/12/2008</option>
<option value="01/01/2009 00:00:00">01/01/2009</option>
<option value="02/01/2009 00:00:00">02/01/2009</option>
</select>
</td>
<td align="right">
<input type="image" name="ctl00$FixtureButton" id="ctl00_FixtureButton" title="Click to see the fixtures on your chosen date" src="images/go.gif" align="absmiddle" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$FixtureButton&quot;, &quot;&quot;, false, &quot;&quot;, &quot;fixtures.aspx&quot;, false, false))" border="0" />
</td>
</tr>
</table>
</div>
<br />
<div style="text-align: center">
<table border="0" cellpadding="2" cellspacing="0">
<tr>
<td>
<a href="live-premiership-football-scores-via-sms.aspx">
<img src="images/flags2/england.jpg" border="0" alt="English Leagues goal alerts by SMS" /></a></td>
<td>
<a href="live-scottish-premier-league-football-scores-via-sms.aspx">
<img src="images/flags2/scotland.jpg" border="0" alt="Scottish Leagues goal alerts by SMS" /></a></td>
<td>
<a href="live-spain-football-scores-via-sms.aspx">
<img src="images/flags2/Spain.jpg" border="0" alt="Spanish Leagues goal alerts by SMS" /></a></td>
<td>
<a href="live-italy-football-scores-via-sms.aspx">
<img src="images/flags2/Italy.jpg" border="0" alt="Italian Leagues goal alerts by SMS" /></a></td>
</tr>
</table>
</div>
<br />
<img src="images/status.gif" width="110" height="127" /><br />
<br />
<img src="images/events.gif" width="110" height="115" /><br />
</td>
<td width="100%" colspan="2" align="center" valign="top">
<div id="ctl00_ContentPlaceHolder1_UpdatePanel1">
<h1>Historical Football Archive - Updated Daily!</h1>
<br />
<p class="body12">Missed the details of your football club's latest performance?
Whether you support Manchester United or Cambridge United, Premiership club or Conference club,
you will find it all here, with our fantastic soccer library of results over the last two weeks.
These pages contain the history & detailed results package for every football game from around the world
from the last 14 match days, including not only every goal scored, but, game results, names of goal scorer,
match results, red cards and plenty more! This service is automatically updated every 24 hours,
simply select a date from the drop down menu :-
</p>
<select name="ctl00$ContentPlaceHolder1$DropDownList1" id="ctl00_ContentPlaceHolder1_DropDownList1">
<option selected="selected" value="17/12/2008 00:00:00">Wed 17/12/2008</option>
<option value="16/12/2008 00:00:00">Tue 16/12/2008</option>
<option value="15/12/2008 00:00:00">Mon 15/12/2008</option>
<option value="14/12/2008 00:00:00">Sun 14/12/2008</option>
<option value="13/12/2008 00:00:00">Sat 13/12/2008</option>
<option value="12/12/2008 00:00:00">Fri 12/12/2008</option>
<option value="11/12/2008 00:00:00">Thu 11/12/2008</option>
<option value="10/12/2008 00:00:00">Wed 10/12/2008</option>
<option value="09/12/2008 00:00:00">Tue 09/12/2008</option>
<option value="08/12/2008 00:00:00">Mon 08/12/2008</option>
<option value="07/12/2008 00:00:00">Sun 07/12/2008</option>
<option value="06/12/2008 00:00:00">Sat 06/12/2008</option>
<option value="05/12/2008 00:00:00">Fri 05/12/2008</option>
<option value="04/12/2008 00:00:00">Thu 04/12/2008</option>
</select>
<br /><br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl00_CompGames1_lblCompName">&nbsp;SCOTLAND - DIVISION 2</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl00_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
19:45
</td><td>Pst </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">STRANRAER</td><td align="right">0</td><td align="left">0</td><td align="left">PETERHEAD</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
&nbsp;
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_CompGames1_lblCompName">&nbsp;ENGLAND - FA TROPHY - FIRST ROUND</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl01_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">SWINDON SUPERMARINE</td><td align="right">1</td><td align="left">0</td><td align="left">EASTBOURNE BOROUGH</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Replayed if draw.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>EDENBOROUGH</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">74<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">EDENBOROUGH</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl02_CompGames1_lblCompName">&nbsp;EUROPE (UEFA) - UEFA CUP - GROUP STAGE</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl02_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">AC MILAN</td><td align="right">2</td><td align="left">2</td><td align="left">VfL WOLFSBURG</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>17</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>AMBROSINI</td></tr><tr><td>56</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>PATO</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>55</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ZACCARDO</td></tr><tr><td>81</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SAGLIK</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">81<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">SAGLIK</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td bgcolor="Red">
1
</td><td>
&nbsp;
</td><td align="right">AJAX</td><td align="right">2</td><td align="left">2</td><td align="left">SLAVIA PRAHA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>4</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>VERTONGHEN</td></tr><tr><td>90</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball-pen.gif\' alt=\'penalty\'></td><td nowrap=nowrap>SUAREZ</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>13</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>CERNY</td></tr><tr><td>41</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>JAROLIM</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">90<img align="top" width="17" height="16" border="0" src="images/ball-pen.gif" alt="penalty">SUAREZ</a>
</td>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">CLUB BRUGGE</td><td align="right">0</td><td align="left">1</td><td align="left">FC COPENHAGEN</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>58</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SANTIN</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">58<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">SANTIN</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">DEP. LA CORUNA</td><td align="right">1</td><td align="left">0</td><td align="left">NANCY</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BODIPO</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">74<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">BODIPO</a>
</td>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">FEYENOORD</td><td align="right">0</td><td align="left">1</td><td align="left">LECH POZNAN</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>26</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>DJURDJEVIC</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">26<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">DJURDJEVIC</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">HAMBURGER SV</td><td align="right">3</td><td align="left">1</td><td align="left">ASTON VILLA</td><td bgcolor="Red">
1
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>18</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>PETRIC</td></tr><tr><td>30</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>OLIC</td></tr><tr><td>57</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>OLIC</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>82</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>DELFOUNESO</td></tr><tr><td>84</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/redcard.gif\' alt=\'red card\'></td><td nowrap=nowrap>SIDWELL</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">84<img align="top" width="17" height="16" border="0" src="images/redcard.gif" alt="red card">SIDWELL</a>
</td>
</tr><tr class="row">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">PORTSMOUTH</td><td align="right">3</td><td align="left">0</td><td align="left">HEERENVEEN</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>40</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>CROUCH</td></tr><tr><td>42</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>CROUCH</td></tr><tr><td>90</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>HREIDARSSON</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">90<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">HREIDARSSON</a>
</td>
</tr><tr class="row_alt">
<td>
19:45
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">ST ETIENNE</td><td align="right">2</td><td align="left">2</td><td align="left">VALENCIA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>29</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ILAN</td></tr><tr><td>44</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ILAN</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>33</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>MORIENTES</td></tr><tr><td>72</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>ZIGIC</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">72<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">ZIGIC</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl03_CompGames1_lblCompName">&nbsp;INTERNATIONAL TOURNAMENTS - OMAN FOUR NATIONS TOUR</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl03_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
14:00
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">OMAN</td><td align="right">3</td><td align="left">1</td><td align="left">CHINA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>47</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BASHEER</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SALEH</td></tr><tr><td>84</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>SALEH</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>53</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BO</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">84<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">SALEH</a>
</td>
</tr><tr class="row_alt">
<td>
16:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">ECUADOR</td><td align="right">1</td><td align="left">0</td><td align="left">IRAN</td><td bgcolor="Red">
1
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>55</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>MARTINEZ</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>90</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/redcard.gif\' alt=\'red card\'></td><td nowrap=nowrap>NEJAD</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">90<img align="top" width="17" height="16" border="0" src="images/redcard.gif" alt="red card">NEJAD</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl04_CompGames1_lblCompName">&nbsp;ITALY - FA CUP - ROUND 16</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl04_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
16:00
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">FIORENTINA</td><td align="right">0</td><td align="left">1</td><td align="left">TORINO</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>19</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BIANCHI</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">19<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">BIANCHI</a>
</td>
</tr><tr class="row_alt">
<td>
20:00
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">ROMA</td><td align="right">2</td><td align="left">0</td><td align="left">BOLOGNA</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>82</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>VUCINIC</td></tr><tr><td>86</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>VUCINIC</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">86<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">VUCINIC</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl05_CompGames1_lblCompName">&nbsp;ITALY - SERIE C1A</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl05_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
13:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">PRO SESTO</td><td align="right">0</td><td align="left">0</td><td align="left">LECCO</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
&nbsp;
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl06_CompGames1_lblCompName">&nbsp;ITALY - SERIE C2A</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl06_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
13:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">MEZZOCORONA</td><td align="right">1</td><td align="left">3</td><td align="left">SAMBONIFACESE</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>55</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>48</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr><tr><td>66</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr><tr><td>74</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>&nbsp;</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">74<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">&nbsp;</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl07_CompGames1_lblCompName">&nbsp;SCOTLAND - FA CUP - THIRD ROUND</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl07_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
13:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">LOCHEE UTD</td><td align="right">1</td><td align="left">1</td><td align="left">AYR UTD</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Replayed if draw.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>86</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>HAGAN</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>60</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>WILLIAMS</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">86<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">HAGAN</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td style="text-align: left" class="header">
<span id="ctl00_ContentPlaceHolder1_Repeater1_ctl08_CompGames1_lblCompName">&nbsp;WORLD (FIFA) - FIFA CLUB WORLD CHAMPIONSHIP - SEMI</span></td>
</tr>
<tr>
<td>
<div>
<table cellspacing="0" cellpadding="2" rules="all" border="1" id="ctl00_ContentPlaceHolder1_Repeater1_ctl08_CompGames1_GridView1" width="100%">
<tr class="header" align="left">
<th scope="col">Start</th><th scope="col">Stat</th><th scope="col">Min</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="right" scope="col" width="30%">Home</th><th align="right" scope="col" width="10"> </th><th align="left" scope="col" width="10"> </th><th align="left" scope="col" width="30%">Away</th><th align="center" scope="col" width="17">R</th><th align="center" scope="col" width="17">P</th><th align="center" scope="col" width="17">O</th><th align="center" scope="col" width="17"><img src="images/info.gif" border="0" /></th><th scope="col" width="40%">Latest</th>
</tr><tr class="row">
<td>
10:30
</td><td>FT </td><td>-</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td align="right">PACHUCA (MEX)</td><td align="right">0</td><td align="left">2</td><td align="left">LIGA D.U. QUITO(ECU)</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
&nbsp;
</td><td>
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table border=0 cellpadding=2 cellspacing=0 width=250><tr align=left bgcolor=#ffffff><td><img src=\'images/info.gif\' /><b>Match information</b></td></tr><tr><td>Playing at Tokyo, Japan. Knock out.</td></tr></table>',HAUTO,VAUTO,WIDTH,250);" onmouseout="return nd();"><img src="images/info.gif" border="0" /></a>
</td><td align="left">
<a class="poplink" href="javascript:void(0);" onmouseover="return overlib('<table><tr valign=top><td width=200><table border=1 cellspacing=0 cellpadding=2><tr valign=top><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr></table></td><td width=200><table border=1 cellspacing=0 cellpadding=2><tr><td width=20>Min</td><td width=20>&nbsp;</td><td width=120>Player</td></tr><tr><td>4</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BIELER</td></tr><tr><td>26</td><td><img align=\'top\' width=\'17\' height=\'16\' border=\'0\' src=\'images/ball.gif\' alt=\'goal\'></td><td nowrap=nowrap>BOLANOS</td></tr></table></td></tr></table>',HAUTO,VAUTO,WIDTH,400);" onmouseout="return nd();">26<img align="top" width="17" height="16" border="0" src="images/ball.gif" alt="goal">BOLANOS</a>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<br />
</div>
<table border="0" cellpadding="5" cellspacing="0" style="width: 100%; height: 100%">
<tr class="newslinkspace">
<td style="width: 100%">
View complete <a href="ResultsArchive.aspx" class="newslink">archive of FootballScoresLive.com Match Results</a>
</td>
</tr>
</table>
</td>
<td width="125" align="right" valign="top">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="120" height="600">
<param name="movie" value="http://www.footballscoreslive.com/images/fslSMSNew.swf" />
<param name="quality" value="high" />
<embed src="http://www.footballscoreslive.com/images/fslSMSNew.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="120" height="600"></embed>
</object>
<script type="text/javascript"><!--
google_ad_client = "pub-1398285862595543";
google_ad_width = 120;
google_ad_height = 600;
google_ad_format = "120x600_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "336699";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_text = "000000";
google_color_url = "008000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</td>
</tr>
<tr>
<td>
<img src="images/spacer.gif" width="174" height="1" alt="" /></td>
<td>
<img src="images/spacer.gif" width="220" height="1" alt="" /></td>
<td>
<img src="images/spacer.gif" width="281" height="1" alt="" /></td>
<td>
<img src="images/spacer.gif" width="125" height="1" alt="" /></td>
</tr>
<tr>
<td height="16" colspan="4" bgcolor="#000000">
&nbsp;|&nbsp;
<a class="navlink" href="disclaimer.aspx">Disclaimer</a>&nbsp;|&nbsp;
<a class="navlink" href="privacy.aspx">Privacy</a>&nbsp;|&nbsp;
<a href="aboutus.aspx" class="navlink">About Us</a>&nbsp;|&nbsp;
<a href="NewsArchive.aspx" class="navlink">News Archive</a>&nbsp;|&nbsp;
</td>
</tr>
</table>
</div>
<input type="hidden" name="__PREVIOUSPAGE" id="__PREVIOUSPAGE" value="Xh65BZM36Ruds-iXM2l7LB-dXtc__8RpYzxQLE4V_YQ1" />
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="2ybQ+H9cPYUzPPi/5ComPVhU+jAYPdxVR+fOu2ZZbs2RxuAweOrbEg/qP5f+1OYLQI+oQJb98YQDTTMw+x86m7Np3/NYQHDjzX76RjJfW9nS6SnJVUi1nLHSh9c7wgfVB7UNjywCsU0hiMY1IUsYkR/rClTQE4j3Q4a4ub3Cqrn+b7fY3itatSObxb3L0Pq9E9vx/RpYI3jhA2RPCnO1WEQF2kEBAba5qqLwESWolSSdLqs5DRta8kholg0zw5EA5/R9+XiPqWwbk4n/TnTtdMwQq2iExD4eyjsLsE7bWnw=" />
<script type="text/xml-script">
<page xmlns:script="http://schemas.microsoft.com/xml-script/2005">
<components>
<pageRequestManager id="_PageRequestManager" updatePanelIDs="ctl00$ContentPlaceHolder1$UpdatePanel1" asyncPostbackControlIDs="ctl00_ContentPlaceHolder1_DropDownList1" scriptManagerID="ctl00$ContentPlaceHolder1$ScriptManager1" form="aspnetForm" />
</components>
</page></script>
<script type="text/javascript">
</script>
</form>
</body>
</html>

View file

@ -1,144 +0,0 @@
<?php
error_reporting(E_ALL);
include_once('../simple_html_dom.php');
$html = file_get_html('google.htm');
//$html = file_get_html('youtube.htm');
//$html = file_get_html('Product.ibatis.xml');
$lang = '';
$l=$html->find('html', 0);
if ($l!==null)
$lang = $l->lang;
if ($lang!='')
$lang = 'lang="'.$lang.'"';
$charset = $html->find('meta[http-equiv*=content-type]', 0);
$target = array();
$query = '';
if (isset($_REQUEST['query'])) {
$query = $_REQUEST['query'];
$target = $html->find($query);
}
function stat_dom($dom) {
$count_text = 0;
$count_comm = 0;
$count_elem = 0;
$count_tag_end = 0;
$count_unknown = 0;
foreach($dom->nodes as $n) {
if ($n->nodetype==HDOM_TYPE_TEXT)
++$count_text;
if ($n->nodetype==HDOM_TYPE_COMMENT)
++$count_comm;
if ($n->nodetype==HDOM_TYPE_ELEMENT)
++$count_elem;
if ($n->nodetype==HDOM_TYPE_ENDTAG)
++$count_tag_end;
if ($n->nodetype==HDOM_TYPE_UNKNOWN)
++$count_unknown;
}
echo 'Total: '. count($dom->nodes).
', Text: '.$count_text.
', Commnet: '.$count_comm.
', Tag: '.$count_elem.
', End Tag: '.$count_tag_end.
', Unknown: '.$count_unknown;
}
function dump_my_html_tree($node, $show_attr=true, $deep=0, $last=true) {
$count = count($node->nodes);
if ($count>0) {
if($last)
echo '<li class="expandable lastExpandable"><div class="hitarea expandable-hitarea lastExpandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
else
echo '<li class="expandable"><div class="hitarea expandable-hitarea"></div>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
}
else {
$laststr = ($last===false) ? '' : ' class="last"';
echo '<li'.$laststr.'>&lt;<span class="tag">'.htmlspecialchars($node->tag).'</span>';
}
if ($show_attr) {
foreach($node->attr as $k=>$v) {
echo ' '.htmlspecialchars($k).'="<span class="attr">'.htmlspecialchars($node->$k).'</span>"';
}
}
echo '&gt;';
if ($node->tag==='text' || $node->tag==='comment') {
echo htmlspecialchars($node->innertext);
return;
}
if ($count>0) echo "\n<ul style=\"display: none;\">\n";
$i=0;
foreach($node->nodes as $c) {
$last = (++$i==$count) ? true : false;
dump_my_html_tree($c, $show_attr, $deep+1, $last);
}
if ($count>0)
echo "</ul>\n";
//if ($count>0) echo '&lt;/<span class="attr">'.htmlspecialchars($node->tag).'</span>&gt;';
echo "</li>\n";
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html <?=$lang?>>
<head>
<?
if ($lang!='')
echo '<meta http-equiv="content-type" content="text/html; charset=utf-8"/>';
else if ($charset)
echo $charset;
else
echo '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>';
?>
<title>Simple HTML DOM Query Test</title>
<link rel="stylesheet" href="js/jquery.treeview.css" />
<link rel="stylesheet" href="js/screen.css" />
<style>
.tag { color: blue; }
.attr { color: #990033; }
</style>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.treeview.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#html_tree").treeview({
control:"#sidetreecontrol",
collapsed: true,
prerendered: true
});
});
</script>
</head>
<body>
<div id="main">
<h4>Simple HTML DOM Test</h4>
<form name="form1" method="post" action="">
find: <input name="query" type="text" size="60" maxlength="60" value="<?=htmlspecialchars($query)?>">
<input type="submit" name="Submit" value="Go">
</form>
<br>
HTML STAT (<?stat_dom($html);?>)<br>
<br>
<div id="sidetreecontrol"><a href="?#">Collapse All</a> | <a href="?#">Expand All</a></div><br>
<ul class="treeview" id="html_tree">
<?
ob_start();
foreach($target as $e)
dump_my_html_tree($e, true);
ob_end_flush();
?>
</ul>
</div>
</body></html>

View file

@ -1,29 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 48
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js
END
jquery.treeview.css
K 25
svn:wc:ra_dav:version-url
V 68
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/jquery.treeview.css
END
jquery.treeview.js
K 25
svn:wc:ra_dav:version-url
V 67
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/jquery.treeview.js
END
screen.css
K 25
svn:wc:ra_dav:version-url
V 59
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/screen.css
END
jquery.js
K 25
svn:wc:ra_dav:version-url
V 58
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/jquery.js
END

View file

@ -1,167 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/app/js
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-12-14T19:02:48.351607Z
176
me578022
d0e60b4b-9046-0410-940c-b97530268c78
jquery.treeview.css
file
2010-08-17T19:13:52.459235Z
339ab1bbbaefa62f58c1fbf4459a7d0e
2008-12-14T19:02:48.351607Z
176
me578022
2589
jquery.treeview.js
file
2010-08-17T19:13:52.460235Z
3f81db67b7a973c8835ef5213e3b93c6
2008-12-14T19:02:48.351607Z
176
me578022
7839
images
dir
screen.css
file
2010-08-17T19:13:52.463235Z
b8e74072c3d1b740bce61509ce86fe68
2008-12-14T19:02:48.351607Z
176
me578022
623
jquery.js
file
2010-08-17T19:13:52.465235Z
957620aeffb2e5b562591b7a19928ea4
2008-12-14T19:02:48.351607Z
176
me578022
94443

View file

@ -1,68 +0,0 @@
.treeview, .treeview ul {
padding: 0;
margin: 0;
list-style: none;
}
.treeview ul {
background-color: white;
margin-top: 4px;
}
.treeview .hitarea {
background: url(images/treeview-default.gif) -64px -25px no-repeat;
height: 16px;
width: 16px;
margin-left: -16px;
float: left;
cursor: pointer;
}
/* fix for IE6 */
* html .hitarea {
display: inline;
float:none;
}
.treeview li {
margin: 0;
padding: 3px 0pt 3px 16px;
}
.treeview a.selected {
background-color: #eee;
}
#treecontrol { margin: 1em 0; display: none; }
.treeview .hover { color: red; cursor: pointer; }
.treeview li { background: url(images/treeview-default-line.gif) 0 0 no-repeat; }
.treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
.treeview .expandable-hitarea { background-position: -80px -3px; }
.treeview li.last { background-position: 0 -1766px }
.treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(images/treeview-default.gif); }
.treeview li.lastCollapsable { background-position: 0 -111px }
.treeview li.lastExpandable { background-position: -32px -67px }
.treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }
.treeview-red li { background-image: url(images/treeview-red-line.gif); }
.treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(images/treeview-red.gif); }
.treeview-black li { background-image: url(images/treeview-black-line.gif); }
.treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(images/treeview-black.gif); }
.treeview-gray li { background-image: url(images/treeview-gray-line.gif); }
.treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(images/treeview-gray.gif); }
.treeview-famfamfam li { background-image: url(images/treeview-famfamfam-line.gif); }
.treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(images/treeview-famfamfam.gif); }
.filetree li { padding: 3px 0 2px 16px; }
.filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
.filetree span.folder { background: url(images/folder.gif) 0 0 no-repeat; }
.filetree li.expandable span.folder { background: url(images/folder-closed.gif) 0 0 no-repeat; }
.filetree span.file { background: url(images/file.gif) 0 0 no-repeat; }

View file

@ -1,251 +0,0 @@
/*
* Treeview 1.4 - jQuery plugin to hide and show branches of a tree
*
* http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
* http://docs.jquery.com/Plugins/Treeview
*
* Copyright (c) 2007 Jörn Zaefferer
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
* Revision: $Id: jquery.treeview.js 4684 2008-02-07 19:08:06Z joern.zaefferer $
*
*/
;(function($) {
$.extend($.fn, {
swapClass: function(c1, c2) {
var c1Elements = this.filter('.' + c1);
this.filter('.' + c2).removeClass(c2).addClass(c1);
c1Elements.removeClass(c1).addClass(c2);
return this;
},
replaceClass: function(c1, c2) {
return this.filter('.' + c1).removeClass(c1).addClass(c2).end();
},
hoverClass: function(className) {
className = className || "hover";
return this.hover(function() {
$(this).addClass(className);
}, function() {
$(this).removeClass(className);
});
},
heightToggle: function(animated, callback) {
animated ?
this.animate({ height: "toggle" }, animated, callback) :
this.each(function(){
jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();
if(callback)
callback.apply(this, arguments);
});
},
heightHide: function(animated, callback) {
if (animated) {
this.animate({ height: "hide" }, animated, callback);
} else {
this.hide();
if (callback)
this.each(callback);
}
},
prepareBranches: function(settings) {
if (!settings.prerendered) {
// mark last tree items
this.filter(":last-child:not(ul)").addClass(CLASSES.last);
// collapse whole tree, or only those marked as closed, anyway except those marked as open
this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide();
}
// return all items with sublists
return this.filter(":has(>ul)");
},
applyClasses: function(settings, toggler) {
this.filter(":has(>ul):not(:has(>a))").find(">span").click(function(event) {
toggler.apply($(this).next());
}).add( $("a", this) ).hoverClass();
if (!settings.prerendered) {
// handle closed ones first
this.filter(":has(>ul:hidden)")
.addClass(CLASSES.expandable)
.replaceClass(CLASSES.last, CLASSES.lastExpandable);
// handle open ones
this.not(":has(>ul:hidden)")
.addClass(CLASSES.collapsable)
.replaceClass(CLASSES.last, CLASSES.lastCollapsable);
// create hitarea
this.prepend("<div class=\"" + CLASSES.hitarea + "\"/>").find("div." + CLASSES.hitarea).each(function() {
var classes = "";
$.each($(this).parent().attr("class").split(" "), function() {
classes += this + "-hitarea ";
});
$(this).addClass( classes );
});
}
// apply event to hitarea
this.find("div." + CLASSES.hitarea).click( toggler );
},
treeview: function(settings) {
settings = $.extend({
cookieId: "treeview"
}, settings);
if (settings.add) {
return this.trigger("add", [settings.add]);
}
if ( settings.toggle ) {
var callback = settings.toggle;
settings.toggle = function() {
return callback.apply($(this).parent()[0], arguments);
};
}
// factory for treecontroller
function treeController(tree, control) {
// factory for click handlers
function handler(filter) {
return function() {
// reuse toggle event handler, applying the elements to toggle
// start searching for all hitareas
toggler.apply( $("div." + CLASSES.hitarea, tree).filter(function() {
// for plain toggle, no filter is provided, otherwise we need to check the parent element
return filter ? $(this).parent("." + filter).length : true;
}) );
return false;
};
}
// click on first element to collapse tree
$("a:eq(0)", control).click( handler(CLASSES.collapsable) );
// click on second to expand tree
$("a:eq(1)", control).click( handler(CLASSES.expandable) );
// click on third to toggle tree
$("a:eq(2)", control).click( handler() );
}
// handle toggle event
function toggler() {
$(this)
.parent()
// swap classes for hitarea
.find(">.hitarea")
.swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
.swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
.end()
// swap classes for parent li
.swapClass( CLASSES.collapsable, CLASSES.expandable )
.swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
// find child lists
.find( ">ul" )
// toggle them
.heightToggle( settings.animated, settings.toggle );
if ( settings.unique ) {
$(this).parent()
.siblings()
// swap classes for hitarea
.find(">.hitarea")
.replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
.replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
.end()
.replaceClass( CLASSES.collapsable, CLASSES.expandable )
.replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
.find( ">ul" )
.heightHide( settings.animated, settings.toggle );
}
}
function serialize() {
function binary(arg) {
return arg ? 1 : 0;
}
var data = [];
branches.each(function(i, e) {
data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0;
});
$.cookie(settings.cookieId, data.join("") );
}
function deserialize() {
var stored = $.cookie(settings.cookieId);
if ( stored ) {
var data = stored.split("");
branches.each(function(i, e) {
$(e).find(">ul")[ parseInt(data[i]) ? "show" : "hide" ]();
});
}
}
// add treeview class to activate styles
this.addClass("treeview");
// prepare branches and find all tree items with child lists
var branches = this.find("li").prepareBranches(settings);
switch(settings.persist) {
case "cookie":
var toggleCallback = settings.toggle;
settings.toggle = function() {
serialize();
if (toggleCallback) {
toggleCallback.apply(this, arguments);
}
};
deserialize();
break;
case "location":
var current = this.find("a").filter(function() { return this.href.toLowerCase() == location.href.toLowerCase(); });
if ( current.length ) {
current.addClass("selected").parents("ul, li").add( current.next() ).show();
}
break;
}
branches.applyClasses(settings, toggler);
// if control option is set, create the treecontroller and show it
if ( settings.control ) {
treeController(this, settings.control);
$(settings.control).show();
}
return this.bind("add", function(event, branches) {
$(branches).prev()
.removeClass(CLASSES.last)
.removeClass(CLASSES.lastCollapsable)
.removeClass(CLASSES.lastExpandable)
.find(">.hitarea")
.removeClass(CLASSES.lastCollapsableHitarea)
.removeClass(CLASSES.lastExpandableHitarea);
$(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, toggler);
});
}
});
// classes used by the plugin
// need to be styled via external stylesheet, see first example
var CLASSES = $.fn.treeview.classes = {
open: "open",
closed: "closed",
expandable: "expandable",
expandableHitarea: "expandable-hitarea",
lastExpandableHitarea: "lastExpandable-hitarea",
collapsable: "collapsable",
collapsableHitarea: "collapsable-hitarea",
lastCollapsableHitarea: "lastCollapsable-hitarea",
lastCollapsable: "lastCollapsable",
lastExpandable: "lastExpandable",
last: "last",
hitarea: "hitarea"
};
// provide backwards compability
$.fn.Treeview = $.fn.treeview;
})(jQuery);

View file

@ -1,24 +0,0 @@
html, body {height:100%; margin: 0; padding: 0; }
html>body {
font-size: 16px;
font-size: 68.75%;
} /* Reset Base Font Size */
body {
font-family: Verdana, helvetica, arial, sans-serif;
font-size: 68.75%;
background: #fff;
color: #333;
}
h1, h2 { font-family: 'trebuchet ms', verdana, arial; padding: 10px; margin: 0 }
h1 { font-size: large }
#banner { padding: 15px; background-color: #06b; color: white; font-size: large; border-bottom: 1px solid #ccc;
background: url(bg.gif) repeat-x; text-align: center }
#banner a { color: white; }
#main { padding: 1em; }
a img { border: none; }

View file

@ -1,17 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 55
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/images
END
treeview-default.gif
K 25
svn:wc:ra_dav:version-url
V 76
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/images/treeview-default.gif
END
treeview-default-line.gif
K 25
svn:wc:ra_dav:version-url
V 81
/svnroot/simplehtmldom/!svn/ver/176/trunk/app/js/images/treeview-default-line.gif
END

View file

@ -1,96 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/app/js/images
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-12-14T19:02:48.351607Z
176
me578022
d0e60b4b-9046-0410-940c-b97530268c78
treeview-default.gif
file
2010-08-17T19:13:52.297225Z
46878a9b3ede269c4e234550c9c89cd0
2008-12-14T19:02:48.351607Z
176
me578022
has-props
1222
treeview-default-line.gif
file
2010-08-17T19:13:52.303226Z
5e3c0e0c48f48c23c45aef7b72c739c0
2008-12-14T19:02:48.351607Z
176
me578022
has-props
1993

View file

@ -1,5 +0,0 @@
K 13
svn:mime-type
V 24
application/octet-stream
END

View file

@ -1,68 +0,0 @@
.treeview, .treeview ul {
padding: 0;
margin: 0;
list-style: none;
}
.treeview ul {
background-color: white;
margin-top: 4px;
}
.treeview .hitarea {
background: url(images/treeview-default.gif) -64px -25px no-repeat;
height: 16px;
width: 16px;
margin-left: -16px;
float: left;
cursor: pointer;
}
/* fix for IE6 */
* html .hitarea {
display: inline;
float:none;
}
.treeview li {
margin: 0;
padding: 3px 0pt 3px 16px;
}
.treeview a.selected {
background-color: #eee;
}
#treecontrol { margin: 1em 0; display: none; }
.treeview .hover { color: red; cursor: pointer; }
.treeview li { background: url(images/treeview-default-line.gif) 0 0 no-repeat; }
.treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
.treeview .expandable-hitarea { background-position: -80px -3px; }
.treeview li.last { background-position: 0 -1766px }
.treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(images/treeview-default.gif); }
.treeview li.lastCollapsable { background-position: 0 -111px }
.treeview li.lastExpandable { background-position: -32px -67px }
.treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }
.treeview-red li { background-image: url(images/treeview-red-line.gif); }
.treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(images/treeview-red.gif); }
.treeview-black li { background-image: url(images/treeview-black-line.gif); }
.treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(images/treeview-black.gif); }
.treeview-gray li { background-image: url(images/treeview-gray-line.gif); }
.treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(images/treeview-gray.gif); }
.treeview-famfamfam li { background-image: url(images/treeview-famfamfam-line.gif); }
.treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(images/treeview-famfamfam.gif); }
.filetree li { padding: 3px 0 2px 16px; }
.filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
.filetree span.folder { background: url(images/folder.gif) 0 0 no-repeat; }
.filetree li.expandable span.folder { background: url(images/folder-closed.gif) 0 0 no-repeat; }
.filetree span.file { background: url(images/file.gif) 0 0 no-repeat; }

View file

@ -1,251 +0,0 @@
/*
* Treeview 1.4 - jQuery plugin to hide and show branches of a tree
*
* http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
* http://docs.jquery.com/Plugins/Treeview
*
* Copyright (c) 2007 Jörn Zaefferer
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
* Revision: $Id: jquery.treeview.js 4684 2008-02-07 19:08:06Z joern.zaefferer $
*
*/
;(function($) {
$.extend($.fn, {
swapClass: function(c1, c2) {
var c1Elements = this.filter('.' + c1);
this.filter('.' + c2).removeClass(c2).addClass(c1);
c1Elements.removeClass(c1).addClass(c2);
return this;
},
replaceClass: function(c1, c2) {
return this.filter('.' + c1).removeClass(c1).addClass(c2).end();
},
hoverClass: function(className) {
className = className || "hover";
return this.hover(function() {
$(this).addClass(className);
}, function() {
$(this).removeClass(className);
});
},
heightToggle: function(animated, callback) {
animated ?
this.animate({ height: "toggle" }, animated, callback) :
this.each(function(){
jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();
if(callback)
callback.apply(this, arguments);
});
},
heightHide: function(animated, callback) {
if (animated) {
this.animate({ height: "hide" }, animated, callback);
} else {
this.hide();
if (callback)
this.each(callback);
}
},
prepareBranches: function(settings) {
if (!settings.prerendered) {
// mark last tree items
this.filter(":last-child:not(ul)").addClass(CLASSES.last);
// collapse whole tree, or only those marked as closed, anyway except those marked as open
this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide();
}
// return all items with sublists
return this.filter(":has(>ul)");
},
applyClasses: function(settings, toggler) {
this.filter(":has(>ul):not(:has(>a))").find(">span").click(function(event) {
toggler.apply($(this).next());
}).add( $("a", this) ).hoverClass();
if (!settings.prerendered) {
// handle closed ones first
this.filter(":has(>ul:hidden)")
.addClass(CLASSES.expandable)
.replaceClass(CLASSES.last, CLASSES.lastExpandable);
// handle open ones
this.not(":has(>ul:hidden)")
.addClass(CLASSES.collapsable)
.replaceClass(CLASSES.last, CLASSES.lastCollapsable);
// create hitarea
this.prepend("<div class=\"" + CLASSES.hitarea + "\"/>").find("div." + CLASSES.hitarea).each(function() {
var classes = "";
$.each($(this).parent().attr("class").split(" "), function() {
classes += this + "-hitarea ";
});
$(this).addClass( classes );
});
}
// apply event to hitarea
this.find("div." + CLASSES.hitarea).click( toggler );
},
treeview: function(settings) {
settings = $.extend({
cookieId: "treeview"
}, settings);
if (settings.add) {
return this.trigger("add", [settings.add]);
}
if ( settings.toggle ) {
var callback = settings.toggle;
settings.toggle = function() {
return callback.apply($(this).parent()[0], arguments);
};
}
// factory for treecontroller
function treeController(tree, control) {
// factory for click handlers
function handler(filter) {
return function() {
// reuse toggle event handler, applying the elements to toggle
// start searching for all hitareas
toggler.apply( $("div." + CLASSES.hitarea, tree).filter(function() {
// for plain toggle, no filter is provided, otherwise we need to check the parent element
return filter ? $(this).parent("." + filter).length : true;
}) );
return false;
};
}
// click on first element to collapse tree
$("a:eq(0)", control).click( handler(CLASSES.collapsable) );
// click on second to expand tree
$("a:eq(1)", control).click( handler(CLASSES.expandable) );
// click on third to toggle tree
$("a:eq(2)", control).click( handler() );
}
// handle toggle event
function toggler() {
$(this)
.parent()
// swap classes for hitarea
.find(">.hitarea")
.swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
.swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
.end()
// swap classes for parent li
.swapClass( CLASSES.collapsable, CLASSES.expandable )
.swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
// find child lists
.find( ">ul" )
// toggle them
.heightToggle( settings.animated, settings.toggle );
if ( settings.unique ) {
$(this).parent()
.siblings()
// swap classes for hitarea
.find(">.hitarea")
.replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
.replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
.end()
.replaceClass( CLASSES.collapsable, CLASSES.expandable )
.replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
.find( ">ul" )
.heightHide( settings.animated, settings.toggle );
}
}
function serialize() {
function binary(arg) {
return arg ? 1 : 0;
}
var data = [];
branches.each(function(i, e) {
data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0;
});
$.cookie(settings.cookieId, data.join("") );
}
function deserialize() {
var stored = $.cookie(settings.cookieId);
if ( stored ) {
var data = stored.split("");
branches.each(function(i, e) {
$(e).find(">ul")[ parseInt(data[i]) ? "show" : "hide" ]();
});
}
}
// add treeview class to activate styles
this.addClass("treeview");
// prepare branches and find all tree items with child lists
var branches = this.find("li").prepareBranches(settings);
switch(settings.persist) {
case "cookie":
var toggleCallback = settings.toggle;
settings.toggle = function() {
serialize();
if (toggleCallback) {
toggleCallback.apply(this, arguments);
}
};
deserialize();
break;
case "location":
var current = this.find("a").filter(function() { return this.href.toLowerCase() == location.href.toLowerCase(); });
if ( current.length ) {
current.addClass("selected").parents("ul, li").add( current.next() ).show();
}
break;
}
branches.applyClasses(settings, toggler);
// if control option is set, create the treecontroller and show it
if ( settings.control ) {
treeController(this, settings.control);
$(settings.control).show();
}
return this.bind("add", function(event, branches) {
$(branches).prev()
.removeClass(CLASSES.last)
.removeClass(CLASSES.lastCollapsable)
.removeClass(CLASSES.lastExpandable)
.find(">.hitarea")
.removeClass(CLASSES.lastCollapsableHitarea)
.removeClass(CLASSES.lastExpandableHitarea);
$(branches).find("li").andSelf().prepareBranches(settings).applyClasses(settings, toggler);
});
}
});
// classes used by the plugin
// need to be styled via external stylesheet, see first example
var CLASSES = $.fn.treeview.classes = {
open: "open",
closed: "closed",
expandable: "expandable",
expandableHitarea: "expandable-hitarea",
lastExpandableHitarea: "lastExpandable-hitarea",
collapsable: "collapsable",
collapsableHitarea: "collapsable-hitarea",
lastCollapsableHitarea: "lastCollapsable-hitarea",
lastCollapsable: "lastCollapsable",
lastExpandable: "lastExpandable",
last: "last",
hitarea: "hitarea"
};
// provide backwards compability
$.fn.Treeview = $.fn.treeview;
})(jQuery);

View file

@ -1,24 +0,0 @@
html, body {height:100%; margin: 0; padding: 0; }
html>body {
font-size: 16px;
font-size: 68.75%;
} /* Reset Base Font Size */
body {
font-family: Verdana, helvetica, arial, sans-serif;
font-size: 68.75%;
background: #fff;
color: #333;
}
h1, h2 { font-family: 'trebuchet ms', verdana, arial; padding: 10px; margin: 0 }
h1 { font-size: large }
#banner { padding: 15px; background-color: #06b; color: white; font-size: large; border-bottom: 1px solid #ccc;
background: url(bg.gif) repeat-x; text-align: center }
#banner a { color: white; }
#main { padding: 1em; }
a img { border: none; }

View file

@ -1,41 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 49
/svnroot/simplehtmldom/!svn/ver/169/trunk/example
END
example_extract_html.php
K 25
svn:wc:ra_dav:version-url
V 74
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_extract_html.php
END
example_basic_selector.php
K 25
svn:wc:ra_dav:version-url
V 76
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_basic_selector.php
END
example_modify_contents.php
K 25
svn:wc:ra_dav:version-url
V 77
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_modify_contents.php
END
simple_html_dom_utility.php
K 25
svn:wc:ra_dav:version-url
V 77
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/simple_html_dom_utility.php
END
example_advanced_selector.php
K 25
svn:wc:ra_dav:version-url
V 79
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/example_advanced_selector.php
END
example_callback.php
K 25
svn:wc:ra_dav:version-url
V 70
/svnroot/simplehtmldom/!svn/ver/134/trunk/example/example_callback.php
END

View file

@ -1,235 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/example
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-10-29T19:08:25.076520Z
169
me578022
d0e60b4b-9046-0410-940c-b97530268c78
example_extract_html.php
file
2010-08-17T19:13:52.948263Z
5815bb5f7500b9a88ecc70a123893c1b
2008-07-25T12:31:14.828880Z
133
me578022
has-props
110
example_basic_selector.php
file
2010-08-17T19:13:52.951263Z
217a2d96745c826e96d13c055e31638b
2008-07-25T12:31:14.828880Z
133
me578022
976
example_modify_contents.php
file
2010-08-17T19:13:52.953263Z
e6fcf41d1b2a1867b0314f80efe7eb9a
2008-07-25T12:31:14.828880Z
133
me578022
378
simple_html_dom_utility.php
file
2010-08-17T19:13:52.955263Z
3d75d01886f4fb7bc15a8f9a4b204428
2008-07-25T12:31:14.828880Z
133
me578022
927
scraping
dir
example_advanced_selector.php
file
2010-08-17T19:13:52.956263Z
273077bc1a0c8945acc1f318b60d8476
2008-07-25T12:31:14.828880Z
133
me578022
1521
example_callback.php
file
2010-08-17T19:13:52.964264Z
0d52be96ec57b5b40efb8588898159e4
2008-07-25T12:32:01.594191Z
134
me578022
has-props
604

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 11
Id Rev Date
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 11
Id Rev Date
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,54 +0,0 @@
<?php
// example of how to use advanced selector features
include('../simple_html_dom.php');
// -----------------------------------------------------------------------------
// descendant selector
$str = <<<HTML
<div>
<div>
<div class="foo bar">ok</div>
</div>
</div>
HTML;
$html = str_get_html($str);
echo $html->find('div div div', 0)->innertext . '<br>'; // result: "ok"
// -----------------------------------------------------------------------------
// nested selector
$str = <<<HTML
<ul id="ul1">
<li>item:<span>1</span></li>
<li>item:<span>2</span></li>
</ul>
<ul id="ul2">
<li>item:<span>3</span></li>
<li>item:<span>4</span></li>
</ul>
HTML;
$html = str_get_html($str);
foreach($html->find('ul') as $ul) {
foreach($ul->find('li') as $li)
echo $li->innertext . '<br>';
}
// -----------------------------------------------------------------------------
// parsing checkbox
$str = <<<HTML
<form name="form1" method="post" action="">
<input type="checkbox" name="checkbox1" value="checkbox1" checked>item1<br>
<input type="checkbox" name="checkbox2" value="checkbox2">item2<br>
<input type="checkbox" name="checkbox3" value="checkbox3" checked>item3<br>
</form>
HTML;
$html = str_get_html($str);
foreach($html->find('input[type=checkbox]') as $checkbox) {
if ($checkbox->checked)
echo $checkbox->name . ' is checked<br>';
else
echo $checkbox->name . ' is not checked<br>';
}
?>

View file

@ -1,37 +0,0 @@
<?php
// example of how to use basic selector to retrieve HTML contents
include('../simple_html_dom.php');
// get DOM from URL or file
$html = file_get_html('http://www.google.com/');
// find all link
foreach($html->find('a') as $e)
echo $e->href . '<br>';
// find all image
foreach($html->find('img') as $e)
echo $e->src . '<br>';
// find all image with full tag
foreach($html->find('img') as $e)
echo $e->outertext . '<br>';
// find all div tags with id=gbar
foreach($html->find('div#gbar') as $e)
echo $e->innertext . '<br>';
// find all span tags with class=gb1
foreach($html->find('span.gb1') as $e)
echo $e->outertext . '<br>';
// find all td tags with attribite align=center
foreach($html->find('td[align=center]') as $e)
echo $e->innertext . '<br>';
// extract text from table
echo $html->find('td[align="center"]', 1)->plaintext.'<br><hr>';
// extract text from HTML
echo $html->plaintext;
?>

View file

@ -1,28 +0,0 @@
<?php
include_once('../simple_html_dom.php');
// 1. Write a function with parameter "$element"
function my_callback($element) {
if ($element->tag=='input')
$element->outertext = 'input';
if ($element->tag=='img')
$element->outertext = 'img';
if ($element->tag=='a')
$element->outertext = 'a';
}
// 2. create HTML Dom
$html = file_get_html('http://www.google.com/');
// 3. Register the callback function with it's function name
$html->set_callback('my_callback');
// 4. Callback function will be invoked while dumping
echo $html;
?>

View file

@ -1,5 +0,0 @@
<?php
include_once('../simple_html_dom.php');
echo file_get_html('http://www.google.com/')->plaintext;
?>

View file

@ -1,18 +0,0 @@
<?php
// example of how to modify HTML contents
include('../simple_html_dom.php');
// get DOM from URL or file
$html = file_get_html('http://www.google.com/');
// remove all image
foreach($html->find('img') as $e)
$e->outertext = '';
// replace all input
foreach($html->find('input') as $e)
$e->outertext = '[INPUT]';
// dump contents
echo $html;
?>

View file

@ -1,35 +0,0 @@
<?php
include_once('../simple_html_dom.php');
// -----------------------------------------------------------------------------
// remove HTML comments
function html_no_comment($url) {
// create HTML DOM
$html = file_get_html($url);
// remove all comment elements
foreach($html->find('comment') as $e)
$e->outertext = '';
$ret = $html->save();
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// search elements that contains an specific text
function find_contains($html, $selector, $keyword, $index=-1) {
$ret = array();
foreach ($html->find($selector) as $e) {
if (strpos($e->innertext, $keyword)!==false)
$ret[] = $e;
}
if ($index<0) return $ret;
return (isset($ret[$index])) ? $ret[$index] : null;
}
?>

View file

@ -1,54 +0,0 @@
<?php
// example of how to use advanced selector features
include('../simple_html_dom.php');
// -----------------------------------------------------------------------------
// descendant selector
$str = <<<HTML
<div>
<div>
<div class="foo bar">ok</div>
</div>
</div>
HTML;
$html = str_get_html($str);
echo $html->find('div div div', 0)->innertext . '<br>'; // result: "ok"
// -----------------------------------------------------------------------------
// nested selector
$str = <<<HTML
<ul id="ul1">
<li>item:<span>1</span></li>
<li>item:<span>2</span></li>
</ul>
<ul id="ul2">
<li>item:<span>3</span></li>
<li>item:<span>4</span></li>
</ul>
HTML;
$html = str_get_html($str);
foreach($html->find('ul') as $ul) {
foreach($ul->find('li') as $li)
echo $li->innertext . '<br>';
}
// -----------------------------------------------------------------------------
// parsing checkbox
$str = <<<HTML
<form name="form1" method="post" action="">
<input type="checkbox" name="checkbox1" value="checkbox1" checked>item1<br>
<input type="checkbox" name="checkbox2" value="checkbox2">item2<br>
<input type="checkbox" name="checkbox3" value="checkbox3" checked>item3<br>
</form>
HTML;
$html = str_get_html($str);
foreach($html->find('input[type=checkbox]') as $checkbox) {
if ($checkbox->checked)
echo $checkbox->name . ' is checked<br>';
else
echo $checkbox->name . ' is not checked<br>';
}
?>

View file

@ -1,37 +0,0 @@
<?php
// example of how to use basic selector to retrieve HTML contents
include('../simple_html_dom.php');
// get DOM from URL or file
$html = file_get_html('http://www.google.com/');
// find all link
foreach($html->find('a') as $e)
echo $e->href . '<br>';
// find all image
foreach($html->find('img') as $e)
echo $e->src . '<br>';
// find all image with full tag
foreach($html->find('img') as $e)
echo $e->outertext . '<br>';
// find all div tags with id=gbar
foreach($html->find('div#gbar') as $e)
echo $e->innertext . '<br>';
// find all span tags with class=gb1
foreach($html->find('span.gb1') as $e)
echo $e->outertext . '<br>';
// find all td tags with attribite align=center
foreach($html->find('td[align=center]') as $e)
echo $e->innertext . '<br>';
// extract text from table
echo $html->find('td[align="center"]', 1)->plaintext.'<br><hr>';
// extract text from HTML
echo $html->plaintext;
?>

View file

@ -1,28 +0,0 @@
<?php
include_once('../simple_html_dom.php');
// 1. Write a function with parameter "$element"
function my_callback($element) {
if ($element->tag=='input')
$element->outertext = 'input';
if ($element->tag=='img')
$element->outertext = 'img';
if ($element->tag=='a')
$element->outertext = 'a';
}
// 2. create HTML Dom
$html = file_get_html('http://www.google.com/');
// 3. Register the callback function with it's function name
$html->set_callback('my_callback');
// 4. Callback function will be invoked while dumping
echo $html;
?>

View file

@ -1,5 +0,0 @@
<?php
include_once('../simple_html_dom.php');
echo file_get_html('http://www.google.com/')->plaintext;
?>

View file

@ -1,18 +0,0 @@
<?php
// example of how to modify HTML contents
include('../simple_html_dom.php');
// get DOM from URL or file
$html = file_get_html('http://www.google.com/');
// remove all image
foreach($html->find('img') as $e)
$e->outertext = '';
// replace all input
foreach($html->find('input') as $e)
$e->outertext = '[INPUT]';
// dump contents
echo $html;
?>

View file

@ -1,23 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 58
/svnroot/simplehtmldom/!svn/ver/169/trunk/example/scraping
END
example_scraping_digg.php
K 25
svn:wc:ra_dav:version-url
V 84
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/scraping/example_scraping_digg.php
END
example_scraping_imdb.php
K 25
svn:wc:ra_dav:version-url
V 84
/svnroot/simplehtmldom/!svn/ver/133/trunk/example/scraping/example_scraping_imdb.php
END
example_scraping_slashdot.php
K 25
svn:wc:ra_dav:version-url
V 88
/svnroot/simplehtmldom/!svn/ver/169/trunk/example/scraping/example_scraping_slashdot.php
END

View file

@ -1,130 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/example/scraping
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-10-29T19:08:25.076520Z
169
me578022
d0e60b4b-9046-0410-940c-b97530268c78
example_scraping_digg.php
file
2010-08-17T19:13:52.895260Z
bd67cef1e4729067a8fef9aff1a61dc3
2008-07-25T12:31:14.828880Z
133
me578022
has-props
1059
example_scraping_imdb.php
file
2010-08-17T19:13:52.901260Z
477179278b3752eccc5c286a0754e014
2008-07-25T12:31:14.828880Z
133
me578022
has-props
1311
example_scraping_slashdot.php
file
2010-08-17T19:13:52.909260Z
f3996448238646b8e76006da56fa42d2
2008-10-29T19:08:25.076520Z
169
me578022
has-props
829

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 11
Id Rev Date
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 11
Id Rev Date
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 11
Id Rev Date
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,44 +0,0 @@
<?php
include_once('../../simple_html_dom.php');
function scraping_digg() {
// create HTML DOM
$html = file_get_html('http://digg.com/');
// get news block
foreach($html->find('div.news-summary') as $article) {
// get title
$item['title'] = trim($article->find('h3', 0)->plaintext);
// get details
$item['details'] = trim($article->find('p', 0)->plaintext);
// get intro
$item['diggs'] = trim($article->find('li a strong', 0)->plaintext);
$ret[] = $item;
}
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// test it!
// "http://digg.com" will check user_agent header...
ini_set('user_agent', 'My-Application/2.5');
$ret = scraping_digg();
foreach($ret as $v) {
echo $v['title'].'<br>';
echo '<ul>';
echo '<li>'.$v['details'].'</li>';
echo '<li>Diggs: '.$v['diggs'].'</li>';
echo '</ul>';
}
?>

View file

@ -1,51 +0,0 @@
<?php
include_once('../../simple_html_dom.php');
function scraping_IMDB($url) {
// create HTML DOM
$html = file_get_html($url);
// get title
$ret['Title'] = $html->find('title', 0)->innertext;
// get rating
$ret['Rating'] = $html->find('div[class="general rating"] b', 0)->innertext;
// get overview
foreach($html->find('div[class="info"]') as $div) {
// skip user comments
if($div->find('h5', 0)->innertext=='User Comments:')
return $ret;
$key = '';
$val = '';
foreach($div->find('*') as $node) {
if ($node->tag=='h5')
$key = $node->plaintext;
if ($node->tag=='a' && $node->plaintext!='more')
$val .= trim(str_replace("\n", '', $node->plaintext));
if ($node->tag=='text')
$val .= trim(str_replace("\n", '', $node->plaintext));
}
$ret[$key] = $val;
}
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// test it!
$ret = scraping_IMDB('http://imdb.com/title/tt0335266/');
foreach($ret as $k=>$v)
echo '<strong>'.$k.' </strong>'.$v.'<br>';
?>

View file

@ -1,35 +0,0 @@
<?php
include_once('../../simple_html_dom.php');
function scraping_slashdot() {
// create HTML DOM
$html = file_get_html('http://slashdot.org/');
// get article block
foreach($html->find('div[id^=firehose-]') as $article) {
// get title
$item['title'] = trim($article->find('a.datitle', 0)->plaintext);
// get body
$item['body'] = trim($article->find('div.body', 0)->plaintext);
$ret[] = $item;
}
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// test it!
$ret = scraping_slashdot();
foreach($ret as $v) {
echo $v['title'].'<br>';
echo '<ul>';
echo '<li>'.$v['body'].'</li>';
echo '</ul>';
}
?>

View file

@ -1,44 +0,0 @@
<?php
include_once('../../simple_html_dom.php');
function scraping_digg() {
// create HTML DOM
$html = file_get_html('http://digg.com/');
// get news block
foreach($html->find('div.news-summary') as $article) {
// get title
$item['title'] = trim($article->find('h3', 0)->plaintext);
// get details
$item['details'] = trim($article->find('p', 0)->plaintext);
// get intro
$item['diggs'] = trim($article->find('li a strong', 0)->plaintext);
$ret[] = $item;
}
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// test it!
// "http://digg.com" will check user_agent header...
ini_set('user_agent', 'My-Application/2.5');
$ret = scraping_digg();
foreach($ret as $v) {
echo $v['title'].'<br>';
echo '<ul>';
echo '<li>'.$v['details'].'</li>';
echo '<li>Diggs: '.$v['diggs'].'</li>';
echo '</ul>';
}
?>

View file

@ -1,51 +0,0 @@
<?php
include_once('../../simple_html_dom.php');
function scraping_IMDB($url) {
// create HTML DOM
$html = file_get_html($url);
// get title
$ret['Title'] = $html->find('title', 0)->innertext;
// get rating
$ret['Rating'] = $html->find('div[class="general rating"] b', 0)->innertext;
// get overview
foreach($html->find('div[class="info"]') as $div) {
// skip user comments
if($div->find('h5', 0)->innertext=='User Comments:')
return $ret;
$key = '';
$val = '';
foreach($div->find('*') as $node) {
if ($node->tag=='h5')
$key = $node->plaintext;
if ($node->tag=='a' && $node->plaintext!='more')
$val .= trim(str_replace("\n", '', $node->plaintext));
if ($node->tag=='text')
$val .= trim(str_replace("\n", '', $node->plaintext));
}
$ret[$key] = $val;
}
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// test it!
$ret = scraping_IMDB('http://imdb.com/title/tt0335266/');
foreach($ret as $k=>$v)
echo '<strong>'.$k.' </strong>'.$v.'<br>';
?>

View file

@ -1,35 +0,0 @@
<?php
include_once('../../simple_html_dom.php');
function scraping_slashdot() {
// create HTML DOM
$html = file_get_html('http://slashdot.org/');
// get article block
foreach($html->find('div[id^=firehose-]') as $article) {
// get title
$item['title'] = trim($article->find('a.datitle', 0)->plaintext);
// get body
$item['body'] = trim($article->find('div.body', 0)->plaintext);
$ret[] = $item;
}
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// test it!
$ret = scraping_slashdot();
foreach($ret as $v) {
echo $v['title'].'<br>';
echo '<ul>';
echo '<li>'.$v['body'].'</li>';
echo '</ul>';
}
?>

View file

@ -1,35 +0,0 @@
<?php
include_once('../simple_html_dom.php');
// -----------------------------------------------------------------------------
// remove HTML comments
function html_no_comment($url) {
// create HTML DOM
$html = file_get_html($url);
// remove all comment elements
foreach($html->find('comment') as $e)
$e->outertext = '';
$ret = $html->save();
// clean up memory
$html->clear();
unset($html);
return $ret;
}
// -----------------------------------------------------------------------------
// search elements that contains an specific text
function find_contains($html, $selector, $keyword, $index=-1) {
$ret = array();
foreach ($html->find($selector) as $e) {
if (strpos($e->innertext, $keyword)!==false)
$ret[] = $e;
}
if ($index<0) return $ret;
return (isset($ret[$index])) ? $ret[$index] : null;
}
?>

View file

@ -1,23 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 48
/svnroot/simplehtmldom/!svn/ver/165/trunk/manual
END
manual.htm
K 25
svn:wc:ra_dav:version-url
V 59
/svnroot/simplehtmldom/!svn/ver/165/trunk/manual/manual.htm
END
manual_faq.htm
K 25
svn:wc:ra_dav:version-url
V 63
/svnroot/simplehtmldom/!svn/ver/165/trunk/manual/manual_faq.htm
END
manual_api.htm
K 25
svn:wc:ra_dav:version-url
V 63
/svnroot/simplehtmldom/!svn/ver/165/trunk/manual/manual_api.htm
END

View file

@ -1,139 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-10-20T21:14:53.811160Z
165
me578022
d0e60b4b-9046-0410-940c-b97530268c78
manual.htm
file
2010-08-17T19:13:53.692305Z
299f58f40c40054c245399752d7164ec
2008-10-20T21:14:53.811160Z
165
me578022
has-props
24678
css
dir
manual_faq.htm
file
2010-08-17T19:13:53.698306Z
2d0d134462e6bf404b93d7f8eefe2767
2008-10-20T21:14:53.811160Z
165
me578022
has-props
4818
img
dir
js
dir
manual_api.htm
file
2010-08-17T19:13:53.705306Z
3ff73eb882e61bd23b87c6cc0ba743b4
2008-10-20T21:14:53.811160Z
165
me578022
has-props
11505

View file

@ -1,448 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP Simple HTML DOM Parser: Manual</title>
<link href="css/default.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="css/ui.tabs.css" type="text/css" media="print, projection, screen">
<script type="text/javascript" src="js/jquery-1.2.3.pack.js"></script>
<script type="text/javascript" src="js/ui.tabs.pack.js"></script>
<script language="JavaScript" type="text/JavaScript">
$(document).ready(function(){
$(function() {$('#container_quickstart > ul').tabs();});
$(function() {$('#container_create > ul').tabs();});
$(function() {$('#container_find > ul').tabs();});
$(function() {$('#container_access > ul').tabs();});
$(function() {$('#container_traverse > ul').tabs();});
$(function() {$('#container_dump > ul').tabs();});
$(function() {$('#container_callback > ul').tabs();});
});
</script>
</head>
<body>
<h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
<div id="content">
<h2>Index</h2>
<ul>
<li><a href="#section_quickstart">Quick Start</a></li>
<li><a href="#section_create">How to create HTML DOM object?</a></li>
<li><a href="#section_find">How to find HTML elements?</a></li>
<li><a href="#section_access">How to access the HTML element's attributes?</a> </li>
<li><a href="#section_traverse">How to traverse the DOM tree?</a></li>
<li><a href="#section_dump">How to dump contents of DOM object?</a></li>
<li><a href="#section_callback">How to customize the parsing behavior?</a></li>
<li><a href="manual_api.htm">API Reference</a></li>
<li><a href="manual_faq.htm">FAQ</a></li>
</ul>
<a name="section_quickstart"></a>
<h2>Quick Start</h2>
<a class="top" href="#top">Top</a>
<div id="container_quickstart">
<ul>
<li><a href="#fragment-11"><span>Get HTML elements</span></a></li>
<li><a href="#fragment-12"><span>Modify HTML elements</span></a></li>
<li><a href="#fragment-13"><span>Extract contents from HTML</span></a></li>
<li><a href="#fragment-14"><span>Scraping Slashdot!</span></a></li>
</ul>
<div id="fragment-11">
<div class="code">
<span class="comment">// Create DOM from URL or file</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'http://www.google.com/'</span>);<br>
<br>
<span class="comment">// Find all images </span><br>
foreach($html-&gt;<strong>find</strong>(<span class="var">'img'</span>) as $element) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo $element-&gt;<strong>src</strong> . <span class="var">'&lt;br&gt;'</span>;<br>
<br>
<span class="comment">// Find all links </span><br>
foreach($html-&gt;<strong>find</strong>(<span class="var">'a'</span>) as $element) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo $element-&gt;<strong>href</strong> . <span class="var">'&lt;br&gt;'</span>; </div>
</div>
<div id="fragment-12">
<div class="code">
<span class="comment">// Create DOM from string</span><br>
$html = <strong>str_get_html</strong>(<span class="var">'&lt;div id=&quot;hello&quot;&gt;Hello&lt;/div&gt;&lt;div id=&quot;world&quot;&gt;World&lt;/div&gt;'</span>);<span class="comment"><br>
<br>
</span>
$html-&gt;<strong>find</strong>(<span class="var">'div', 1</span>)-&gt;<strong>class</strong> = <span class="var">'bar'</span>;<br>
<br>
$html-&gt;<strong>find</strong>(<span class="var">'div[id=hello]', 0</span>)-&gt;<strong>innertext</strong> = <span class="var">'foo'</span>;<br>
<br>
echo $html; <span class="comment">// Output: &lt;div id=&quot;hello&quot;&gt;<strong>foo</strong>&lt;/div&gt;&lt;div id=&quot;world&quot; <strong>class=&quot;bar&quot;</strong>&gt;World&lt;/div&gt;</span> </div>
</div>
<div id="fragment-13">
<div class="code"><br>
<span class="comment">// Dump contents (without tags) from HTML</span><br>
echo <strong>file_get_html</strong>(<span class="var">'http://www.google.com/'</span>)-&gt;<strong>plaintext</strong>;
<br>
<br>
</div>
</div>
<div id="fragment-14">
<div class="code">
<span class="comment">// Create DOM from URL</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'http://slashdot.org/'</span>);<br>
<br>
<span class="comment">// Find all article blocks</span><br>
foreach($html-&gt;<strong>find</strong>(<span class="var">'div.article'</span>) as $article) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;$item[<span class="var">'title'</span>]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= $article-&gt;<strong>find</strong>(<span class="var">'div.title'</span>, <span class="var">0</span>)-&gt;<strong>plaintext</strong>;<br>
&nbsp;&nbsp;&nbsp;&nbsp;$item[<span class="var">'intro'</span>]&nbsp;&nbsp;&nbsp;&nbsp;= $article-&gt;<strong>find</strong>(<span class="var">'div.intro'</span>, <span class="var">0</span>)-&gt;<strong>plaintext</strong>;<br>
&nbsp;&nbsp;&nbsp;&nbsp;$item[<span class="var">'details'</span>]&nbsp;= $article-&gt;<strong>find</strong>(<span class="var">'div.details'</span>, <span class="var">0</span>)-&gt;<strong>plaintext</strong>;<br>
&nbsp;&nbsp;&nbsp;&nbsp;$articles[] = $item;<br>
}<br>
<br>
print_r($articles);
</div>
</div>
</div>
<a name="section_create"></a>
<h2>How to create HTML DOM object?</h2>
<a class="top" href="#top">Top</a>
<div id="container_create">
<ul>
<li><a href="#frag_create_quick"><span>Quick way</span></a></li>
<li><a href="#frag_create_oo"><span>Object-oriented way</span></a></li>
</ul>
<div id="frag_create_quick">
<div class="code"><span class="comment">// Create a DOM object from a string</span><br>
$html = <strong>str_get_html</strong>(<span class="var">'&lt;html&gt;&lt;body&gt;Hello!&lt;/body&gt;&lt;/html&gt;'</span>);<br>
<br>
<span class="comment">// Create a DOM object from a URL</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'http://www.google.com/'</span>);<br>
<br>
<span class="comment">// Create a DOM object from a HTML file</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'test.htm'</span>);<span class="comment"><br>
</span></div>
</div>
<div id="frag_create_oo">
<div class="code"><span class="comment">// Create a DOM object</span><br>
$html = new <strong>simple_html_dom</strong>();<br>
<br>
<span class="comment">// Load HTML from a string</span><br>
$html-&gt;<strong>load</strong>(<span class="var">'&lt;html&gt;&lt;body&gt;Hello!&lt;/body&gt;&lt;/html&gt;'</span>);<br>
<br>
<span class="comment">// Load HTML from a URL </span> <br>
$html-&gt;<strong>load_file</strong>(<span class="var">'http://www.google.com/'</span>);<br>
<br>
<span class="comment">// Load HTML from a HTML file</span> <br>
$html-&gt;<strong>load_file</strong>(<span class="var">'test.htm'</span>);</div>
</div>
</div>
<a name="section_find"></a>
<h2>How to find HTML elements?</h2>
<a class="top" href="#top">Top</a>
<div id="container_find">
<ul>
<li><a href="#frag_find_basic"><span>Basics</span></a></li>
<li><a href="#frag_find_advanced"><span>Advanced</span></a></li>
<li><a href="#frag_find_chain"><span>Descendant selectors</span></a></li>
<li><a href="#frag_find_nested"><span>Nested selectors</span></a></li>
<li><a href="#frag_find_attr"><span>Attribute Filters</span></a></li>
<li><a href="#frag_find_textcomment"><span>Text &amp; Comments</span></a></li>
</ul>
<div id="frag_find_basic">
<div class="code"> <span class="comment">// Find all <strong>anchors</strong>, returns a <strong>array</strong> of element objects</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a</strong>'</span>);<br>
<br>
<span class="comment">// Find <strong>(N)th</strong> <strong>anchor</strong>, returns element object or <strong>null</strong> if not found</span> <span class="comment">(zero based)</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a</strong>', <strong>0</strong></span>);<br>
<br>
<span class="comment">// Find <strong>lastest</strong> <strong>anchor</strong>, returns element object or <strong>null</strong> if not found</span> <span class="comment">(zero based)</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a</strong>', <strong>-1</strong></span>); <br>
<br>
<span class="comment">// Find all <strong>&lt;div&gt;</strong> with the <strong>id</strong> attribute</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>div[id]</strong>'</span>);<br>
<br>
<span class="comment">// Find all <strong>&lt;div&gt;</strong> which attribute <strong>id=foo</strong></span><br>
$ret = $html-&gt;find(<span class="var">'<strong>div[id=foo]</strong>'</span>); <br>
</div>
</div>
<div id="frag_find_advanced">
<div class="code"><span class="comment">// Find all element which <strong>id</strong>=foo</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>#foo</strong>'</span>);<br>
<br>
<span class=comment>// Find all element which <strong>class</strong>=foo</span><br>
$ret = $html-&gt;find(<span class=var>'<strong>.foo</strong>'</span>);<br>
<br>
<span class="comment">// Find all element has attribute<strong> id</strong></span><br>
$ret = $html-&gt;find(<span class="var">'<strong>*[id]</strong>'</span>); <br>
<br>
<span class="comment">// Find all <strong>anchors</strong> and <strong>images</strong> </span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a, img</strong>'</span>); <br>
<br>
<span class="comment">// Find all <strong>anchors</strong> and <strong>images</strong> with the "title" attribute</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a[title], img[title]</strong>'</span>);<br>
</div>
</div>
<div id="frag_find_attr">
<div class="code">
Supports these operators in attribute selectors:<br><br>
<table cellpadding="1" cellspacing="1">
<tr>
<th width="25%">Filter</th>
<th width="75%">Description</th>
</tr>
<tr>
<td>[attribute]</td>
<td>Matches elements that <strong>have</strong> the specified attribute.</td>
</tr>
<tr>
<td>[!attribute]</td>
<td>Matches elements that <strong>don't have</strong> the specified attribute.</td>
</tr>
<tr>
<td>[attribute=value]</td>
<td>Matches elements that have the specified attribute with a <strong>certain value</strong>.</td>
</tr>
<tr>
<td>[attribute!=value]</td>
<td>Matches elements that <strong>don't have</strong> the specified attribute with a certain value.</td>
</tr>
<tr>
<td>[attribute^=value]</td>
<td>Matches elements that have the specified attribute and it <strong>starts</strong> with a certain value.</td>
</tr>
<tr>
<td>[attribute$=value]</td>
<td>Matches elements that have the specified attribute and it <strong>ends</strong> with a certain value.</td>
</tr>
<tr>
<td>[attribute*=value]</td>
<td>Matches elements that have the specified attribute and it <strong>contains</strong> a certain value.</td>
</tr>
</table>
</div>
</div>
<div id="frag_find_chain">
<div class="code"><span class="comment">// Find all &lt;li&gt; in &lt;ul&gt; </span><br>
$es = $html-&gt;find(<span class="var">'<strong>ul li</strong>'</span>);<br>
<br>
<span class="comment">// Find Nested &lt;div&gt; </span><span class="comment">tags</span><br>
$es = $html-&gt;find(<span class="var">'<strong>div div div</strong>'</span>); <br>
<br>
<span class="comment">// Find all &lt;td&gt; in &lt;table&gt; which class=hello </span><br>
$es = $html-&gt;find(<span class="var">'<strong>table.hello td</strong>'</span>);<br>
<br>
<span class="comment">// Find all td tags with attribite align=center in table tags </span><br>
$es = $html-&gt;find(<span class="var">''<strong>table</strong><strong> td[align=center]</strong>'</span>);<br>
</div>
</div>
<div id="frag_find_textcomment">
<div class="code"><span class="comment"> // Find all text blocks </span><br>
$es = $html-&gt;find(<span class="var">'<strong>text</strong>'</span>);<br>
<br>
<span class="comment">// Find all comment (&lt;!--...--&gt;) blocks </span><br>
$es = $html-&gt;find(<span class="var">'<strong>comment</strong>'</span>);<br>
</div>
</div>
<div id="frag_find_nested">
<div class="code"> <span class="comment">// Find all &lt;li&gt; in &lt;ul&gt; </span><br>
foreach($html-&gt;find(<span class="var">'<strong>ul</strong>'</span>) as $ul) <br>
{<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach($ul-&gt;find(<span class="var">'<strong>li</strong>'</span>) as $li) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="comment">// do something...</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
}<br>
<br>
<span class="comment">// Find first &lt;li&gt; in first &lt;ul&gt;</span> <br>
$e = $html-&gt;find(<span class="var">'<strong>ul</strong>', <strong>0</strong></span>)-&gt;find(<span class="var">'<strong>li</strong>', <strong>0</strong></span>);<br>
</div>
</div>
</div>
<a name="section_access"></a>
<h2>How to access the HTML element's attributes?</h2>
<a class="top" href="#top">Top</a>
<div id="container_access">
<ul>
<li><a href="#frag_access_attr"><span>Get, Set and Remove attributes</span></a></li>
<li><a href="#frag_access_special"><span>Magic attributes</span></a></li>
<li><a href="#frag_access_tips"><span>Tips</span></a></li>
</ul>
<div id="frag_access_attr">
<div class="code">
<span class="comment">// <strong>Get</strong> a attribute ( If the attribute is <strong>non-value</strong> attribute (eg. checked, selected...), it will returns <strong>true</strong> or <strong>false</strong>)</span><br>
$value = $e-&gt;<strong>href</strong>;<br>
<br>
<span class="comment">// <strong>Set</strong> a attribute(If the attribute is <strong>non-value</strong> attribute (eg. checked, selected...), set it's value as <strong>true</strong> or <strong>false</strong>)</span><br>
$e-&gt;<strong>href</strong> = <span class="var">'my link'</span>;<br>
<br>
<span class="comment">// <strong>Remove</strong> a attribute, set it's value as null! </span><br>
$e-&gt;<strong>href</strong> = <strong><span class="var">null</span></strong>;<br>
<br>
<span class="comment">// <strong>Determine</strong> whether a attribute exist?</span> <br>
if(isset($e-&gt;<strong>href</strong>)) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo <span class="var">'href exist!'</span>;<br>
</div>
</div>
<div id="frag_access_special">
<div class="code"> <span class="comment">// Example</span><br>
<span class="hl-var">$</span><span class="hl-code">html = </span>str_get_html<span class="hl-brackets">(</span><span class="var">&quot;&lt;div&gt;foo &lt;b&gt;bar&lt;/b&gt;&lt;/div&gt;&quot;</span><span class="hl-brackets">)</span><span class="hl-code">;</span> <br>
$e = $html-&gt;find(<span class="var">&quot;div&quot;</span>, <span class="var">0</span>);<br>
<br>
echo $e-&gt;<strong>tag</strong>; <span class="comment">// Returns: &quot; <strong>div</strong>&quot;</span><br>
echo $e-&gt;<strong>outertext</strong>; <span class="comment">// Returns: &quot; <strong>&lt;div&gt;foo &lt;b&gt;bar&lt;/b&gt;&lt;/div&gt;</strong>&quot;</span><br>
echo $e-&gt;<strong>innertext</strong>; <span class="comment">// Returns: &quot; <strong>foo &lt;b&gt;bar&lt;/b&gt;</strong>&quot;</span><br>
echo $e-&gt;<strong>plaintext</strong>; <span class="comment">// Returns: &quot; <strong>foo </strong><strong>bar</strong>&quot;<br>
<br>
</span>
<table cellspacing="1" cellpadding="1">
<tr bgcolor="#CCCCCC">
<th width="25%">Attribute Name</th>
<th width="75%">Usage</th>
</tr>
<tr>
<td>$e-&gt;<strong>tag</strong></td>
<td>Read or write the <strong>tag name</strong> of element.</td>
</tr>
<tr>
<td>$e-&gt;<strong>outertext</strong></td>
<td>Read or write the <strong>outer HTML text </strong> of element.</td>
</tr>
<tr>
<td>$e-&gt;<strong>innertext</strong></td>
<td>Read or write the <strong>inner HTML text </strong> of element.</td>
</tr>
<tr>
<td>$e-&gt;<strong>plaintext</strong></td>
<td>Read or write the <strong>plain text </strong> of element.</td>
</tr>
</table>
</div>
</div>
<div id="frag_access_tips">
<div class="code"><span class="comment">// <strong>Extract</strong> contents from HTML </span><br>
echo <strong>$html</strong>-&gt;<strong>plaintext</strong>;<br>
<br>
<span class="comment">
// <strong>Wrap</strong> a element</span><br>
$e-&gt;<strong>outertext</strong> = <span class="var">'&lt;div class=&quot;wrap&quot;&gt;'</span> . $e-&gt;<strong>outertext</strong> . <span class="var">'&lt;div&gt;</span>';<br>
<br>
<span class="comment">// <strong>Remove</strong> a element, set it's outertext as an empty string </span><br>
$e-&gt;<strong>outertext</strong> = <span class="var">''</span>;<br>
<br>
<span class="comment">// <strong>Append</strong> a element</span><br>
$e-&gt;<strong>outertext</strong> = $e-&gt;<strong>outertext</strong> . <span class="var">'&lt;div&gt;foo</span><span class="var">&lt;div&gt;</span>';<br>
<br>
<span class="comment">// <strong>Insert</strong> a element</span><br>
$e-&gt;<strong>outertext</strong> = <span class="var">'&lt;div&gt;foo</span><span class="var">&lt;div&gt;</span>' . $e-&gt;<strong>outertext</strong>;<br>
</div>
</div>
</div>
<a name="section_traverse"></a>
<h2>How to traverse the DOM tree?</h2>
<a class="top" href="#top">Top</a>
<div id="container_traverse">
<ul>
<li><a href="#frag_traverse_background"><span>Background Knowledge</span></a></li>
<li><a href="#frag_traverse_traverse"><span>Traverse the DOM tree</span></a></li>
</ul>
<div id="frag_traverse_background">
<div class="code"> <span class="comment">// If you are not so familiar with HTML DOM, check this <a href="http://php.net/manual/en/book.dom.php" target="_blank"><span class="var">link</span></a> to learn more... </span><br>
<br>
<span class="comment">// Example</span><br>
echo $html-&gt;<strong>find</strong>(<span class="var">&quot;#div1&quot;, 0</span>)-&gt;<strong>children</strong>(<span class="var">1</span>)-&gt;<strong>children</strong>(<span class="var">1</span>)-&gt;<strong>children</strong>(<span class="var">2</span>)-&gt;<span class="var">id</span>;<br>
<span class="comment">// or</span> <br>
echo $html-&gt;<strong>getElementById</strong>(<span class="var">&quot;div1&quot;</span>)-&gt;<strong>childNodes</strong>(<span class="var">1</span>)-&gt;<strong>childNodes</strong>(<span class="var">1</span>)-&gt;<strong>childNodes</strong>(<span class="var">2</span>)-&gt;<strong>getAttribute</strong>(<span class="var">'id'</span>); </div>
</div>
<div id="frag_traverse_traverse">
<div class="code">You can also call methods with <a href="manual_api.htm#camel"><span class="var">Camel naming convertions</span></a>.<br>
<table cellspacing="1" cellpadding="1">
<tr>
<th> Method </th>
<th> Description</th>
</tr>
<tr>
<td>
<div class="returns">mixed</div>$e-&gt;<strong>children</strong> ( <span class="var">[int $index]</span> ) </td>
<td>Returns the Nth <strong>child object</strong> if <strong>index</strong> is set, otherwise return an <strong>array of children</strong>. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>parent</strong> () </td>
<td>Returns the <strong>parent</strong> of element. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>first_child</strong> () </td>
<td>Returns the <strong>first child</strong> of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>last_child</strong> () </td>
<td>Returns the <strong>last child</strong> of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>next_sibling</strong> () </td>
<td>Returns the <strong>next sibling</strong> of element, or<strong> null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>prev_sibling</strong> () </td>
<td>Returns the <strong>previous sibling</strong> of element, or <strong>null</strong> if not found. </td>
</tr>
</table>
</div>
</div>
</div>
<a name="section_dump"></a>
<h2>How to dump contents of DOM object?</h2>
<a class="top" href="#top">Top</a>
<div id="container_dump">
<ul>
<li><a href="#frag_dump_quick"><span>Quick way</span></a></li>
<li><a href="#frag_dump_oo"><span>Object-oriented way</span></a></li>
</ul>
<div id="frag_dump_oo">
<div class="code"><span class="comment">// </span><span class="comment">Dumps the internal DOM tree back into string </span><br>
$str = $html-&gt;<strong>save</strong>();<br>
<br>
<span class="comment">// Dumps the internal DOM tree back into a file</span> <br>
$html-&gt;<strong>save</strong>(<span class="var">'result.htm'</span>);</div>
</div>
<div id="frag_dump_quick">
<div class="code"><span class="comment">// </span><span class="comment">Dumps the internal DOM tree back into string </span><br>
$str = $html;<br>
<br>
<span class="comment">// Print it!</span><br>
echo $html; <br>
</div>
</div>
</div>
<a name="section_callback"></a>
<h2>How to customize the parsing behavior?</h2>
<a class="top" href="#top">Top</a>
<div id="container_callback">
<ul>
<li><a href="#frag_callback"><span>Callback function</span></a></li>
</ul>
<div id="frag_callback">
<div class="code"><span class="comment">// Write a function with parameter &quot;<strong>$element</strong>&quot;</span><br>
function my_callback(<span class="var">$element</span>) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">// Hide all &lt;b&gt; tags </span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($element-&gt;tag==<span class="var">'b'</span>)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$element-&gt;outertext = '';<br>
} <br>
<br>
<span class="comment">// Register the callback function with it's <strong>function name</strong></span><br>
$html-&gt;<strong>set_callback</strong>(<span class="var">'my_callback'</span>);<br>
<br>
<span class="comment">// Callback function will be invoked while dumping</span><br>
echo $html;
</div>
</div>
</div>
<div><br>
Author: S.C. Chen (me578022@gmail.com)<br>
Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
Contributions by: Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
</div>
</div>
</body>
</html>
<!--$Rev$-->

View file

@ -1,320 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP Simple HTML DOM Parser: API Reference</title>
<link href="css/default.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
<div id="content">
<h2>Index</h2>
<ul>
<li><a href="manual.htm">Back</a></li>
<li><a href="#api">API Reference</a></li>
<li><a href="#camel">Camel naming conventions</a></li>
</ul>
<a name="api"></a>
<h2>API Reference</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <strong>Helper</strong> functions
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320">Name</th>
<th>Description</th>
</tr>
<tr>
<td><span class="returns">object</span> str_get_html ( <span class="var">string $content</span> )</td>
<td class="description">Creates a DOM object from a string.</td>
</tr>
<tr>
<td><span class="returns">object</span> file_get_html ( <span class="var">string $filename</span> )</td>
<td class="description">Creates a DOM object from a file or a URL.</td>
</tr>
</table>
<br>
<strong>DOM</strong> methods &amp; properties <br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320"> Name</th>
<th> Description</th>
</tr>
<tr>
<td>
<div class="returns">void</div>
__construct ( <span class="var">[string $filename]</span> )</td>
<td class="description">Constructor, set the filename parameter will automatically load the contents, either text or file/url.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
plaintext</td>
<td class="description">Returns the contents extracted from HTML.</td>
</tr>
<tr>
<td>
<div class="returns">void</div>
clear ()</td>
<td class="description">Clean up memory.</td>
</tr>
<tr>
<td>
<div class="returns">void</div>
load ( <span class="var">string $content </span>)</td>
<td class="description"> Load contents from a <strong>string</strong>. </td>
</tr>
<tr>
<td>
<div class="returns">string</div>
save ( <span class="var">[string $filename]</span> )</td>
<td class="description">Dumps the internal DOM tree back into a <strong>string</strong>. If the $filename is set, result string will save to file. </td>
</tr>
<tr>
<td>
<div class="returns">void</div>
load_file (<span class="var"> string $filename</span> )</td>
<td class="description"> Load contents from a from a file or a URL.</td>
</tr>
<tr>
<td>
<div class="returns">void</div>
set_callback ( <span class="var">string $function_name </span>)</td>
<td class="description">Set a callback function. </td>
</tr>
<tr>
<td>
<div class="returns">mixed</div>
find (<span class="var"> string $selector [, int $index] </span>)</td>
<td class="description">Find elements by the CSS selector. Returns the Nth element <strong>object</strong> if <strong>index</strong> is set, otherwise return an <strong>array</strong> of object. </td>
</tr>
</table>
<br>
<strong>Element</strong> methods &amp; properties <br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320">Name</th>
<th>Description</th>
</tr>
<tr>
<td>
<div class="returns">string</div>
<span class="var">[attribute]</span></td>
<td class="description">Read or write element's attribure value. </td>
</tr>
<tr>
<td>
<div class="returns">string</div>
tag</td>
<td class="description">Read or write the tag name of element.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
outertext</td>
<td class="description">Read or write the outer HTML text of element.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
innertext</td>
<td class="description">Read or write the inner HTML text of element.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
plaintext</td>
<td class="description">Read or write the plain text of element.</td>
</tr>
<tr>
<td>
<div class="returns">mixed</div>
find (<span class="var"> string $selector [, int $index] </span>)</td>
<td class="description">Find children by the CSS selector. Returns the Nth element <strong>object</strong> if <strong>index</strong> is set, otherwise, return an <strong>array</strong> of object. </td>
</tr>
</table>
<strong><br>
DOM</strong> traversing<br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320">Name</th>
<th>Description</th>
</tr>
<tr>
<td>
<div class="returns">mixed</div>
$e-&gt;children ( <span class="var">[int $index]</span> ) </td>
<td class="description">Returns the Nth child <strong>object</strong> if <strong>index</strong> is set, otherwise return an <strong>array</strong> of children. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;parent () </td>
<td class="description">Returns the parent of element. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;first_child () </td>
<td class="description">Returns the first child of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;last_child () </td>
<td class="description">Returns the last child of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;next_sibling () </td>
<td class="description">Returns the next sibling of element, or<strong> null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;prev_sibling () </td>
<td class="description">Returns the previous sibling of element, or <strong>null</strong> if not found. </td>
</tr>
</table>
</div>
<a name="camel"></a>
<h2>Camel naming convertions</h2>
<a class="top" href="#top">Top</a>
<div class="code">You can also call methods with W3C STANDARD camel naming convertions.<br>
<br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="50%">Method</th>
<th>Mapping</th>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">array</div>
$e-&gt;getAllAttributes () </td>
<td>
<div class="returns">array</div>
$e-&gt;<span class="var">attr</span></td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">string</div>
$e-&gt;getAttribute ( <span class="var">$name</span> ) </td>
<td>
<div class="returns">string</div>
$e-&gt;<span class="var">attribute</span></td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">void</div>
$e-&gt;setAttribute ( <span class="var">$name, $value</span> ) </td>
<td>
<div class="returns">void</div>
$value = $e-&gt;<span class="var">attribute</span></td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">bool</div>
$e-&gt;hasAttribute ( <span class="var">$name</span> ) </td>
<td>
<div class="returns">bool</div>
isset($e-&gt;<span class="var">attribute</span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">void</div>
$e-&gt;removeAttribute ( <span class="var">$name</span> ) </td>
<td>
<div class="returns">void</div>
$e-&gt;<span class="var">attribute</span> = null</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;getElementById ( <span class="var">$id</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> &quot;#$id&quot;, 0 </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">mixed</div>
$e-&gt;getElementsById ( <span class="var">$id [,$index] </span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> &quot;#$id&quot; [, int $index] </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;getElementByTagName (<span class="var">$name</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> $name, 0 </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">mixed</div>
$e-&gt;getElementsByTagName ( <span class="var">$name [, $index]</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> $name [, int $index] </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;parentNode () </td>
<td>
<div class="returns">element</div>
$e-&gt;parent () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">mixed</div>
$e-&gt;childNodes ( <span class="var">[$index]</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;children ( <span class="var">[int $index]</span> ) </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;firstChild () </td>
<td>
<div class="returns">element</div>
$e-&gt;first_child () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;lastChild () </td>
<td>
<div class="returns">element</div>
$e-&gt;last_child () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;nextSibling () </td>
<td>
<div class="returns">element</div>
$e-&gt;next_sibling () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;previousSibling () </td>
<td>
<div class="returns">element</div>
$e-&gt;prev_sibling () </td>
</tr>
</table>
</div>
<div><br>
Author: S.C. Chen (me578022@gmail.com)<br>
Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
Contributions by: Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
</div>
</div>
</body>
</html>
<!--$Rev$-->

View file

@ -1,91 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP Simple HTML DOM Parser: FAQ</title>
<link href="css/default.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
<div id="content">
<h2>FAQ</h2>
<ul>
<li><a href="manual.htm">Back</a></li>
<li><a href="#find">Problem with finding</a></li>
<li><a href="#hosting">Problem with hosting</a></li>
<li><a href="#proxy">Behind a proxy</a></li>
<li><a href="#memory_leak">Memory leak!</a></li>
</ul>
<div>
<a name="find"></a>
<h2>Problem with finding</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> Element not found in such case:<br>
$html-&gt;find('div[style=<span class="var">padding: 0px 2px;</span>] span[class=rf]');<br>
<br>
<span class="var">A:</span> If there is blank in selectors, quote it!  <br>
$html-&gt;find('div[style=<strong class="var">&quot;padding: 0px 2px;&quot;</strong>] span[class=rf]');</div>
<a name="hosting"></a>
<h2>Problem with hosting</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> On my local server everything works fine, but when I put it on my esternal server it doesn't work. <br>
<br>
<span class="var">A:</span> The "file_get_dom" function is a wrapper of "file_get_contents" function,  you must set "<strong>allow_url_fopen</strong>" as <strong>TRUE</strong> in "php.ini" to allow accessing files via HTTP or FTP. However, some hosting venders disabled PHP's "allow_url_fopen" flag for security issues... PHP provides excellent support for "curl" library to do the same job, Use curl to get the page, then call "str_get_dom" to create DOM object. <br>
<br>
Example: <br>
 <br>
$curl = curl_init(); <br>
curl_setopt(<span class="var">$curl, CURLOPT_URL, 'http://????????'</span>);  <br>
curl_setopt(<span class="var">$curl, CURLOPT_RETURNTRANSFER, 1</span>);  <br>
curl_setopt(<span class="var">$curl, CURLOPT_CONNECTTIMEOUT, 10</span>);  <br>
$str = curl_exec(<span class="var">$curl</span>);  <br>
curl_close($curl);  <br>
 <br>
$html= <strong>str_get_html</strong>($str); <br>
...  </div>
<a name="proxy"></a>
<div>
<h2>Behind a proxy</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> My server is behind a Proxy and i can't use file_get_contents b/c it returns a unauthorized error.<br>
<br>
<span class="var">A:</span> Thanks for Shaggy to provide the solution: <br>
 <br>
<span class="comment">// Define a context for HTTP. </span><br>
$context = array<br>
( <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'http'</span> =&gt; array<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ( <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'proxy'</span> =&gt; <span class="var">'addresseproxy:portproxy'</span>, <span class="comment">// This needs to be the server and the port of the NTLM Authentication Proxy Server. </span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="var"> 'request_fulluri'</span> =&gt; true, <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ), <br>
); <br>
<br>
$context = <strong>stream_context_create</strong>($context); <br>
 <br>
$html= <strong>file_get_html</strong>(<span class="var">'http://www.php.net'</span>, <span class="var">false</span>, <span class="var">$context</span>); <br>
...<br>
</div>
</div>
<a name="memory_leak"></a>
<h2>Memory leak!</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> This script is leaking memory seriously... After it finished running, it's not cleaning up dom object properly from memory.. <br>
<br>
<span class="var">A:</span> Due to php5 circular references memory leak, after creating DOM object, you must call $dom-&gt;clear() to free memory if call file_get_dom() more then once. <br>
<br>
Example: <br>
<br>
$html = file_get_html(...); <br>
<span class="comment">// do something... </span><br>
$html-&gt;clear(); <br>
unset($html);</div>
<br>
Author: S.C. Chen (me578022@gmail.com)<br>
Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
</div>
</div>
</body>
</html>
<!--$Rev$-->

View file

@ -1,17 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 52
/svnroot/simplehtmldom/!svn/ver/120/trunk/manual/css
END
default.css
K 25
svn:wc:ra_dav:version-url
V 64
/svnroot/simplehtmldom/!svn/ver/120/trunk/manual/css/default.css
END
ui.tabs.css
K 25
svn:wc:ra_dav:version-url
V 63
/svnroot/simplehtmldom/!svn/ver/29/trunk/manual/css/ui.tabs.css
END

View file

@ -1,96 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual/css
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-06-24T22:59:40.092528Z
120
me578022
d0e60b4b-9046-0410-940c-b97530268c78
default.css
file
2010-08-17T19:13:53.530296Z
2f01e1ff8a4fa8fe63c8be8e17800ab0
2008-06-24T22:59:40.092528Z
120
me578022
2069
ui.tabs.css
file
2010-08-17T19:13:53.531296Z
995c002d1908567d7542ec9c2adfdc65
2008-03-14T14:58:12.908404Z
29
me578022
3833

View file

@ -1,113 +0,0 @@
/*$Rev: 46 $*/
body {
margin: 0;
padding: 0;
font-family: verdana,arial,helvetica,sans-serif;
font-size: 11px;
color: #4F5155;
}
#content {
margin: 0 20px 0 20px;
line-height: 16px;
padding: 0;
}
h1 {
font-size: 18px;
margin: 0;
padding: 0 0 2px 0;
background-color: #D0D0D0;
text-align: center;
}
h2 {
background-color: #727EA3;
border-right: 1px solid #D0D0D0;
border-bottom: 1px solid #D0D0D0;
color: #FFFFFF;
font-size: 14px;
font-weight: bold;
margin: 14px 0 4px 0;
padding: 1px 10px 1px 10px;
}
ul {
margin-top: 0;
margin-bottom: 0;
line-height:1.5em;
list-style-image:url(bullet.gif);
list-style-type:square;
}
.top {
font-size: 11px;
float: right;
}
.code {
font-size: 11px;
font-family: Monaco, Verdana, Sans-serif;
line-height: 14px;
background-color: #f6f6f6;
border-bottom: 1px solid #D0D0D0;
border-top: 1px solid #A0A0A0;
border-left: 1px solid #A0A0A0;
border-right: 1px solid #D0D0D0;
color: #002166;
display: block;
margin: 2px 0 2px 0;
padding: 2px 10px 2px 10px;
}
.code A:link {color: #002166; text-decoration: none; font-weight: bold;}
.code A:visited {color: #002166; text-decoration: none; font-weight: bold;}
.code A:active {color: #002166; text-decoration: none; font-weight: bold;}
.code A:hover {color: #0000ff; text-decoration: underline; font-weight: bold;}
.code .keyword {
color: #007700;
}
.code .comment {
font-size: 10px;
color: #888;
}
.code .var {
color: #770000;
}
th {
font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
color: #000000;
background-color: #CFD4E6;
margin: 2px 2px 2px 2px;
padding: 2px 2px 2px 2px;
font-size: 13px;
font-weight: normal;
font-style: normal;
}
td {
background-color: #dddddd;
}
.description {
font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
font-size: 11px;
color: #333;
text-ident: 30px;
font-style: normal;
}
.returns {
font-family: Monaco, Verdana, Sans-serif;
font-size: 10px;
color: #888;
float: left;
text-align: right;
margin: 0 4px 0 0;
width: 48px;
}

View file

@ -1,116 +0,0 @@
/* Caution! Ensure accessibility in print and other media types... */
@media projection, screen { /* Use class for showing/hiding tab content, so that visibility can be better controlled in different media types... */
.ui-tabs-hide {
display: none;
}
}
/* Hide useless elements in print layouts... */
@media print {
.ui-tabs-nav {
display: none;
}
}
/* Skin */
.ui-tabs-nav, .ui-tabs-panel {
font-family: "Trebuchet MS", Trebuchet, Verdana, Helvetica, Arial, sans-serif;
font-size: 12px;
}
.ui-tabs-nav {
list-style: none;
margin: 0;
padding: 0 0 0 4px;
}
.ui-tabs-nav:after { /* clearing without presentational markup, IE gets extra treatment */
display: block;
clear: both;
content: " ";
}
.ui-tabs-nav li {
float: left;
margin: 0 0 0 1px;
min-width: 84px; /* be nice to Opera */
}
.ui-tabs-nav a, .ui-tabs-nav a span {
display: block;
padding: 0 10px;
background: url(../img/tab.png) no-repeat;
}
.ui-tabs-nav a {
margin: 1px 0 0; /* position: relative makes opacity fail for disabled tab in IE */
padding-left: 0;
color: #27537a;
font-weight: bold;
line-height: 1.2;
text-align: center;
text-decoration: none;
white-space: nowrap; /* required in IE 6 */
outline: 0; /* prevent dotted border in Firefox */
}
.ui-tabs-nav .ui-tabs-selected a {
position: relative;
top: 1px;
z-index: 2;
margin-top: 0;
color: #000;
}
.ui-tabs-nav a span {
width: 64px; /* IE 6 treats width as min-width */
min-width: 64px;
height: 18px; /* IE 6 treats height as min-height */
min-height: 18px;
padding-top: 6px;
padding-right: 0;
}
*>.ui-tabs-nav a span { /* hide from IE 6 */
width: auto;
height: auto;
}
.ui-tabs-nav .ui-tabs-selected a span {
padding-bottom: 1px;
}
.ui-tabs-nav .ui-tabs-selected a, .ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active {
background-position: 100% -150px;
}
.ui-tabs-nav a, .ui-tabs-nav .ui-tabs-disabled a:hover, .ui-tabs-nav .ui-tabs-disabled a:focus, .ui-tabs-nav .ui-tabs-disabled a:active {
background-position: 100% -100px;
}
.ui-tabs-nav .ui-tabs-selected a span, .ui-tabs-nav a:hover span, .ui-tabs-nav a:focus span, .ui-tabs-nav a:active span {
background-position: 0 -50px;
}
.ui-tabs-nav a span, .ui-tabs-nav .ui-tabs-disabled a:hover span, .ui-tabs-nav .ui-tabs-disabled a:focus span, .ui-tabs-nav .ui-tabs-disabled a:active span {
background-position: 0 0;
}
.ui-tabs-nav .ui-tabs-selected a:link, .ui-tabs-nav .ui-tabs-selected a:visited, .ui-tabs-nav .ui-tabs-disabled a:link, .ui-tabs-nav .ui-tabs-disabled a:visited { /* @ Opera, use pseudo classes otherwise it confuses cursor... */
cursor: text;
}
.ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active,
.ui-tabs-nav .ui-tabs-unselect a:hover, .ui-tabs-nav .ui-tabs-unselect a:focus, .ui-tabs-nav .ui-tabs-unselect a:active { /* @ Opera, we need to be explicit again here now... */
cursor: pointer;
}
.ui-tabs-disabled {
opacity: .4;
filter: alpha(opacity=40);
}
.ui-tabs-panel {
border-top: 1px solid #97a5b0;
padding: 2px 4px 2px 4px;
background: #fff; /* declare background color for container to avoid distorted fonts in IE while fading */
border: 1px solid #D0D0D0;
border-bottom: 1px solid #A0A0A0;
border-right: 1px solid #A0A0A0;
}
.ui-tabs-loading em {
padding: 0 0 0 20px;
background: url(loading.gif) no-repeat 0 50%;
}
/* Additional IE specific bug fixes... */
* html .ui-tabs-nav { /* auto clear, @ IE 6 & IE 7 Quirks Mode */
display: inline-block;
}
*:first-child+html .ui-tabs-nav { /* @ IE 7 Standards Mode - do not group selectors, otherwise IE 6 will ignore complete rule (because of the unknown + combinator)... */
display: inline-block;
}

View file

@ -1,113 +0,0 @@
/*$Rev: 46 $*/
body {
margin: 0;
padding: 0;
font-family: verdana,arial,helvetica,sans-serif;
font-size: 11px;
color: #4F5155;
}
#content {
margin: 0 20px 0 20px;
line-height: 16px;
padding: 0;
}
h1 {
font-size: 18px;
margin: 0;
padding: 0 0 2px 0;
background-color: #D0D0D0;
text-align: center;
}
h2 {
background-color: #727EA3;
border-right: 1px solid #D0D0D0;
border-bottom: 1px solid #D0D0D0;
color: #FFFFFF;
font-size: 14px;
font-weight: bold;
margin: 14px 0 4px 0;
padding: 1px 10px 1px 10px;
}
ul {
margin-top: 0;
margin-bottom: 0;
line-height:1.5em;
list-style-image:url(bullet.gif);
list-style-type:square;
}
.top {
font-size: 11px;
float: right;
}
.code {
font-size: 11px;
font-family: Monaco, Verdana, Sans-serif;
line-height: 14px;
background-color: #f6f6f6;
border-bottom: 1px solid #D0D0D0;
border-top: 1px solid #A0A0A0;
border-left: 1px solid #A0A0A0;
border-right: 1px solid #D0D0D0;
color: #002166;
display: block;
margin: 2px 0 2px 0;
padding: 2px 10px 2px 10px;
}
.code A:link {color: #002166; text-decoration: none; font-weight: bold;}
.code A:visited {color: #002166; text-decoration: none; font-weight: bold;}
.code A:active {color: #002166; text-decoration: none; font-weight: bold;}
.code A:hover {color: #0000ff; text-decoration: underline; font-weight: bold;}
.code .keyword {
color: #007700;
}
.code .comment {
font-size: 10px;
color: #888;
}
.code .var {
color: #770000;
}
th {
font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
color: #000000;
background-color: #CFD4E6;
margin: 2px 2px 2px 2px;
padding: 2px 2px 2px 2px;
font-size: 13px;
font-weight: normal;
font-style: normal;
}
td {
background-color: #dddddd;
}
.description {
font-family: Lucida Grande, Verdana, Geneva, Sans-serif;
font-size: 11px;
color: #333;
text-ident: 30px;
font-style: normal;
}
.returns {
font-family: Monaco, Verdana, Sans-serif;
font-size: 10px;
color: #888;
float: left;
text-align: right;
margin: 0 4px 0 0;
width: 48px;
}

View file

@ -1,116 +0,0 @@
/* Caution! Ensure accessibility in print and other media types... */
@media projection, screen { /* Use class for showing/hiding tab content, so that visibility can be better controlled in different media types... */
.ui-tabs-hide {
display: none;
}
}
/* Hide useless elements in print layouts... */
@media print {
.ui-tabs-nav {
display: none;
}
}
/* Skin */
.ui-tabs-nav, .ui-tabs-panel {
font-family: "Trebuchet MS", Trebuchet, Verdana, Helvetica, Arial, sans-serif;
font-size: 12px;
}
.ui-tabs-nav {
list-style: none;
margin: 0;
padding: 0 0 0 4px;
}
.ui-tabs-nav:after { /* clearing without presentational markup, IE gets extra treatment */
display: block;
clear: both;
content: " ";
}
.ui-tabs-nav li {
float: left;
margin: 0 0 0 1px;
min-width: 84px; /* be nice to Opera */
}
.ui-tabs-nav a, .ui-tabs-nav a span {
display: block;
padding: 0 10px;
background: url(../img/tab.png) no-repeat;
}
.ui-tabs-nav a {
margin: 1px 0 0; /* position: relative makes opacity fail for disabled tab in IE */
padding-left: 0;
color: #27537a;
font-weight: bold;
line-height: 1.2;
text-align: center;
text-decoration: none;
white-space: nowrap; /* required in IE 6 */
outline: 0; /* prevent dotted border in Firefox */
}
.ui-tabs-nav .ui-tabs-selected a {
position: relative;
top: 1px;
z-index: 2;
margin-top: 0;
color: #000;
}
.ui-tabs-nav a span {
width: 64px; /* IE 6 treats width as min-width */
min-width: 64px;
height: 18px; /* IE 6 treats height as min-height */
min-height: 18px;
padding-top: 6px;
padding-right: 0;
}
*>.ui-tabs-nav a span { /* hide from IE 6 */
width: auto;
height: auto;
}
.ui-tabs-nav .ui-tabs-selected a span {
padding-bottom: 1px;
}
.ui-tabs-nav .ui-tabs-selected a, .ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active {
background-position: 100% -150px;
}
.ui-tabs-nav a, .ui-tabs-nav .ui-tabs-disabled a:hover, .ui-tabs-nav .ui-tabs-disabled a:focus, .ui-tabs-nav .ui-tabs-disabled a:active {
background-position: 100% -100px;
}
.ui-tabs-nav .ui-tabs-selected a span, .ui-tabs-nav a:hover span, .ui-tabs-nav a:focus span, .ui-tabs-nav a:active span {
background-position: 0 -50px;
}
.ui-tabs-nav a span, .ui-tabs-nav .ui-tabs-disabled a:hover span, .ui-tabs-nav .ui-tabs-disabled a:focus span, .ui-tabs-nav .ui-tabs-disabled a:active span {
background-position: 0 0;
}
.ui-tabs-nav .ui-tabs-selected a:link, .ui-tabs-nav .ui-tabs-selected a:visited, .ui-tabs-nav .ui-tabs-disabled a:link, .ui-tabs-nav .ui-tabs-disabled a:visited { /* @ Opera, use pseudo classes otherwise it confuses cursor... */
cursor: text;
}
.ui-tabs-nav a:hover, .ui-tabs-nav a:focus, .ui-tabs-nav a:active,
.ui-tabs-nav .ui-tabs-unselect a:hover, .ui-tabs-nav .ui-tabs-unselect a:focus, .ui-tabs-nav .ui-tabs-unselect a:active { /* @ Opera, we need to be explicit again here now... */
cursor: pointer;
}
.ui-tabs-disabled {
opacity: .4;
filter: alpha(opacity=40);
}
.ui-tabs-panel {
border-top: 1px solid #97a5b0;
padding: 2px 4px 2px 4px;
background: #fff; /* declare background color for container to avoid distorted fonts in IE while fading */
border: 1px solid #D0D0D0;
border-bottom: 1px solid #A0A0A0;
border-right: 1px solid #A0A0A0;
}
.ui-tabs-loading em {
padding: 0 0 0 20px;
background: url(loading.gif) no-repeat 0 50%;
}
/* Additional IE specific bug fixes... */
* html .ui-tabs-nav { /* auto clear, @ IE 6 & IE 7 Quirks Mode */
display: inline-block;
}
*:first-child+html .ui-tabs-nav { /* @ IE 7 Standards Mode - do not group selectors, otherwise IE 6 will ignore complete rule (because of the unknown + combinator)... */
display: inline-block;
}

View file

@ -1,11 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 51
/svnroot/simplehtmldom/!svn/ver/29/trunk/manual/img
END
tab.png
K 25
svn:wc:ra_dav:version-url
V 59
/svnroot/simplehtmldom/!svn/ver/29/trunk/manual/img/tab.png
END

View file

@ -1,62 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual/img
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-03-14T14:58:12.908404Z
29
me578022
d0e60b4b-9046-0410-940c-b97530268c78
tab.png
file
2010-08-17T19:13:53.595300Z
83a79d462146a7d0d1ea4dd969101885
2008-03-14T14:58:12.908404Z
29
me578022
has-props
734

View file

@ -1,5 +0,0 @@
K 13
svn:mime-type
V 24
application/octet-stream
END

Binary file not shown.

Before

Width:  |  Height:  |  Size: 734 B

View file

@ -1,17 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 50
/svnroot/simplehtmldom/!svn/ver/29/trunk/manual/js
END
jquery-1.2.3.pack.js
K 25
svn:wc:ra_dav:version-url
V 71
/svnroot/simplehtmldom/!svn/ver/29/trunk/manual/js/jquery-1.2.3.pack.js
END
ui.tabs.pack.js
K 25
svn:wc:ra_dav:version-url
V 66
/svnroot/simplehtmldom/!svn/ver/29/trunk/manual/js/ui.tabs.pack.js
END

View file

@ -1,96 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/manual/js
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2008-03-14T14:58:12.908404Z
29
me578022
d0e60b4b-9046-0410-940c-b97530268c78
jquery-1.2.3.pack.js
file
2010-08-17T19:13:53.654303Z
fb49bb7a70d7be19cc6a145146ca7d44
2008-03-14T14:58:12.908404Z
29
me578022
29846
ui.tabs.pack.js
file
2010-08-17T19:13:53.655303Z
14b07b37095bc686e405e7d043fee344
2008-03-14T14:58:12.908404Z
29
me578022
6417

File diff suppressed because one or more lines are too long

View file

@ -1,448 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP Simple HTML DOM Parser: Manual</title>
<link href="css/default.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="css/ui.tabs.css" type="text/css" media="print, projection, screen">
<script type="text/javascript" src="js/jquery-1.2.3.pack.js"></script>
<script type="text/javascript" src="js/ui.tabs.pack.js"></script>
<script language="JavaScript" type="text/JavaScript">
$(document).ready(function(){
$(function() {$('#container_quickstart > ul').tabs();});
$(function() {$('#container_create > ul').tabs();});
$(function() {$('#container_find > ul').tabs();});
$(function() {$('#container_access > ul').tabs();});
$(function() {$('#container_traverse > ul').tabs();});
$(function() {$('#container_dump > ul').tabs();});
$(function() {$('#container_callback > ul').tabs();});
});
</script>
</head>
<body>
<h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
<div id="content">
<h2>Index</h2>
<ul>
<li><a href="#section_quickstart">Quick Start</a></li>
<li><a href="#section_create">How to create HTML DOM object?</a></li>
<li><a href="#section_find">How to find HTML elements?</a></li>
<li><a href="#section_access">How to access the HTML element's attributes?</a> </li>
<li><a href="#section_traverse">How to traverse the DOM tree?</a></li>
<li><a href="#section_dump">How to dump contents of DOM object?</a></li>
<li><a href="#section_callback">How to customize the parsing behavior?</a></li>
<li><a href="manual_api.htm">API Reference</a></li>
<li><a href="manual_faq.htm">FAQ</a></li>
</ul>
<a name="section_quickstart"></a>
<h2>Quick Start</h2>
<a class="top" href="#top">Top</a>
<div id="container_quickstart">
<ul>
<li><a href="#fragment-11"><span>Get HTML elements</span></a></li>
<li><a href="#fragment-12"><span>Modify HTML elements</span></a></li>
<li><a href="#fragment-13"><span>Extract contents from HTML</span></a></li>
<li><a href="#fragment-14"><span>Scraping Slashdot!</span></a></li>
</ul>
<div id="fragment-11">
<div class="code">
<span class="comment">// Create DOM from URL or file</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'http://www.google.com/'</span>);<br>
<br>
<span class="comment">// Find all images </span><br>
foreach($html-&gt;<strong>find</strong>(<span class="var">'img'</span>) as $element) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo $element-&gt;<strong>src</strong> . <span class="var">'&lt;br&gt;'</span>;<br>
<br>
<span class="comment">// Find all links </span><br>
foreach($html-&gt;<strong>find</strong>(<span class="var">'a'</span>) as $element) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo $element-&gt;<strong>href</strong> . <span class="var">'&lt;br&gt;'</span>; </div>
</div>
<div id="fragment-12">
<div class="code">
<span class="comment">// Create DOM from string</span><br>
$html = <strong>str_get_html</strong>(<span class="var">'&lt;div id=&quot;hello&quot;&gt;Hello&lt;/div&gt;&lt;div id=&quot;world&quot;&gt;World&lt;/div&gt;'</span>);<span class="comment"><br>
<br>
</span>
$html-&gt;<strong>find</strong>(<span class="var">'div', 1</span>)-&gt;<strong>class</strong> = <span class="var">'bar'</span>;<br>
<br>
$html-&gt;<strong>find</strong>(<span class="var">'div[id=hello]', 0</span>)-&gt;<strong>innertext</strong> = <span class="var">'foo'</span>;<br>
<br>
echo $html; <span class="comment">// Output: &lt;div id=&quot;hello&quot;&gt;<strong>foo</strong>&lt;/div&gt;&lt;div id=&quot;world&quot; <strong>class=&quot;bar&quot;</strong>&gt;World&lt;/div&gt;</span> </div>
</div>
<div id="fragment-13">
<div class="code"><br>
<span class="comment">// Dump contents (without tags) from HTML</span><br>
echo <strong>file_get_html</strong>(<span class="var">'http://www.google.com/'</span>)-&gt;<strong>plaintext</strong>;
<br>
<br>
</div>
</div>
<div id="fragment-14">
<div class="code">
<span class="comment">// Create DOM from URL</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'http://slashdot.org/'</span>);<br>
<br>
<span class="comment">// Find all article blocks</span><br>
foreach($html-&gt;<strong>find</strong>(<span class="var">'div.article'</span>) as $article) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;$item[<span class="var">'title'</span>]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= $article-&gt;<strong>find</strong>(<span class="var">'div.title'</span>, <span class="var">0</span>)-&gt;<strong>plaintext</strong>;<br>
&nbsp;&nbsp;&nbsp;&nbsp;$item[<span class="var">'intro'</span>]&nbsp;&nbsp;&nbsp;&nbsp;= $article-&gt;<strong>find</strong>(<span class="var">'div.intro'</span>, <span class="var">0</span>)-&gt;<strong>plaintext</strong>;<br>
&nbsp;&nbsp;&nbsp;&nbsp;$item[<span class="var">'details'</span>]&nbsp;= $article-&gt;<strong>find</strong>(<span class="var">'div.details'</span>, <span class="var">0</span>)-&gt;<strong>plaintext</strong>;<br>
&nbsp;&nbsp;&nbsp;&nbsp;$articles[] = $item;<br>
}<br>
<br>
print_r($articles);
</div>
</div>
</div>
<a name="section_create"></a>
<h2>How to create HTML DOM object?</h2>
<a class="top" href="#top">Top</a>
<div id="container_create">
<ul>
<li><a href="#frag_create_quick"><span>Quick way</span></a></li>
<li><a href="#frag_create_oo"><span>Object-oriented way</span></a></li>
</ul>
<div id="frag_create_quick">
<div class="code"><span class="comment">// Create a DOM object from a string</span><br>
$html = <strong>str_get_html</strong>(<span class="var">'&lt;html&gt;&lt;body&gt;Hello!&lt;/body&gt;&lt;/html&gt;'</span>);<br>
<br>
<span class="comment">// Create a DOM object from a URL</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'http://www.google.com/'</span>);<br>
<br>
<span class="comment">// Create a DOM object from a HTML file</span><br>
$html = <strong>file_get_html</strong>(<span class="var">'test.htm'</span>);<span class="comment"><br>
</span></div>
</div>
<div id="frag_create_oo">
<div class="code"><span class="comment">// Create a DOM object</span><br>
$html = new <strong>simple_html_dom</strong>();<br>
<br>
<span class="comment">// Load HTML from a string</span><br>
$html-&gt;<strong>load</strong>(<span class="var">'&lt;html&gt;&lt;body&gt;Hello!&lt;/body&gt;&lt;/html&gt;'</span>);<br>
<br>
<span class="comment">// Load HTML from a URL </span> <br>
$html-&gt;<strong>load_file</strong>(<span class="var">'http://www.google.com/'</span>);<br>
<br>
<span class="comment">// Load HTML from a HTML file</span> <br>
$html-&gt;<strong>load_file</strong>(<span class="var">'test.htm'</span>);</div>
</div>
</div>
<a name="section_find"></a>
<h2>How to find HTML elements?</h2>
<a class="top" href="#top">Top</a>
<div id="container_find">
<ul>
<li><a href="#frag_find_basic"><span>Basics</span></a></li>
<li><a href="#frag_find_advanced"><span>Advanced</span></a></li>
<li><a href="#frag_find_chain"><span>Descendant selectors</span></a></li>
<li><a href="#frag_find_nested"><span>Nested selectors</span></a></li>
<li><a href="#frag_find_attr"><span>Attribute Filters</span></a></li>
<li><a href="#frag_find_textcomment"><span>Text &amp; Comments</span></a></li>
</ul>
<div id="frag_find_basic">
<div class="code"> <span class="comment">// Find all <strong>anchors</strong>, returns a <strong>array</strong> of element objects</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a</strong>'</span>);<br>
<br>
<span class="comment">// Find <strong>(N)th</strong> <strong>anchor</strong>, returns element object or <strong>null</strong> if not found</span> <span class="comment">(zero based)</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a</strong>', <strong>0</strong></span>);<br>
<br>
<span class="comment">// Find <strong>lastest</strong> <strong>anchor</strong>, returns element object or <strong>null</strong> if not found</span> <span class="comment">(zero based)</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a</strong>', <strong>-1</strong></span>); <br>
<br>
<span class="comment">// Find all <strong>&lt;div&gt;</strong> with the <strong>id</strong> attribute</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>div[id]</strong>'</span>);<br>
<br>
<span class="comment">// Find all <strong>&lt;div&gt;</strong> which attribute <strong>id=foo</strong></span><br>
$ret = $html-&gt;find(<span class="var">'<strong>div[id=foo]</strong>'</span>); <br>
</div>
</div>
<div id="frag_find_advanced">
<div class="code"><span class="comment">// Find all element which <strong>id</strong>=foo</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>#foo</strong>'</span>);<br>
<br>
<span class=comment>// Find all element which <strong>class</strong>=foo</span><br>
$ret = $html-&gt;find(<span class=var>'<strong>.foo</strong>'</span>);<br>
<br>
<span class="comment">// Find all element has attribute<strong> id</strong></span><br>
$ret = $html-&gt;find(<span class="var">'<strong>*[id]</strong>'</span>); <br>
<br>
<span class="comment">// Find all <strong>anchors</strong> and <strong>images</strong> </span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a, img</strong>'</span>); <br>
<br>
<span class="comment">// Find all <strong>anchors</strong> and <strong>images</strong> with the "title" attribute</span><br>
$ret = $html-&gt;find(<span class="var">'<strong>a[title], img[title]</strong>'</span>);<br>
</div>
</div>
<div id="frag_find_attr">
<div class="code">
Supports these operators in attribute selectors:<br><br>
<table cellpadding="1" cellspacing="1">
<tr>
<th width="25%">Filter</th>
<th width="75%">Description</th>
</tr>
<tr>
<td>[attribute]</td>
<td>Matches elements that <strong>have</strong> the specified attribute.</td>
</tr>
<tr>
<td>[!attribute]</td>
<td>Matches elements that <strong>don't have</strong> the specified attribute.</td>
</tr>
<tr>
<td>[attribute=value]</td>
<td>Matches elements that have the specified attribute with a <strong>certain value</strong>.</td>
</tr>
<tr>
<td>[attribute!=value]</td>
<td>Matches elements that <strong>don't have</strong> the specified attribute with a certain value.</td>
</tr>
<tr>
<td>[attribute^=value]</td>
<td>Matches elements that have the specified attribute and it <strong>starts</strong> with a certain value.</td>
</tr>
<tr>
<td>[attribute$=value]</td>
<td>Matches elements that have the specified attribute and it <strong>ends</strong> with a certain value.</td>
</tr>
<tr>
<td>[attribute*=value]</td>
<td>Matches elements that have the specified attribute and it <strong>contains</strong> a certain value.</td>
</tr>
</table>
</div>
</div>
<div id="frag_find_chain">
<div class="code"><span class="comment">// Find all &lt;li&gt; in &lt;ul&gt; </span><br>
$es = $html-&gt;find(<span class="var">'<strong>ul li</strong>'</span>);<br>
<br>
<span class="comment">// Find Nested &lt;div&gt; </span><span class="comment">tags</span><br>
$es = $html-&gt;find(<span class="var">'<strong>div div div</strong>'</span>); <br>
<br>
<span class="comment">// Find all &lt;td&gt; in &lt;table&gt; which class=hello </span><br>
$es = $html-&gt;find(<span class="var">'<strong>table.hello td</strong>'</span>);<br>
<br>
<span class="comment">// Find all td tags with attribite align=center in table tags </span><br>
$es = $html-&gt;find(<span class="var">''<strong>table</strong><strong> td[align=center]</strong>'</span>);<br>
</div>
</div>
<div id="frag_find_textcomment">
<div class="code"><span class="comment"> // Find all text blocks </span><br>
$es = $html-&gt;find(<span class="var">'<strong>text</strong>'</span>);<br>
<br>
<span class="comment">// Find all comment (&lt;!--...--&gt;) blocks </span><br>
$es = $html-&gt;find(<span class="var">'<strong>comment</strong>'</span>);<br>
</div>
</div>
<div id="frag_find_nested">
<div class="code"> <span class="comment">// Find all &lt;li&gt; in &lt;ul&gt; </span><br>
foreach($html-&gt;find(<span class="var">'<strong>ul</strong>'</span>) as $ul) <br>
{<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach($ul-&gt;find(<span class="var">'<strong>li</strong>'</span>) as $li) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="comment">// do something...</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>
}<br>
<br>
<span class="comment">// Find first &lt;li&gt; in first &lt;ul&gt;</span> <br>
$e = $html-&gt;find(<span class="var">'<strong>ul</strong>', <strong>0</strong></span>)-&gt;find(<span class="var">'<strong>li</strong>', <strong>0</strong></span>);<br>
</div>
</div>
</div>
<a name="section_access"></a>
<h2>How to access the HTML element's attributes?</h2>
<a class="top" href="#top">Top</a>
<div id="container_access">
<ul>
<li><a href="#frag_access_attr"><span>Get, Set and Remove attributes</span></a></li>
<li><a href="#frag_access_special"><span>Magic attributes</span></a></li>
<li><a href="#frag_access_tips"><span>Tips</span></a></li>
</ul>
<div id="frag_access_attr">
<div class="code">
<span class="comment">// <strong>Get</strong> a attribute ( If the attribute is <strong>non-value</strong> attribute (eg. checked, selected...), it will returns <strong>true</strong> or <strong>false</strong>)</span><br>
$value = $e-&gt;<strong>href</strong>;<br>
<br>
<span class="comment">// <strong>Set</strong> a attribute(If the attribute is <strong>non-value</strong> attribute (eg. checked, selected...), set it's value as <strong>true</strong> or <strong>false</strong>)</span><br>
$e-&gt;<strong>href</strong> = <span class="var">'my link'</span>;<br>
<br>
<span class="comment">// <strong>Remove</strong> a attribute, set it's value as null! </span><br>
$e-&gt;<strong>href</strong> = <strong><span class="var">null</span></strong>;<br>
<br>
<span class="comment">// <strong>Determine</strong> whether a attribute exist?</span> <br>
if(isset($e-&gt;<strong>href</strong>)) <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo <span class="var">'href exist!'</span>;<br>
</div>
</div>
<div id="frag_access_special">
<div class="code"> <span class="comment">// Example</span><br>
<span class="hl-var">$</span><span class="hl-code">html = </span>str_get_html<span class="hl-brackets">(</span><span class="var">&quot;&lt;div&gt;foo &lt;b&gt;bar&lt;/b&gt;&lt;/div&gt;&quot;</span><span class="hl-brackets">)</span><span class="hl-code">;</span> <br>
$e = $html-&gt;find(<span class="var">&quot;div&quot;</span>, <span class="var">0</span>);<br>
<br>
echo $e-&gt;<strong>tag</strong>; <span class="comment">// Returns: &quot; <strong>div</strong>&quot;</span><br>
echo $e-&gt;<strong>outertext</strong>; <span class="comment">// Returns: &quot; <strong>&lt;div&gt;foo &lt;b&gt;bar&lt;/b&gt;&lt;/div&gt;</strong>&quot;</span><br>
echo $e-&gt;<strong>innertext</strong>; <span class="comment">// Returns: &quot; <strong>foo &lt;b&gt;bar&lt;/b&gt;</strong>&quot;</span><br>
echo $e-&gt;<strong>plaintext</strong>; <span class="comment">// Returns: &quot; <strong>foo </strong><strong>bar</strong>&quot;<br>
<br>
</span>
<table cellspacing="1" cellpadding="1">
<tr bgcolor="#CCCCCC">
<th width="25%">Attribute Name</th>
<th width="75%">Usage</th>
</tr>
<tr>
<td>$e-&gt;<strong>tag</strong></td>
<td>Read or write the <strong>tag name</strong> of element.</td>
</tr>
<tr>
<td>$e-&gt;<strong>outertext</strong></td>
<td>Read or write the <strong>outer HTML text </strong> of element.</td>
</tr>
<tr>
<td>$e-&gt;<strong>innertext</strong></td>
<td>Read or write the <strong>inner HTML text </strong> of element.</td>
</tr>
<tr>
<td>$e-&gt;<strong>plaintext</strong></td>
<td>Read or write the <strong>plain text </strong> of element.</td>
</tr>
</table>
</div>
</div>
<div id="frag_access_tips">
<div class="code"><span class="comment">// <strong>Extract</strong> contents from HTML </span><br>
echo <strong>$html</strong>-&gt;<strong>plaintext</strong>;<br>
<br>
<span class="comment">
// <strong>Wrap</strong> a element</span><br>
$e-&gt;<strong>outertext</strong> = <span class="var">'&lt;div class=&quot;wrap&quot;&gt;'</span> . $e-&gt;<strong>outertext</strong> . <span class="var">'&lt;div&gt;</span>';<br>
<br>
<span class="comment">// <strong>Remove</strong> a element, set it's outertext as an empty string </span><br>
$e-&gt;<strong>outertext</strong> = <span class="var">''</span>;<br>
<br>
<span class="comment">// <strong>Append</strong> a element</span><br>
$e-&gt;<strong>outertext</strong> = $e-&gt;<strong>outertext</strong> . <span class="var">'&lt;div&gt;foo</span><span class="var">&lt;div&gt;</span>';<br>
<br>
<span class="comment">// <strong>Insert</strong> a element</span><br>
$e-&gt;<strong>outertext</strong> = <span class="var">'&lt;div&gt;foo</span><span class="var">&lt;div&gt;</span>' . $e-&gt;<strong>outertext</strong>;<br>
</div>
</div>
</div>
<a name="section_traverse"></a>
<h2>How to traverse the DOM tree?</h2>
<a class="top" href="#top">Top</a>
<div id="container_traverse">
<ul>
<li><a href="#frag_traverse_background"><span>Background Knowledge</span></a></li>
<li><a href="#frag_traverse_traverse"><span>Traverse the DOM tree</span></a></li>
</ul>
<div id="frag_traverse_background">
<div class="code"> <span class="comment">// If you are not so familiar with HTML DOM, check this <a href="http://php.net/manual/en/book.dom.php" target="_blank"><span class="var">link</span></a> to learn more... </span><br>
<br>
<span class="comment">// Example</span><br>
echo $html-&gt;<strong>find</strong>(<span class="var">&quot;#div1&quot;, 0</span>)-&gt;<strong>children</strong>(<span class="var">1</span>)-&gt;<strong>children</strong>(<span class="var">1</span>)-&gt;<strong>children</strong>(<span class="var">2</span>)-&gt;<span class="var">id</span>;<br>
<span class="comment">// or</span> <br>
echo $html-&gt;<strong>getElementById</strong>(<span class="var">&quot;div1&quot;</span>)-&gt;<strong>childNodes</strong>(<span class="var">1</span>)-&gt;<strong>childNodes</strong>(<span class="var">1</span>)-&gt;<strong>childNodes</strong>(<span class="var">2</span>)-&gt;<strong>getAttribute</strong>(<span class="var">'id'</span>); </div>
</div>
<div id="frag_traverse_traverse">
<div class="code">You can also call methods with <a href="manual_api.htm#camel"><span class="var">Camel naming convertions</span></a>.<br>
<table cellspacing="1" cellpadding="1">
<tr>
<th> Method </th>
<th> Description</th>
</tr>
<tr>
<td>
<div class="returns">mixed</div>$e-&gt;<strong>children</strong> ( <span class="var">[int $index]</span> ) </td>
<td>Returns the Nth <strong>child object</strong> if <strong>index</strong> is set, otherwise return an <strong>array of children</strong>. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>parent</strong> () </td>
<td>Returns the <strong>parent</strong> of element. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>first_child</strong> () </td>
<td>Returns the <strong>first child</strong> of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>last_child</strong> () </td>
<td>Returns the <strong>last child</strong> of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>next_sibling</strong> () </td>
<td>Returns the <strong>next sibling</strong> of element, or<strong> null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>$e-&gt;<strong>prev_sibling</strong> () </td>
<td>Returns the <strong>previous sibling</strong> of element, or <strong>null</strong> if not found. </td>
</tr>
</table>
</div>
</div>
</div>
<a name="section_dump"></a>
<h2>How to dump contents of DOM object?</h2>
<a class="top" href="#top">Top</a>
<div id="container_dump">
<ul>
<li><a href="#frag_dump_quick"><span>Quick way</span></a></li>
<li><a href="#frag_dump_oo"><span>Object-oriented way</span></a></li>
</ul>
<div id="frag_dump_oo">
<div class="code"><span class="comment">// </span><span class="comment">Dumps the internal DOM tree back into string </span><br>
$str = $html-&gt;<strong>save</strong>();<br>
<br>
<span class="comment">// Dumps the internal DOM tree back into a file</span> <br>
$html-&gt;<strong>save</strong>(<span class="var">'result.htm'</span>);</div>
</div>
<div id="frag_dump_quick">
<div class="code"><span class="comment">// </span><span class="comment">Dumps the internal DOM tree back into string </span><br>
$str = $html;<br>
<br>
<span class="comment">// Print it!</span><br>
echo $html; <br>
</div>
</div>
</div>
<a name="section_callback"></a>
<h2>How to customize the parsing behavior?</h2>
<a class="top" href="#top">Top</a>
<div id="container_callback">
<ul>
<li><a href="#frag_callback"><span>Callback function</span></a></li>
</ul>
<div id="frag_callback">
<div class="code"><span class="comment">// Write a function with parameter &quot;<strong>$element</strong>&quot;</span><br>
function my_callback(<span class="var">$element</span>) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">// Hide all &lt;b&gt; tags </span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($element-&gt;tag==<span class="var">'b'</span>)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$element-&gt;outertext = '';<br>
} <br>
<br>
<span class="comment">// Register the callback function with it's <strong>function name</strong></span><br>
$html-&gt;<strong>set_callback</strong>(<span class="var">'my_callback'</span>);<br>
<br>
<span class="comment">// Callback function will be invoked while dumping</span><br>
echo $html;
</div>
</div>
</div>
<div><br>
Author: S.C. Chen (me578022@gmail.com)<br>
Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
Contributions by: Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
</div>
</div>
</body>
</html>
<!--$Rev: 165 $-->

View file

@ -1,320 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP Simple HTML DOM Parser: API Reference</title>
<link href="css/default.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
<div id="content">
<h2>Index</h2>
<ul>
<li><a href="manual.htm">Back</a></li>
<li><a href="#api">API Reference</a></li>
<li><a href="#camel">Camel naming conventions</a></li>
</ul>
<a name="api"></a>
<h2>API Reference</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <strong>Helper</strong> functions
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320">Name</th>
<th>Description</th>
</tr>
<tr>
<td><span class="returns">object</span> str_get_html ( <span class="var">string $content</span> )</td>
<td class="description">Creates a DOM object from a string.</td>
</tr>
<tr>
<td><span class="returns">object</span> file_get_html ( <span class="var">string $filename</span> )</td>
<td class="description">Creates a DOM object from a file or a URL.</td>
</tr>
</table>
<br>
<strong>DOM</strong> methods &amp; properties <br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320"> Name</th>
<th> Description</th>
</tr>
<tr>
<td>
<div class="returns">void</div>
__construct ( <span class="var">[string $filename]</span> )</td>
<td class="description">Constructor, set the filename parameter will automatically load the contents, either text or file/url.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
plaintext</td>
<td class="description">Returns the contents extracted from HTML.</td>
</tr>
<tr>
<td>
<div class="returns">void</div>
clear ()</td>
<td class="description">Clean up memory.</td>
</tr>
<tr>
<td>
<div class="returns">void</div>
load ( <span class="var">string $content </span>)</td>
<td class="description"> Load contents from a <strong>string</strong>. </td>
</tr>
<tr>
<td>
<div class="returns">string</div>
save ( <span class="var">[string $filename]</span> )</td>
<td class="description">Dumps the internal DOM tree back into a <strong>string</strong>. If the $filename is set, result string will save to file. </td>
</tr>
<tr>
<td>
<div class="returns">void</div>
load_file (<span class="var"> string $filename</span> )</td>
<td class="description"> Load contents from a from a file or a URL.</td>
</tr>
<tr>
<td>
<div class="returns">void</div>
set_callback ( <span class="var">string $function_name </span>)</td>
<td class="description">Set a callback function. </td>
</tr>
<tr>
<td>
<div class="returns">mixed</div>
find (<span class="var"> string $selector [, int $index] </span>)</td>
<td class="description">Find elements by the CSS selector. Returns the Nth element <strong>object</strong> if <strong>index</strong> is set, otherwise return an <strong>array</strong> of object. </td>
</tr>
</table>
<br>
<strong>Element</strong> methods &amp; properties <br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320">Name</th>
<th>Description</th>
</tr>
<tr>
<td>
<div class="returns">string</div>
<span class="var">[attribute]</span></td>
<td class="description">Read or write element's attribure value. </td>
</tr>
<tr>
<td>
<div class="returns">string</div>
tag</td>
<td class="description">Read or write the tag name of element.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
outertext</td>
<td class="description">Read or write the outer HTML text of element.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
innertext</td>
<td class="description">Read or write the inner HTML text of element.</td>
</tr>
<tr>
<td>
<div class="returns">string</div>
plaintext</td>
<td class="description">Read or write the plain text of element.</td>
</tr>
<tr>
<td>
<div class="returns">mixed</div>
find (<span class="var"> string $selector [, int $index] </span>)</td>
<td class="description">Find children by the CSS selector. Returns the Nth element <strong>object</strong> if <strong>index</strong> is set, otherwise, return an <strong>array</strong> of object. </td>
</tr>
</table>
<strong><br>
DOM</strong> traversing<br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="320">Name</th>
<th>Description</th>
</tr>
<tr>
<td>
<div class="returns">mixed</div>
$e-&gt;children ( <span class="var">[int $index]</span> ) </td>
<td class="description">Returns the Nth child <strong>object</strong> if <strong>index</strong> is set, otherwise return an <strong>array</strong> of children. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;parent () </td>
<td class="description">Returns the parent of element. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;first_child () </td>
<td class="description">Returns the first child of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;last_child () </td>
<td class="description">Returns the last child of element, or <strong>null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;next_sibling () </td>
<td class="description">Returns the next sibling of element, or<strong> null</strong> if not found. </td>
</tr>
<tr>
<td>
<div class="returns">element</div>
$e-&gt;prev_sibling () </td>
<td class="description">Returns the previous sibling of element, or <strong>null</strong> if not found. </td>
</tr>
</table>
</div>
<a name="camel"></a>
<h2>Camel naming convertions</h2>
<a class="top" href="#top">Top</a>
<div class="code">You can also call methods with W3C STANDARD camel naming convertions.<br>
<br>
<table width="100%" cellpadding="1" cellspacing="1">
<tr>
<th width="50%">Method</th>
<th>Mapping</th>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">array</div>
$e-&gt;getAllAttributes () </td>
<td>
<div class="returns">array</div>
$e-&gt;<span class="var">attr</span></td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">string</div>
$e-&gt;getAttribute ( <span class="var">$name</span> ) </td>
<td>
<div class="returns">string</div>
$e-&gt;<span class="var">attribute</span></td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">void</div>
$e-&gt;setAttribute ( <span class="var">$name, $value</span> ) </td>
<td>
<div class="returns">void</div>
$value = $e-&gt;<span class="var">attribute</span></td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">bool</div>
$e-&gt;hasAttribute ( <span class="var">$name</span> ) </td>
<td>
<div class="returns">bool</div>
isset($e-&gt;<span class="var">attribute</span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">void</div>
$e-&gt;removeAttribute ( <span class="var">$name</span> ) </td>
<td>
<div class="returns">void</div>
$e-&gt;<span class="var">attribute</span> = null</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;getElementById ( <span class="var">$id</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> &quot;#$id&quot;, 0 </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">mixed</div>
$e-&gt;getElementsById ( <span class="var">$id [,$index] </span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> &quot;#$id&quot; [, int $index] </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;getElementByTagName (<span class="var">$name</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> $name, 0 </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">mixed</div>
$e-&gt;getElementsByTagName ( <span class="var">$name [, $index]</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;find (<span class="var"> $name [, int $index] </span>)</td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;parentNode () </td>
<td>
<div class="returns">element</div>
$e-&gt;parent () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">mixed</div>
$e-&gt;childNodes ( <span class="var">[$index]</span> ) </td>
<td>
<div class="returns">mixed</div>
$e-&gt;children ( <span class="var">[int $index]</span> ) </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;firstChild () </td>
<td>
<div class="returns">element</div>
$e-&gt;first_child () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;lastChild () </td>
<td>
<div class="returns">element</div>
$e-&gt;last_child () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;nextSibling () </td>
<td>
<div class="returns">element</div>
$e-&gt;next_sibling () </td>
</tr>
<tr bgcolor="#EEEEEE">
<td>
<div class="returns">element</div>
$e-&gt;previousSibling () </td>
<td>
<div class="returns">element</div>
$e-&gt;prev_sibling () </td>
</tr>
</table>
</div>
<div><br>
Author: S.C. Chen (me578022@gmail.com)<br>
Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
Contributions by: Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
</div>
</div>
</body>
</html>
<!--$Rev: 165 $-->

View file

@ -1,91 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP Simple HTML DOM Parser: FAQ</title>
<link href="css/default.css" rel="stylesheet" type="text/css">
</head>
<body>
<h1><a name="top"></a>PHP Simple HTML DOM Parser Manual</h1>
<div id="content">
<h2>FAQ</h2>
<ul>
<li><a href="manual.htm">Back</a></li>
<li><a href="#find">Problem with finding</a></li>
<li><a href="#hosting">Problem with hosting</a></li>
<li><a href="#proxy">Behind a proxy</a></li>
<li><a href="#memory_leak">Memory leak!</a></li>
</ul>
<div>
<a name="find"></a>
<h2>Problem with finding</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> Element not found in such case:<br>
$html-&gt;find('div[style=<span class="var">padding: 0px 2px;</span>] span[class=rf]');<br>
<br>
<span class="var">A:</span> If there is blank in selectors, quote it!  <br>
$html-&gt;find('div[style=<strong class="var">&quot;padding: 0px 2px;&quot;</strong>] span[class=rf]');</div>
<a name="hosting"></a>
<h2>Problem with hosting</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> On my local server everything works fine, but when I put it on my esternal server it doesn't work. <br>
<br>
<span class="var">A:</span> The "file_get_dom" function is a wrapper of "file_get_contents" function,  you must set "<strong>allow_url_fopen</strong>" as <strong>TRUE</strong> in "php.ini" to allow accessing files via HTTP or FTP. However, some hosting venders disabled PHP's "allow_url_fopen" flag for security issues... PHP provides excellent support for "curl" library to do the same job, Use curl to get the page, then call "str_get_dom" to create DOM object. <br>
<br>
Example: <br>
 <br>
$curl = curl_init(); <br>
curl_setopt(<span class="var">$curl, CURLOPT_URL, 'http://????????'</span>);  <br>
curl_setopt(<span class="var">$curl, CURLOPT_RETURNTRANSFER, 1</span>);  <br>
curl_setopt(<span class="var">$curl, CURLOPT_CONNECTTIMEOUT, 10</span>);  <br>
$str = curl_exec(<span class="var">$curl</span>);  <br>
curl_close($curl);  <br>
 <br>
$html= <strong>str_get_html</strong>($str); <br>
...  </div>
<a name="proxy"></a>
<div>
<h2>Behind a proxy</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> My server is behind a Proxy and i can't use file_get_contents b/c it returns a unauthorized error.<br>
<br>
<span class="var">A:</span> Thanks for Shaggy to provide the solution: <br>
 <br>
<span class="comment">// Define a context for HTTP. </span><br>
$context = array<br>
( <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'http'</span> =&gt; array<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ( <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="var">'proxy'</span> =&gt; <span class="var">'addresseproxy:portproxy'</span>, <span class="comment">// This needs to be the server and the port of the NTLM Authentication Proxy Server. </span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="var"> 'request_fulluri'</span> =&gt; true, <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ), <br>
); <br>
<br>
$context = <strong>stream_context_create</strong>($context); <br>
 <br>
$html= <strong>file_get_html</strong>(<span class="var">'http://www.php.net'</span>, <span class="var">false</span>, <span class="var">$context</span>); <br>
...<br>
</div>
</div>
<a name="memory_leak"></a>
<h2>Memory leak!</h2>
<a class="top" href="#top">Top</a>
<div class="code"> <span class="var">Q:</span> This script is leaking memory seriously... After it finished running, it's not cleaning up dom object properly from memory.. <br>
<br>
<span class="var">A:</span> Due to php5 circular references memory leak, after creating DOM object, you must call $dom-&gt;clear() to free memory if call file_get_dom() more then once. <br>
<br>
Example: <br>
<br>
$html = file_get_html(...); <br>
<span class="comment">// do something... </span><br>
$html-&gt;clear(); <br>
unset($html);</div>
<br>
Author: S.C. Chen (me578022@gmail.com)<br>
Original idea is from Jose Solorzano's <a href="http://php-html.sourceforge.net/">HTML Parser for PHP 4</a>. <br>
Contributions by: Yousuke Kumakura, Vadim Voituk, Antcs<br>
</div>
</div>
</body>
</html>
<!--$Rev: 165 $-->

View file

@ -1,4 +1,7 @@
<?php
namespace simplehtmldom_1_5;
/**
* Website: http://sourceforge.net/projects/simplehtmldom/
* Acknowledge: Jose Solorzano (https://sourceforge.net/projects/php-html/)
@ -62,7 +65,10 @@ define('HDOM_INFO_ENDSPACE',7);
define('DEFAULT_TARGET_CHARSET', 'UTF-8');
define('DEFAULT_BR_TEXT', "\r\n");
define('DEFAULT_SPAN_TEXT', " ");
define('MAX_FILE_SIZE', 600000);
if (!defined('MAX_FILE_SIZE'))
{
define('MAX_FILE_SIZE', 600000);
}
// helper functions
// -----------------------------------------------------------------------------
// get html dom from file
@ -116,6 +122,7 @@ class simple_html_dom_node
public $nodetype = HDOM_TYPE_TEXT;
public $tag = 'text';
public $attr = array();
/** @var simple_html_dom_node[] $children */
public $children = array();
public $nodes = array();
public $parent = null;
@ -1718,4 +1725,4 @@ class simple_html_dom
function loadFile() {$args = func_get_args();$this->load_file($args);}
}
?>
?>

View file

@ -1,95 +0,0 @@
K 25
svn:wc:ra_dav:version-url
V 50
/svnroot/simplehtmldom/!svn/ver/180/trunk/testcase
END
strip_testcase.php
K 25
svn:wc:ra_dav:version-url
V 69
/svnroot/simplehtmldom/!svn/ver/169/trunk/testcase/strip_testcase.php
END
performance_test.php
K 25
svn:wc:ra_dav:version-url
V 71
/svnroot/simplehtmldom/!svn/ver/133/trunk/testcase/performance_test.php
END
mass_test.php
K 25
svn:wc:ra_dav:version-url
V 64
/svnroot/simplehtmldom/!svn/ver/174/trunk/testcase/mass_test.php
END
slick_test.php
K 25
svn:wc:ra_dav:version-url
V 65
/svnroot/simplehtmldom/!svn/ver/133/trunk/testcase/slick_test.php
END
memory_test.php
K 25
svn:wc:ra_dav:version-url
V 66
/svnroot/simplehtmldom/!svn/ver/179/trunk/testcase/memory_test.php
END
all_test.php
K 25
svn:wc:ra_dav:version-url
V 63
/svnroot/simplehtmldom/!svn/ver/175/trunk/testcase/all_test.php
END
dom_testcase.php
K 25
svn:wc:ra_dav:version-url
V 67
/svnroot/simplehtmldom/!svn/ver/180/trunk/testcase/dom_testcase.php
END
selector_testcase.php
K 25
svn:wc:ra_dav:version-url
V 72
/svnroot/simplehtmldom/!svn/ver/172/trunk/testcase/selector_testcase.php
END
jquery-1.2.3.pack.js
K 25
svn:wc:ra_dav:version-url
V 71
/svnroot/simplehtmldom/!svn/ver/106/trunk/testcase/jquery-1.2.3.pack.js
END
invalid_testcase.php
K 25
svn:wc:ra_dav:version-url
V 71
/svnroot/simplehtmldom/!svn/ver/175/trunk/testcase/invalid_testcase.php
END
element_testcase.php
K 25
svn:wc:ra_dav:version-url
V 71
/svnroot/simplehtmldom/!svn/ver/132/trunk/testcase/element_testcase.php
END
std_testcase.php
K 25
svn:wc:ra_dav:version-url
V 67
/svnroot/simplehtmldom/!svn/ver/115/trunk/testcase/std_testcase.php
END
misc_testcase.php
K 25
svn:wc:ra_dav:version-url
V 68
/svnroot/simplehtmldom/!svn/ver/133/trunk/testcase/misc_testcase.php
END
callback_testcase.php
K 25
svn:wc:ra_dav:version-url
V 72
/svnroot/simplehtmldom/!svn/ver/179/trunk/testcase/callback_testcase.php
END
slickspeed.htm
K 25
svn:wc:ra_dav:version-url
V 65
/svnroot/simplehtmldom/!svn/ver/106/trunk/testcase/slickspeed.htm
END

View file

@ -1,544 +0,0 @@
10
dir
182
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom/trunk/testcase
https://simplehtmldom.svn.sourceforge.net/svnroot/simplehtmldom
2009-03-22T19:24:59.344030Z
180
me578022
d0e60b4b-9046-0410-940c-b97530268c78
strip_testcase.php
file
2010-08-17T19:13:53.350286Z
312053ebe417d8bd82901a3788ace7cb
2008-10-29T19:08:25.076520Z
169
me578022
has-props
4448
performance_test.php
file
2010-08-17T19:13:53.357286Z
178c0c89624f4341b732545414590ff2
2008-07-25T12:31:14.828880Z
133
me578022
has-props
792
mass_test.php
file
2010-08-17T19:13:53.363286Z
b2a94f2744f4fcb902e2f238456b3872
2008-12-11T19:19:39.653903Z
174
me578022
has-props
3048
slick_test.php
file
2010-08-17T19:13:53.370287Z
b99dbf87b8b80c80d9f6958772a9bd2a
2008-07-25T12:31:14.828880Z
133
me578022
has-props
892
memory_test.php
file
2010-08-17T19:13:53.383288Z
876e9e34007c44ae588488de78fbe695
2009-02-23T09:04:02.699587Z
179
me578022
has-props
4719
all_test.php
file
2010-08-17T19:13:53.376287Z
eda1dbfb14f36ae447c9e23d41870036
2008-12-14T18:56:55.570844Z
175
me578022
has-props
745
dom_testcase.php
file
2010-08-17T19:13:53.389288Z
d94c6f883d8f55e3009a3118886ba47c
2009-03-22T19:24:59.344030Z
180
me578022
has-props
11672
selector_testcase.php
file
2010-08-17T19:13:53.395288Z
46a462975187f4b8804fb3162486c72d
2008-11-16T20:10:05.337885Z
172
me578022
has-props
21839
reader
dir
html
dir
jquery-1.2.3.pack.js
file
2010-08-17T19:13:53.402289Z
f8d6a95d012b83675abe8cd1877268a0
2008-06-04T18:34:08.672146Z
106
me578022
has-props
29845
invalid_testcase.php
file
2010-08-17T19:13:53.409289Z
674d63800eeec61271d1bed2083f9306
2008-12-14T18:56:55.570844Z
175
me578022
has-props
18691
element_testcase.php
file
2010-08-17T19:13:53.415289Z
7a1e804c7f08595ad56252a26431e2f8
2008-07-24T13:55:24.521644Z
132
me578022
has-props
8412
std_testcase.php
file
2010-08-17T19:13:53.421290Z
7941d3823eb3a787633d672eddfa4c98
2008-06-24T00:55:28.257869Z
115
me578022
has-props
6829
misc_testcase.php
file
2010-08-17T19:13:53.427290Z
5072ff70e3cce8771b62b319e1be4df0
2008-07-25T12:31:14.828880Z
133
me578022
has-props
1854
slickspeed.htm
file
2010-08-17T19:13:53.434290Z
01b4dd6f53b2b9970492704c42901b32
2008-06-04T18:34:08.672146Z
106
me578022
has-props
116621
callback_testcase.php
file
2010-08-17T19:13:53.441291Z
c026b8c379d20ec4999bd0dcd6550a6f
2009-02-23T09:04:02.699587Z
179
me578022
has-props
1845

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 3
Rev
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,13 +0,0 @@
K 13
svn:eol-style
V 6
native
K 12
svn:keywords
V 3
Rev
K 13
svn:mime-type
V 10
text/x-php
END

View file

@ -1,24 +0,0 @@
<?php
// $Rev$
error_reporting(E_ALL);
function quick_test($html_dom, $str, $selector, $params=array('inner'=>'', 'plain'=>'', 'outer'=>'')) {
$html_dom->load($str);
$e = $html_dom->find($selector, 0);
if (isset($params['inner']))
assert($e->innertext===$params['inner']);
if (isset($params['plain']))
assert($e->plaintext===$params['plain']);
if (isset($params['outer']))
assert($e->outertext===$params['outer']);
assert($html_dom==$str);
}
foreach (new DirectoryIterator(getcwd()) as $entry) {
if ($entry->isFile() && strpos($entry, '_testcase.')>0) {
echo basename($entry);
require_once($entry);
echo '<br>...pass!<br><br>';
}
}
?>

Some files were not shown because too many files have changed in this diff Show more