ERLEDIGT
JA
JA
ANTWORTEN
13
13
ZUGRIFFE
580
580
EMPFEHLEN
-
Hallo zusammen
ich habe eine einfache Tabelle in einem HTML-File. Auf einer Seite z.B. http://www.tabelle.com
Nun möchte ich mit einem PHP Script die Informationen aus der zweiten Zeile in eine oder mehrere Variabeln schreiben (nicht auf dem selben Server).
Code HTML-File:
Besten Dank für die HilfePHP-Code:<html>
<head>
<title>Text Tabell</title>
</head>
<body>
<table width="792" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><strong>Titel</strong></td>
<td><strong>Zeit</strong></td>
<td><strong>Monat</strong></td>
<td><strong>Tag</strong></td>
<td><strong>Stunde</strong></td>
</tr>
<tr>
<td>Alles</td> // möchte ich auslesen
<td>Morgen</td> // möchte ich auslesen
<td>November</td> // möchte ich auslesen
<td>Freitag</td> // möchte ich auslesen
<td>6</td> // möchte ich auslesen
</tr>
</table>
</body>
</html>
Gruss PHPneu1Geändert von PHPneu1 (14.09.05 um 11:50 Uhr) Grund: Korrektur
-
Ich würde dies mit nem DomDocument machen, weil .... ja weil es sehr übersichtlich ist finde ichPHP-Code:
<?php
$html = <<<HTML
<html>
<head>
<title>Text Tabell</title>
</head>
<body>
<table width="792" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><strong>Titel</strong></td>
<td><strong>Zeit</strong></td>
<td><strong>Monat</strong></td>
<td><strong>Tag</strong></td>
<td><strong>Stunde</strong></td>
</tr>
<tr>
<td>Alles</td> // möchte ich auslesen
<td>Morgen</td> // möchte ich auslesen
<td>November</td> // möchte ich auslesen
<td>Freitag</td> // möchte ich auslesen
<td>6</td> // möchte ich auslesen
</tr>
</table>
</body>
</html>
HTML;
$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->loadHTML($html);
$lines = $dom->getElementsByTagName('tr');
$childs = $lines->item(1)->getElementsByTagName('td');
foreach($childs as $child) {
echo $child->nodeValue."\n";
}
?>
http://de2.php.net/manual/de/ref.dom.php
Da findeste die komplette Hilfe dafür.
Wie du nun die kompletten HTML-Daten von einem anderen Server holen willst, weißt du ja bestimmt schon selber
"Kreativität heißt, aus dem Chaos Ordnung zu schaffen."
Georg Stefan Troller (*1921), östr. Journalist
Tutorials:
-
Danke für die erste Hilfe. Es geht...
ABER
ich habe nun noch mehr folgendes versucht:
nun bekomme ich zwar die angaben raus, aber auch nette ander Feheler wie desen:
Warning: DOMDocument::loadHTML() [function.loadHTML]: htmlParseEntityRef: no name in Entity, line: 3 in C:\Inetpub\Grab\grab.php on line 14
und diese nicht zu knapp und am Schluss meine Daten-
Der Fehler ist mir eigentlich egal. Doch wie bekomme ich nun meine Daten in eine Variabel.PHP-Code:
$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->loadHTML($read);
$lines = $dom->getElementsByTagName('tr');
$childs = $lines->item(2)->getElementsByTagName('td');
foreach($childs as $child) {
echo $child->nodeValue."\n";
}
Danke für nochmalige Hilfe!
Gruss
-
Also nochmals ein Versuch
wenn ich den unteren Code anwende bekomme ich meine Daten auf dem Bildschirm.
Ich lese also aus einer Tabelle die zweite Zeile aus.
Die Anzeige ist Alles Morgen November Freitag 6 (siehe oben im Post).
Diese daten Fett möchte ich aber in einer Variabel einlesen. (Wenn ich sie mir ansehen möchte kann ich ja immer noch mit echo anzeigen lassen.)
Bitte um dringende Hilfe.
Danke
PHP-Code:$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->loadHTML($read);
$lines = $dom->getElementsByTagName('tr');
$childs = $lines->item(2)->getElementsByTagName('td');
foreach($childs as $child) {
echo $child->nodeValue."\n";
}
-
Das sollte dir helfen.PHP-Code:
$daten = array();
foreach($childs as $child) {
echo array_push($daten, $child->nodeValue);
}
"Kreativität heißt, aus dem Chaos Ordnung zu schaffen."
Georg Stefan Troller (*1921), östr. Journalist
Tutorials:
-
Danke
aber in $daten steht nun 12345Array und nichtAlles Morgen November Freitag 6
wie muss ich dies noch um hebeln?
Danke
Gruss
-
die Variable $daten ist ein Array. Du kannst nun die einzelnen Sachen, die du haben willst mit zb. $daten[0], $daten[1]... usw. ansprechen.
Zitat von PHPneu1
"Kreativität heißt, aus dem Chaos Ordnung zu schaffen."
Georg Stefan Troller (*1921), östr. Journalist
Tutorials:
-
Cool vielen Dank nun geht alles
Dank und nen schönen Abend
-
Hallo
habe diesen Post nochmals geöffnet:
Wie kriege ich nun eine zusätzliches item(?) hineien?
Besten Dank für die Hilfe
Gruss
-
Hallo nochmals
Kann mir bitte noch jemand mit dem zusätzlichen Item helfen.
ich möchte eine zusätzliche Zeile auslesen.
Es ist dringend
Vielen Dank
-
wenn du eine extrazeile einlesen willst musste einfach statt
eben ein anderes item ansprechen.PHP-Code:$childs = $lines->item(1)->getElementsByTagName('td');
Also für das nächste TR-Kontrukt (In der Darstellung ists eine neue Zeile) eben mit
PHP-Code:$childs = $lines->item(2)->getElementsByTagName('td');
"Kreativität heißt, aus dem Chaos Ordnung zu schaffen."
Georg Stefan Troller (*1921), östr. Journalist
Tutorials:
-
Hallo
ich möchte aber zum beispiel item(1) und item(2) auslesen. Dies wären in meinem Fall zwei Zeilen einer Tabelle bzw. die Daten darin also 10 verschieden inhalte da 5 Spalten.
muss ich die den nun so darstellen?
PHP-Code:$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->loadHTML($contents);
$lines = $dom->getElementsByTagName('tr');
$childs = $lines->item(1)->getElementsByTagName('td');
$childs = $lines->item(2)->getElementsByTagName('td');
$strDaten = array();
foreach($childs as $child) {
array_push($strDaten, $child->nodeValue);
}
-
Nun werden in $strDaten alle Werte gespeichert. Da du weißt, dass eine Zeile 5 Spalten hat, sind also die Werte $strDaten[0] bis $strDaten[4] Zeile 1 und $strDaten[5] bis $strDaten[9] Zeile 2.PHP-Code:
$dom = new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->loadHTML($contents);
$lines = $dom->getElementsByTagName('tr');
$strDaten = array();
for($zeile = 1; $zeile < 3; $zeile++) { //Hier kannst du variabel auch mehrere Zeilen auslesen lassen
$childs = $lines->item($zeile)->getElementsByTagName('td');
foreach($childs as $child) {
array_push($strDaten, $child->nodeValue);
}
}
"Kreativität heißt, aus dem Chaos Ordnung zu schaffen."
Georg Stefan Troller (*1921), östr. Journalist
Tutorials:
-
Bestn Dank
nun hat es funktioniert.
Gruss
Ähnliche Themen
-
JCheckBox neben Text in einer Tabelle
Von FoolMoon im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 25.10.09, 20:05 -
Inhalt (Text) einer Tabelle automatisch anpassen?
Von hhjjppww im Forum CSSAntworten: 5Letzter Beitrag: 24.07.05, 05:52 -
Text in einer Tabelle ersetzen.
Von Arturoo im Forum PHPAntworten: 8Letzter Beitrag: 02.09.04, 12:48 -
poitionierung von text in einer tabelle
Von nocolors im Forum CSSAntworten: 1Letzter Beitrag: 18.10.03, 14:43 -
text ist immer zentriert in einer tabelle bei der höhe
Von Brauni im Forum HTML & XHTMLAntworten: 2Letzter Beitrag: 12.06.03, 09:43





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren