php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 30-11-2006, 13:56
gazzle
 Newbie
Links : Onlinestatus : gazzle ist offline
Registriert seit: Dec 2005
Beiträge: 5
gazzle ist zur Zeit noch ein unbeschriebenes Blatt
Standard Tabelle aus HTML Datei lesen

Hallo,
ich möchte mir eine Tabelle aus einer bestimmten seite ausgeben lassen und mit dieser später auch weiterarbeiten.
Dafür hole ich mir die Seite mit file_get_contents. Um nur die Tabelle zu bekommen, schneide ich von <table> bis </table> alles aus dem String.

Das komische ist, wenn ich dies gemacht habe, hat er bei der Ausgabe von $table immer noch die Überschrift
Gesamtpunkte
aus Wiki, der freien Wissensdatenbank
und den head Teil der Html obwohl ich nur den substring für die tabelle an $table gegeben habe.


Quellcode:

PHP-Code:
$string file_get_contents('http://www.fh-brandenburg.de/~kirmse/wiki/index.php/Gesamtpunkte','r');
//echo $page;
$posA strpos($string'<table>');
$posE strpos($string'</table>');
$table substr($string$posA$posE);

echo 
$table
Mit cUrl ist klappt es auch nicht und
mit explode wird es auch nicht besser.

Der Original Link ist hier: http://www.fh-brandenburg.de/~kirmse...p/Gesamtpunkte

mein PHP ist hier: http://web.projekt2019.de/extern/curl/

Hat wer von euch evtl. Rat für mich ?

Kann es eventuell sein, dass es nicht klappt weil es eine WIKI-Seite ist ?!?

Geändert von gazzle (30-11-2006 um 13:58 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 30-11-2006, 14:02
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Das komische ist, wenn ich dies gemacht habe, hat er bei der Ausgabe von $table immer noch die Überschrift
Gesamtpunkte
Also die überschrift konnte ich in deiner ausgabe jetzt nicht finden. gib mal nur $table aus.
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #3 (permalink)  
Alt 30-11-2006, 14:04
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
$string file_get_contents('http://www.fh-brandenburg.de/~kirmse/wiki/index.php/Gesamtpunkte','r');
$mark = ("'<table[^>]*>.*?</table>'si");
if (
preg_match ($mark,$string,$hits))
{
    
$table $hits[0];
}
echo 
$table
z.b.

gruß
peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #4 (permalink)  
Alt 30-11-2006, 14:07
gazzle
 Newbie
Links : Onlinestatus : gazzle ist offline
Registriert seit: Dec 2005
Beiträge: 5
gazzle ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke für deine schnelle Antwort.
Stimtm auf meiner Seite ist keine Überschrift mehr da, hatte da was rumgespielt. Aber unter der Tabelle gehts.

Ich schaue mir deinen Vorschlag mal an.

Jo danke es haut hin!

Achso kannst du den Ausdruck mal näher erklären

Zitat:
$mark = ("'<table[^>]*>.*?</table>'si");

Geändert von gazzle (30-11-2006 um 14:12 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 30-11-2006, 14:09
Griecherus
 PHP Senior
Links : Onlinestatus : Griecherus ist offline
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
Griecherus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
$string file_get_contents('');
$posA strpos($string'<table>');
$posE strpos($string'</table>');
$table substr($string$posA$posE $posA); // $posE - $posA statt nur $posE

echo $table
Davon abgesehen schau dir mal Kropffs Beispiel an.
Mit Zitat antworten
  #6 (permalink)  
Alt 30-11-2006, 17:56
gazzle
 Newbie
Links : Onlinestatus : gazzle ist offline
Registriert seit: Dec 2005
Beiträge: 5
gazzle ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja wie gesagt läuft alles bestens nur habe ich noch ein kleines Problem.
Ich möchte jetzt die Tabelle trennen in die einzelnen Zeilen.
Das habe ich mit substr und einer schleife.

Damit nun beim nächsten substr Aufruf in der Schelife nicht gleich wieder die erste <tr>.....</tr> ausgegeben wird wollte ich es wie folgt machen.

Ich habe ja dank der strpos $posE die Position des Endes der ersten Zeile (</tr>) und da wollte ich dann substr($string, $posE ) nehmen.
Was nach meinem Verständnis jetzt den Teilstring ab $posE bis zum Ende des Strings übergibt.

Dann kann die Schleife wieder durchlaufen und die nächste Zeile der Tabelle auslesen.

Aber leider gibt er immer wieder die Tabelle komplett aus.

Ist mein Denkansatz hier falsch ?
Mit Zitat antworten
  #7 (permalink)  
Alt 30-11-2006, 19:19
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

habs nicht ganz nachvollziehen können. aber mit nem preg_match_all kannst du alle zeilen in ein array einlesen und damit machen, was du willst. Das ist doch, was du willst.?
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #8 (permalink)  
Alt 30-11-2006, 19:45
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn du nur die Zeilen willst:
PHP-Code:
preg_match_all('/<table[^>]*>.*<tr[^]*>(.*)<\/tr>/isU',$deinString,$treffer);
echo 
'<pre>';
print_r($treffer[1]);
echo 
'</pre>'
Sollte dir alles was zwischen tr und /tr steht matchen und in $treffer[1] ablegen. Ggf musst du dann noch mit einem strip_tags() drüber.

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #9 (permalink)  
Alt 30-11-2006, 23:18
logiciel
 Newbie
Links : Onlinestatus : logiciel ist offline
Registriert seit: Nov 2006
Ort: Schwetzingen
Beiträge: 6
logiciel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ehrlich gesagt, du solltest erstmal nach einem Erlaubnis fragen, bevor du fremde Inhalte als eigene ausgibst. Sonst ist das eine Urheberrechtverletzung... Nur verlinken darf man ohne zu fragen. (Bin keine Fachfrau in diesem Bereich, habe nur einiges gelesen.)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:36 Uhr.