Hallo zusammen,
ich brauch mal wieder Eure Hilfe.
Der folgende Code funktioniert ohne Probleme nur ist er sehr umständlich geschrieben.
Seine Aufgabe ist eigentlich nur eine Zielseite aufrufen, den Htmlcode in einem String speichern, diesen String nach Zelleninhalten durchzusuchen diesen in einem Array zuspeichern, den erstellten Array bestimmte Positionen in Variablen zuspeichern. Da es mittlerweile schon 3 Internetseiten die ich auslesen muss habe ich einfach den Code 2x kopiert und die Variablen umbenannt.
Meine Frage nun:
Wie müsste ich eine Schleife aubauen, die das gleiche macht und bei jedem Durchlauf auf die nächste Internetseite zugreift.
Wichtig wäre es mir noch das ich die Internetseiten Anzahl beliebig erweitern könnte.
Hier mein Ausgangscode:
<?php
$convert = array(); // ein Hilfsarray
$start = 0; // wird später benötigt
$cols = 11; // wieviel Spalten werden benötigt
$url = "www.Internetseite1.de"; // Von welcher URL
$string = "Klasse(n)"; // Wird benötigt um den Anfang festzustellen
$string2 = "Vertretungs-Text"; // Um das Ende festzustellen
$arr = file($url); // Datei wird eingelesen
for($i=0;$i<count($arr);$i++)
{
$arr[$i] = strip_tags($arr[$i]); // Tags entfernen
if(!empty($arr[$i])&& trim($arr[$i]) ) // Prüfen ob nicht Leer und entferne Vor-Nachleerzeichen
{
array_push($convert,trim($arr[$i])); // an das Hilfsarray anfügen
if(trim($arr[$i]) == "") // ist das aktuelle Element gleich HIER FEHLER ""
array_push($convert,""); // füge noch ein Element an das Hilfsarray an
}
}
for($i=0;$i<count($convert);$i++) // Schleife um den Startpunkt zu ermitteln
{
if(!strnatcmp($string,$convert[$i]))
$start = $i;
}
for($i=$start,$m=0;$i<count($convert)-8;$i++,$m++) // bei count($convert)-8 werden die letzten unnötigen Daten entfernt
{
}
$playername = $convert[2];
$playerid = $convert[28];
$lastconnect = $convert[32];
$totaltime = $convert[34];
$rank = $convert[40];
$points = $convert[42];
$activity = $convert[44];
$kills = $convert[46];
$deaths = $convert[48];
$suicides = $convert[50];
$killsperdeath = $convert[52];
$weaponaccuracy = $convert[60];
$convert = array(); // ein Hilfsarray
$start = 0; // wird später benötigt
$cols = 11; // wieviel Spalten werden benötigt
$url = "www.Internetseite2.de"; // Von welcher URL
$string = "Klasse(n)"; // Wird benötigt um den Anfang festzustellen
$string2 = "Vertretungs-Text"; // Um das Ende festzustellen
$arr = file($url); // Datei wird eingelesen
for($i=0;$i<count($arr);$i++)
{
$arr[$i] = strip_tags($arr[$i]); // Tags entfernen
if(!empty($arr[$i])&& trim($arr[$i]) ) // Prüfen ob nicht Leer und entferne Vor-Nachleerzeichen
{
array_push($convert,trim($arr[$i])); // an das Hilfsarray anfügen
if(trim($arr[$i]) == "") // ist das aktuelle Element gleich HIER FEHLER ""
array_push($convert,""); // füge noch ein Element an das Hilfsarray an
}
}
for($i=0;$i<count($convert);$i++) // Schleife um den Startpunkt zu ermitteln
{
if(!strnatcmp($string,$convert[$i]))
$start = $i;
}
for($i=$start,$m=0;$i<count($convert)-8;$i++,$m++) // bei count($convert)-8 werden die letzten unnötigen Daten entfernt
{ }
$playername1 = $convert[2];
$playerid1 = $convert[28];
$lastconnect1 = $convert[32];
$totaltime1 = $convert[34];
$rank1 = $convert[40];
$points1 = $convert[42];
$activity1 = $convert[44];
$kills1 = $convert[46];
$deaths1 = $convert[48];
$suicides1 = $convert[50];
$killsperdeath1 = $convert[52];
$weaponaccuracy1= $convert[60];
$convert = array(); // ein Hilfsarray
$start = 0; // wird später benötigt
$cols = 11; // wieviel Spalten werden benötigt
$url = "Internetseite3.de"; // Von welcher URL
$string = "Klasse(n)"; // Wird benötigt um den Anfang festzustellen
$string2 = "Vertretungs-Text"; // Um das Ende festzustellen
$arr = file($url); // Datei wird eingelesen
for($i=0;$i<count($arr);$i++)
{
$arr[$i] = strip_tags($arr[$i]); // Tags entfernen
if(!empty($arr[$i])&& trim($arr[$i]) ) // Prüfen ob nicht Leer und entferne Vor-Nachleerzeichen
{
array_push($convert,trim($arr[$i])); // an das Hilfsarray anfügen
if(trim($arr[$i]) == "") // ist das aktuelle Element gleich HIER FEHLER ""
array_push($convert,""); // füge noch ein Element an das Hilfsarray an
}
}
for($i=0;$i<count($convert);$i++) // Schleife um den Startpunkt zu ermitteln
{
if(!strnatcmp($string,$convert[$i]))
$start = $i;
}
for($i=$start,$m=0;$i<count($convert)-8;$i++,$m++) // bei count($convert)-8 werden die letzten unnötigen Daten entfernt
{ }
$playername2 = $convert[2];
$playerid2 = $convert[28];
$lastconnect2 = $convert[32];
$totaltime2 = $convert[34];
$rank2 = $convert[40];
$points2 = $convert[42];
$activity2 = $convert[44];
$kills2 = $convert[46];
$deaths2 = $convert[48];
$suicides2 = $convert[50];
$killsperdeath2 = $convert[52];
$weaponaccuracy2= $convert[60];
?>
Alles anzeigen
Da ich als nächstes die 12 Variabel in eine Datenbank schreiben werde, reichen eigentlich einmalig die Ausgangsvariabelnbezeichnung aus.
Vielen Dank schon mal im vorraus, Oliver.