1
hallo,
die ganze Datei schaut so aus:
$wochentag', '$datetimestr', '$zusatzinfo', '$spielenummer', '$spielklasse', '$heimmannschaft', '$gastmannschaft',, '$gastergebnis sind korrekt dann in der DB vor zu finden. Unter '$heimergebnis' kommt immer eine 0
gruß tobi
Notice: Undefined variable: res ... on line 15
die ganze Datei schaut so aus:
<?php
function PostToHost($host, $path, $referer, $data_to_send) {
$fp = fsockopen($host, 80);
fputs($fp, "POST $path HTTP/1.1\r\n");
fputs($fp, "Host: $host\r\n");
fputs($fp, "Referer: $referer\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data_to_send) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data_to_send);
while(!feof($fp)) {
$res .= fgets($fp, 128);
}
fclose($fp);
return $res;
}
//Datenbank verbinden
include "../zugang_3.php.inc";
$data="...";
$data=$data."...";
$data=$data."...";
$data=$data."...";
$data=$data."...";
$data=$data."...";
// Seite auslesen und in $x als String speichern
$x = PostToHost(
"...",
"/...",
"...",
$data
);
//Tabelle leeren
mysql_query("TRUNCATE TABLE spielergebnisse") or die(mysql_error());
// alles bis auf Tabelle entfernen
$x=substr($x,strpos($x,"<table class=\"result-set\""));
$x=substr($x,0,strpos($x,"</table>"));
// Kopfzeile der Tabelle entfernen
$x=substr($x,strpos($x,"</tr>")+5);
// Solange noch ein Spiel gefunden wird => Schleife ausf?hren
while(strpos($x,"<tr") !== false) {
// Anfangsposition des Spiels ermitteln
$startpos=strpos($x,"<tr");
// Endposition des Spiels ermitteln
$endpos=strpos($x,"</tr>");
// Spielzeile in $spielstr speichern
$spielstr=substr($x,$startpos,$endpos-$startpos);
// Wochentag bestimmen
$spielstr=substr($spielstr,strpos($spielstr,"<td")+3);
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
if (substr($spielstr,0,strpos($spielstr,"<"))!==" ") {
$wochentag = trim(substr($spielstr,0,strpos($spielstr,"<")));
}
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Datum bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
if (substr($spielstr,0,strpos($spielstr,"<"))!==" ") {
$datum = trim(substr($spielstr,0,strpos($spielstr,"<")));
}
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Uhrzeit bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
$uhrzeit = substr(trim($spielstr),0,5);
// Zusatzinfo wie t/v oder v oder u (tausch, verlegt oder unbestimmte zeit)
$spielstr=substr(trim($spielstr),5);
$zusatzinfo=substr($spielstr,0,strpos($spielstr,"</td>"));
$zusatzinfo=preg_replace("/( )/"," ",$zusatzinfo);
$zusatzinfo=trim($zusatzinfo);
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Spalte zusatzinfo verworfen
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Spielenummer bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
$spielenummer = trim(substr($spielstr,0,strpos($spielstr,"<")));
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Spielklasse bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
$spielklasse = trim(substr($spielstr,0,strpos($spielstr,"<")));
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Heimmannschaft bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
$heimmannschaft = trim(substr($spielstr,0,strpos($spielstr,"<")));
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Gastmannschaft bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
$gastmannschaft = trim(substr($spielstr,0,strpos($spielstr," <")));
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
// Ergebnis bestimmen
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
if (strpos($spielstr,"</a>")!==false) {
$spielstr=substr($spielstr,strpos($spielstr,">")+1);
}
$spielstr=trim($spielstr);
if (substr($spielstr,0,6)==" ") {
$heimergebnis=0;
$gastergebnis=0;
}
else {
$heimergebnis=substr($spielstr,0,strpos($spielstr,":"));
$gastergebnis=substr($spielstr,strpos($spielstr,":")+1,strpos($spielstr,"<")-strpos($spielstr,":")-1);
}
$spielstr=substr($spielstr,strpos($spielstr,"</td>")+5);
echo $wochentag."\n";
echo $datum."\n";
echo $uhrzeit."\n";
echo $zusatzinfo."\n";
echo $spielenummer."\n";
echo $spielklasse."\n";
echo $heimmannschaft."\n";
echo $gastmannschaft."\n";
echo $heimergebnis."\n";
echo ":\n";
echo $gastergebnis."\n";
//letztes Spiel in der Datenbank abspeichern.
$datetimestr=substr($datum,6)."-".substr($datum,3,2)."-".substr($datum,0,2)." ".$uhrzeit.":00";
mysql_query("INSERT INTO spielergebnisse
(wochentag, spielzeit, zusatzinfo, spielenummer, spielklasse, heimmannschaft, gastmannschaft, heimergebnis, gastergebnis)
VALUES
('$wochentag', '$datetimestr', '$zusatzinfo', '$spielenummer', '$spielklasse', '$heimmannschaft', '$gastmannschaft', '$heimergebnis', '$gastergebnis')")
or die(mysql_error());
// bearbeitetes Spiel aus Gesamtliste entfernen
$x=substr($x,strpos($x,"</tr>")+5);
}
//Datenbank schlie?en
mysql_close($link);
?>
Datei wird aufgerufen, Seite gecheckt, und Daten in die DB. $wochentag', '$datetimestr', '$zusatzinfo', '$spielenummer', '$spielklasse', '$heimmannschaft', '$gastmannschaft',, '$gastergebnis sind korrekt dann in der DB vor zu finden. Unter '$heimergebnis' kommt immer eine 0
gruß tobi