1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| $url = 'http://www.vola-racing.com/circuitpro/default/update.php?dir=circuitpro:default&index=0';
$data = utf8_decode(substr(file_get_contents($url), 8, -1));
$doc = new DOMDocument();
$doc->loadHTML($data);
$xpath = new DOMXPath($doc);
try
{
$dbh = new PDO("sqlite::memory:");
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
exit($e->getMessage());
}
$dbh->query("CREATE TABLE race (clt INTEGER, num INTEGER, driver, nat, lastlap FLOAT, gap FLOAT, interval FLOAT, blank)");
$stmt = $dbh->prepare("INSERT INTO race VALUES (?, ?, ?, ?, ?, ?, ?, ?)");
foreach($xpath->query('//tr') as $line)
{
$values = array();
foreach ($xpath->query('td', $line) as $child)
{
$values[] = $child->nodeValue;
}
$stmt->execute($values);
}
$query = $dbh->query("SELECT `num`, `driver`, `lastlap` FROM `race` ORDER BY `num` LIMIT 10");
$query->setFetchMode(PDO::FETCH_ASSOC);
echo '<table>';
$row = $query->fetch();
echo '<tr><th>', implode('</th><th>', array_keys($row)), '</th></tr>';
do
{
echo '<tr><td>', implode('</td><td>', $row), '</td></tr>';
}
while($row = $query->fetch());
echo '</table>'; |
Partager