Toon posts:

[php] Tekst uit HTML pagina filteren

Pagina: 1
Acties:
  • 39 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik wil graag met PHP tekst uit een HTML pagina halen.
Nou heb ik wel enige kennis van programmeren maar niet specifiek van PHP.

Voor het probleem heb ik het volgende topic bekeken:
text uit andere pagina?
Of php.net kan ik ook niet echt een oplossing specifiek voor dit probleem vinden.

Hier schijnt een oplossing te zijn gevonden maar die lukt bij niet of ik gebruik de gegevens in dit topic niet goed. Wie kan mij nog eens op weg helpen? :P

Dit is wat ik nu heb, ik weet niet of ik nu een array heb gemaakt en of er iets instaat.
PHP:
1
2
3
$page="http://www.xxx.xx.index.html";
$array = file($fp);
echo $array();

[ Voor 3% gewijzigd door Verwijderd op 07-06-2004 23:11 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

Ehm, een tutorial doen lijkt me wel op zijn plaats. :/

1. Wat moet $page doen?
2. Wat is $fp?
3. Je maakt geen array, maar een gewone variabele.
4. $array() zou een anonieme functie zijn, als je een array af wil drukken gebruik je print_r()
5.
PHP:
1
2
$blaat = file_get_contents("http://www.xxx.xx.index.html");
echo $blaat;

6. Als je daarna nog wat wil zoeken of vervangen dan zul je wat met str_replace of de verschillende ereg* en preg* functies moeten doen.

[ Voor 20% gewijzigd door NMe op 07-06-2004 23:16 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Ethnocentrix
  • Registratie: Augustus 2002
  • Nu online

Ethnocentrix

Rijkserkend prutser

ik denk dat je ipv file beter file_get_contents kan gebruiken. Je krijg dan zoiets:
PHP:
1
2
3
4
<?
$page=file_get_contents("http://www.xxx.xx.index.html");
echo $page;
?> 

vervolgens zou je met preg_replace de html codes eruit kunnen strippen

edit: damn... te laat :P

[ Voor 11% gewijzigd door Ethnocentrix op 07-06-2004 23:19 ]

You know you're an engineer if you have no life & can prove it mathematically.


Verwijderd

Topicstarter
Ok ik krijg de pagina nu geladen in die variabele.
Maar hoe krijg je dan bepaalde elementen in een array?

Dus ik had gedacht om bijv array[44] af te drukken en dat er dan bijvoorbeeld "www.tweakers.net" wordt afgedrukt. Of kan dit niet?

Zie het topic wat ik bij de post heb toegevoegd.

edit:

Of kun je ook de html code die nu in de variabele staat naar een text file wegschrijven en vervolgens de textfile openen en dan uitlezen wat je wilt hebben, of is dat een domme oplossing?

[ Voor 28% gewijzigd door Verwijderd op 07-06-2004 23:24 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

Verwijderd schreef op 07 juni 2004 @ 23:20:
Ok ik krijg de pagina nu geladen in die variabele.
Maar hoe krijg je dan bepaalde elementen in een array?

Dus ik had gedacht om bijv array[44] af te drukken en dat er dan bijvoorbeeld "www.tweakers.net" wordt afgedrukt. Of kan dit niet?

Zie het topic wat ik bij de post heb toegevoegd.
Zoals ik al zei, verdiep je in de preg en ereg functies. Met name preg_match.
edit:
Of kun je ook de html code die nu in de variabele staat naar een text file wegschrijven en vervolgens de textfile openen en dan uitlezen wat je wilt hebben, of is dat een domme oplossing?
Het kan zeker, maar wat denk je ermee op te schieten? Preg_match dus. ;)

[ Voor 25% gewijzigd door NMe op 07-06-2004 23:25 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
NMe84 schreef op 07 juni 2004 @ 23:23:
[...]

Zoals ik al zei, verdiep je in de preg en ereg functies. Met name preg_match.
Ok NMe84 ik ga het eens proberen, alvast bedankt voor het opweg helpen. ;)

Verwijderd

Topicstarter
Die preg_match kun je laten zoeken naar bepaalde strings in html code bijvoorbeeld, maar ik weet van te voren toch niet welke string ik wil hebben?
Of hoe werkt die functie precies?

PHP:
1
preg_match ( string pattern, string subject [, array matches [, int flags [, int offset]]])


Als ik nou in de variabele waar de htmlcode in staat een string zoek die begint met "1" en die vervolgens wil afdrukken hoe roep ik dat dan in deze functie aan :|

[ Voor 50% gewijzigd door Verwijderd op 07-06-2004 23:42 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

Verwijderd schreef op 07 juni 2004 @ 23:34:
Die preg_match kun je laten zoeken naar bepaalde strings in html code bijvoorbeeld, maar ik weet van te voren toch niet welke string ik wil hebben?
Of hoe werkt die functie precies?

PHP:
1
preg_match ( string pattern, string subject [, array matches [, int flags [, int offset]]])
Je weet niet welke string je wil hebben, maar je weet wel waar ie staat. Stel alles wat je wil hebben staat tussen <td></td> tags, dan moet je zoeken op iets als dit:
PHP:
1
preg_match("/<td>(.*)<\/td>/iuc", $jouwstring, $matches);
of iets dergelijks. Maar weet waar je aan begint, regexps zijn lastig. ;)

[ Voor 5% gewijzigd door NMe op 07-06-2004 23:43 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
"/iuc" dit snap ik ff niet?

en die $matches is dus waar hij alle goede matches in plaatst of niet in een array?
En hoe druk ik die dan vervolgens af?

[ Voor 5% gewijzigd door Verwijderd op 07-06-2004 23:49 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 24-05 14:53

NMe

Quia Ego Sic Dico.

Verwijderd schreef op 07 juni 2004 @ 23:48:
"/iuc" dit snap ik ff niet?

en die $matches is dus waar hij alle goede matches in plaatst of niet in een array?
En hoe druk ik die dan vervolgens af?
iuc zijn switches, i = case insensitive, u = ungreedy en c weet ik ff niet meer. 8)7

Maar ik wil je nu toch ff doorverwijzen naar de vele regexp tutorials. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Nee bedankt ik begin het al te snappen, ik krijg nu al woorden in websites gevonden en ook meteen afgedrukt, met een tutorial moet het me verder wel lukken.

[ Voor 9% gewijzigd door Verwijderd op 08-06-2004 00:02 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:59

gorgi_19

Kruimeltjes zijn weer op :9

We zijn nu aangekomen op het niveau welke ook beschreven staat in verscheidene tutorials. Niet erg, maar de tutorials zijn daar beter en vollediger in dan de meeste posts :+

Kijk eens in de PW-faq (topic bovenaan de lijst) in het onderdeel van Regular Expressions, daar staat een en ander ook in uitgelegd. Deze kan verder dicht. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1

Dit topic is gesloten.