Salve, sono un nuovo iscritto al forum ma seguo html.it e il vostro forum da tempo e credo che sia l'ambiente più adatto per discutere di questo mio problema.
Una piccola precisazione prima di iniziare: il mio sito è su altervista dunque non php5.
In sostanza, da una pagina di un sito esterno al mio che chiameremo http://www.sitoesterno.it/prova.html che si presenta così
codice:
<!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" xml:lang="it-it" lang="it-it" >
<body id="page_bg">
<div id="logo_bg">
<div class="nopad">
<table class="contentpaneopen">
<tr>
<td valign="top">
<center>
<div class='content-linker' style='font-size:160%;line-height: 1.1em;'>
Click Me
</div>
</center>
</td>
</tr>
</table>
</div>
</div>
</body>
</html>
dovrei estrarre "123".
Dunque devo recuperare l'attributo href, cioè /linkdarecuperare123.html e poi con una substring estrarre 123.
Il mio problema è ottenere /linkdarecuperare123.html
In rete ho trovato questo script che però non riesco ad adattare al mio caso.
Codice PHP:
<?php
function get_tag( $attr, $value, $xml ) {
$attr = preg_quote($attr);
$value = preg_quote($value);
$tag_regex = '/<div[^>]*'.$attr.'="'.$value.'">(.*?)<\\/div>/si';
preg_match($tag_regex,
$xml,
$matches);
return $matches[1];
}
$yourentirehtml = file_get_contents("pagina.html");
$extract = get_tag('id', 'content', $yourentirehtml);
echo $extract;
?>
dove pagina.html (il file da cui estrarre) era questo qui sotto e l'elemento da ottenere era il content commentato.
codice:
<html>
<head>
</head>
<body>
<div id="content">
some content</p>
</div>
</body>
</html>
Per quanto riguarda la substring invece non ho problemi: avendo /linkdarecuperare123.html posso ricavare 123 con
Codice PHP:
<?php
$substr = substr($url, 17, 3);
?>
dove $url è /linkdarecupare123.html
Grazie in anticipo a tutti coloro che si cimenteranno o spenderanno anche solo un secondo nella lettura di questo post