Hallo,
ich möchte aus einer HTML Seite (welche mehrere Tabellen besitzt) einen Eintrag (ein Datum: TT.MM.) auslesen. Ich suche dazu die Seite nach dem Code durch welcher vor und nach dem Datum kommt. Da dieser Eintrag mehrmals vorkommt und ich nur das 2. brauche habe ich eine FOR-Schleife genommen die zweimal durchläuft. Der Code unten funktioniert, nur läd die Seite dadurch sehr sehr lange.
Dadurch entstehen bei mir zwei Fragen: Kann ich den Quellcode vereinfachen? Ist ein Fehler vorhanden der auf die lange Ladezeit hinweißt?
PHP-Code:
$farbe = "#FFFFFF";
$warning = "";
$rem = "";
$rem = "";
$error = "";
$warntabelleX = "";
$schriftf = "";
$fp = @fopen("http://www.domain.de/?id=3","rb");
if(!$fp)
{
echo "fopen";
$error .= "<li>Fehler.</li>";
}
else
{
$site = "";
while (!feof($fp))
{
//max length = 8192 Bytes!
$site .= fread($fp, 8192);
}
fclose($fp);
for($i=0;$i<2;$i++)
{
$warning = strstr($site,"<td width=\"75\" valign=\"top\" nowrap=\"nowrap\">");
$rem = strstr($warning,"</td>");
$warning = str_replace($rem,"",$warning);
$site = str_replace($warning,"",$site);
$warn = substr($warning,44,6);
}
}
$warntabelleX .= '
<TABLE WIDTH="100%" height="3" BORDER="0" CELLSPACING="0" CELLPADDING="0">
<TR>
<TD>
</TD>
</TR>
</TABLE>
<TABLE class="wetter" WIDTH="100%" style="cursor:pointer;" bordercolor="#'.$farbe.'" BGCOLOR="#'.$farbe.'"
BORDER="0" CELLSPACING="0" CELLPADDING="0">
<TR>
<TD>
<b><center><font size="-3" color="#'.$schriftf.'">'.$warn.'</font></center></b></TD>
</TR>
</TABLE>
';
Mit freundlichen Grüßen
Andreas