WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik


Homepage und Webhosting-Forum

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.


Forum » PHP & MySQL » Daten filtern aus HTML-Code : ereg_replace ?! » Antworten
Benutzername:
Passwort: Passwort vergessen?
Inhalt der Nachricht: Fett | Kursiv | Unterstrichen | Link | Bild | Smiley | Zitat | Zentriert | Quellcode| Kleiner Text
Optionen: Emailbenachrichtigung bei Antworten
 

Daten filtern aus HTML-Code : ereg_replace ?!
von coopernicus
hi michael,
ich hatte noch ein paar anpassungsprobleme, aber jetzt funktioniert dein
vorgeschlagener lösungsweg.

vielen dank für deine hilfe !!!
von coopernicus
der quellcode selbst ist ja variabel. nicht aber der Kram, der zwischen Montag und - in diesem Fall - der 21 steht. Gibt es keine Lösung, dass ich die 21 ausgehend vom Montag finden kann?
Vielleicht über einen Zeiger, der hinter Montag steht und soundsoviele Zeichen weiter diese dann in eine Variable speichert?

Ist da was zu machen?
Danke schön

von michael
dann gib doch als start & end-string das vor und nach der 21 an - dann sucht er genau die raus.
von coopernicus
0
von michael
vorschlag:

lies alles von montag bis 21 damit aus:

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:
<?

$loc = "http://www.domain.de";
$startstring = "Montag"; //ab dem text im quellcode
$endstring = "21"; //bis zu dem text im quellcode

$file = @fopen ($loc,"r");
if (trim($file) == "") {
	echo "Irgendwas ist hier schiefgelaufen";
} else {
	$i=0;
	while (!feof($file)) {
		$zeile[$i] = fgets($file,2000);
		$i++;
	}
	fclose($file);
}

for ($j=0;$j<$i;$j++) {

   if ($resultat1 = strstr($zeile[$j],$startstring)) {
      $resultat2 = str_replace($startstring, "", $resultat1);
      $endstueck = strstr($resultat2, $endstring);
      $resultat = str_replace($endstueck,"",$resultat2);
   }
}

echo $resultat;

?>
 


und bei $resultat ersetzt du noch mit dem string-replace den Teil den er nicht zeigen soll (also den ganzen HTML-Code) durch nix.
von coopernicus
Hallo,
ich habe zwei Sorgenfalten vom lauter Herumgrübeln. Ich bin mir aber sicher, dass es eine nicht allzu komplizierte Lösung des Ganzen gibt. also:
ich ziehe mir per php den Quellcode einer HTML-Seite heraus. Diese Seite ist sehr voll mit Tags und - für mich - unnötigen Informationen. Irgendwo mittendrin steht folgender Quellcode:

... >Montag</a></font></td><td><font class="ts">Einnahmen</font></td><td align="right"><font class="ts">21 </font></td> ..

Komme ich mit 'ereg_replace' an die 21 heran?
Als Orientierung dient der Wochentag Montag, nach dem ich suchen kann.

a) wie schneide ich den Quellcode vor 'Montag' am geschicktesten ab?
b) wie filtere ich die 21 heraus (die auch negativ sein kann) und weise dem eine Variable zu?

Meine Überlegung war erst einmal alle html-tags zu entfernen. Aber irgendwie komme ich dann nicht weiter .... Ich hoffe, ich finde einen schlauen, netten Kopf, der mir den entscheidene Tip geben kann

Vielen Dank auf jeden Fall schon mal.
coopersen


Nach oben