HTML DOM php

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3 4 5 6 volgende »

Keizer Webdesign

Keizer Webdesign

02/12/2012 23:48:03
Quote Anchor link
Waar dat voor staat weet ik niet precies ik heb deze uitleg een beetje gevolgt: http://stackoverflow.com/questions/5177688/simple-html-dom-parser-for-multiple-urls
De fout die hij weer geeft is dit: Fatal error: Call to undefined function str_get_html()
Gewijzigd op 02/12/2012 23:52:41 door Keizer Webdesign
 
PHP hulp

PHP hulp

24/11/2024 17:46:42
 
- Ariën  -
Beheerder

- Ariën -

02/12/2012 23:51:40
Quote Anchor link
Logisch, die functie bestaat ook niet. Wat verwacht je van die functie?
En vertel in het vervolg waar je op vastloopt, i.p.v. vaag te vertellen dat iets niet werkt. Daar kunnen we niks mee.
Gewijzigd op 02/12/2012 23:52:33 door - Ariën -
 
Keizer Webdesign

Keizer Webdesign

02/12/2012 23:53:49
Quote Anchor link
Ik verwacht dat die van meerderen $linken, 1 $link maakt.
Gewijzigd op 02/12/2012 23:54:21 door Keizer Webdesign
 
- Ariën  -
Beheerder

- Ariën -

02/12/2012 23:54:08
Quote Anchor link
Dan moet je die functie maken. Voor mij staat $linken en $link gelijk aan a en b wat mij echt totaal niets zegt.

Dus wees eens wat duidelijker, en zeg even wat je precies wilt, graag met voorbeelden.
Gewijzigd op 02/12/2012 23:55:56 door - Ariën -
 
Keizer Webdesign

Keizer Webdesign

03/12/2012 00:22:29
Quote Anchor link
Dan zou ik graag willen dat ik van A,B samen, C kan maken.
Waarin A een link is en B een link.
En ik wil A B samen voegen naar de naam C.
Zodat ik een code kan schrijfen die elementen pakt uit beide links want die paginas zij toch exact het zelfde.
Is het zo duidelijker geworden?
Gewijzigd op 03/12/2012 00:25:17 door Keizer Webdesign
 
- Ariën  -
Beheerder

- Ariën -

03/12/2012 00:26:10
Quote Anchor link
je wilt een nieuwe XML-feed genereren aan de hand van twee andere feeds? Klopt dat?
 
Keizer Webdesign

Keizer Webdesign

03/12/2012 00:40:48
Quote Anchor link
Nee, dat van wat ik zei met info in xml zetten wil ik niet meer. ik wil van die pagina van sbs: sbs6.nl/ajax/video/1, sbs6.nl/ajax/video/2 --A,B daar van wil ik een $... maken die van die 2 feeds 1 $ maakt waar ik dus afbeelding bijv. Uit kan halen met dom html. Is zoiets mogelijk?
 
- Ariën  -
Beheerder

- Ariën -

03/12/2012 00:44:17
Quote Anchor link
Je kan de strings toch met elkaar verbinden, met behulp van file_get_contents().

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$alles
= $programma1.$programma2.$programma3.$etc
echo $alles;
?>
 
Keizer Webdesign

Keizer Webdesign

03/12/2012 20:06:11
Quote Anchor link
het werkt nog steeds niet:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$page1
= file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
$page2 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/2');
$page3 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/3');
$page4 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/4');
$page5 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/5');
$page6 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/6');
$page7 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/7');
$page8 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/8');
$page9 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/9');

$html = ($page1.$page2.$page3.$page4.$page5.$page6.$page7.$page8.$page9);
$html = strip_tags($html, "<img></img>");
echo $html;

echo '<pre>' . $html . '</pre>';
?>


De fout zit hem in deze regel:
$html = ($page1,$page2,$page3,$page4,$page5,$page6,$page7,$page8,$page9);

Maar wat gaat er fout?

Toevoeging op 03/12/2012 20:08:23:

het is al opgelost, moesten punten zijn S:
Gewijzigd op 03/12/2012 20:10:05 door Keizer Webdesign
 
Eddy E

Eddy E

03/12/2012 20:13:00
Quote Anchor link
Leuke is dat de code hier op het forum wel goed is....
 
Keizer Webdesign

Keizer Webdesign

03/12/2012 20:17:07
Quote Anchor link
Ik zit nu nog met een probleem want als ik dit wil uit voeren:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$page1
= file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
$page2 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/2');
$page3 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/3');
$page4 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/4');
$page5 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/5');
$page6 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/6');
$page7 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/7');
$page8 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/8');
$page9 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/9');

$html = ($page1.$page2.$page3.$page4.$page5.$page6.$page7.$page8.$page9);

  // strip alles behalve de <img>'s (en kale tekst...)
    $html = strip_tags($html, "<img></img>");
    
    // maak de src kloppend, want hoe weet je browser waar je het vandaan moet halen?
    $html = str_replace('src="/', 'src="http://www.sbs6.nl/', $html);

    // neem nu alle afbeeldingen (eventueel kan regel 7 dus weg)
    preg_match_all('/(<img[^>]+>)/i', $html, $imgs);

    // en laat eens gewoon zien wat we hebben...
    // je zou die [0] weg kunnen halen: dan krijg je alles dubbel...

    echo '<pre>' . print_r($imgs[0], true) . '</pre>';


?>


dan krijg ik dit : https://dl.dropbox.com/u/23857343/Knipsel.JPG

maar ik wil dat die:

Array
(
[0] =>
....

weggaan maar dat lukt niet.
 
- Ariën  -
Beheerder

- Ariën -

03/12/2012 20:18:16
Quote Anchor link
print_r() heb je daar al naar gekeken? Die toont (voor debugdoeleinden) een array. Niet gewenst voor live-gang van een site.

Nu nog even met foreach je array doorlopen, en je bent klaar.
Gewijzigd op 03/12/2012 20:21:24 door - Ariën -
 
Eddy E

Eddy E

03/12/2012 20:22:13
Quote Anchor link
Ja, 't is prima dat je mijn code gebruikt, maar probeer wel even te snappen wat wat doet.
Ik toon alleen maar dat je alles hebt. Wat je met de waarden in de array $imgs doet, moet je zelf weten.
 
Keizer Webdesign

Keizer Webdesign

04/12/2012 13:17:13
Quote Anchor link
als ik die echo verander van:
echo '<pre>' . print_r($imgs[0], true) . '</pre>';
naar:
echo '' . $imgs[0], true . '';
of
echo '' . $imgs . '';

werkt het nog steeds niet maar wat doe ik fout dan
 
- Ariën  -
Beheerder

- Ariën -

04/12/2012 13:20:36
Quote Anchor link
Een array is een verzameling van data. Die data kan je rauw tonen met print_r(), maar dat is alleen voor test-doeleinden.

Je zult dus (zoals ik net zei) met foreach() je array moeten doorlopen, als je tenminste alles eruit wilt tonen.
 
Keizer Webdesign

Keizer Webdesign

04/12/2012 14:37:22
Quote Anchor link
maar wat moet er dan in foreach() staan:

foreach ($html as $img) {
echo '<pre>' . $imgs . '</pre>';
}
 
- Ariën  -
Beheerder

- Ariën -

04/12/2012 15:32:11
Quote Anchor link
$imgs[0] is in dit geval een array, en verder raad ik je aan om eens op http://php.net/foreach te kijken.
Daar staat duidelijk uitgelegd met voorbeelden hoe je een array uit kan lezen.
 
Michel Falke

Michel Falke

04/12/2012 16:13:58
Quote Anchor link
Ik raad je aan om eerst uberhaupt eens een programmeertaal te leren, want als je niet weet wat een array is dan kun je beter stoppen.. Volg wat online tutorials en leer eerst is wat voordat je iets gaat maken waarvan je niet eens weet wat het doet!
 
Keizer Webdesign

Keizer Webdesign

08/12/2012 16:00:02
Quote Anchor link
Het is al gelukt bedankt!

Maar nu heb ik weer een nieuwe vraag hoe zet ik dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
// set the default timezone to use. Available since PHP 5.1
date_default_timezone_set('GMT');

// Makes from http://roostereemland.nl/49/c a parsing url
file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c');

       $eg1a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00001.htm');
       $eg1b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00002.htm');
       $ehv1c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00003.htm');
       $ehv1d    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00004.htm');
       $ehv1e    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00005.htm');
       $ehv1f    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00006.htm');
       $ehv1g    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00007.htm');
       $ehv1h    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00008.htm');
       $emh1k    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00009.htm');
       $emh1l    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00010.htm');
       $emh1m    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00011.htm');
       $emh1n    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00012.htm');
       $eg2a     = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00013.htm');
       $eg2b     = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00014.htm');
       $ehv2c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00015.htm');
       $ehv2d    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00016.htm');
       $ehv2e    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00017.htm');
       $ehv2f    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00018.htm');
       $ehv2g    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00019.htm');
       $em2a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00020.htm');
       $em2b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00021.htm');
       $em2c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00022.htm');
       $eg3a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00023.htm');
       $ev3b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00024.htm');
       $ev3c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00025.htm');
       $eh3a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00026.htm');
       $eh3b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00027.htm');
       $eh3c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00028.htm');
       $eh3d    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00029.htm');
       $em3a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00030.htm');
       $em3b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00031.htm');
       $ev4a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00032.htm');
       $ev4b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00033.htm');
       $eh4a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00034.htm');
       $eh4b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00035.htm');
       $eh4c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00036.htm');
       $eh4d    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00037.htm');
       $em4a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00038.htm');
       $em4b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00039.htm');
       $ev5a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00040.htm');
       $ev5b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00041.htm');
       $ev5c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00042.htm');
       $eh5a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00043.htm');
       $eh5b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00044.htm');
       $eh5c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00045.htm');
       $ev6a    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00046.htm');
       $ev6b    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00047.htm');
       $ev6c    = file_get_contents('http://www.roostereemland.nl/dagrooster/'. date("W").'/c/c00048.htm');
  
      
?>


In dit(het scriptje heb ik gebruikt voor uitzending gemist maar ik weet niet meer hoe ik het heb gedaan dus wat ik wel en niet moet aanpassen):

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
// Kijk of er een id in de URL is meegegeven.
if (isset($_GET[ 'id' ])) {
    showDetailPage( $_GET[ 'id' ] );
}
else {
    showOverviewPage();
}


function
getUitzendingData()
{

    if (FALSE === ($sUitzendingGemistString = file_get_contents( 'http://iphone-api.uitzendinggemist.nl/v1/episodes.json' ))) {
        return FALSE;
    }

    return json_decode( $sUitzendingGemistString, TRUE );

}

function
showDetailPage( $iId )
{

    // Probeer lijst van uitzendinggemist te downloaden.
    if (FALSE === ($aUitzendingGemistArray = getUitzendingData())) {
        echo 'Geen uitzendingdata beschikbaar';
    }
else {

        // Loop door de array heen en print per element de title en een IMG tag met het plaatje.
        foreach ( $aUitzendingGemistArray AS $aUitzending ) {
            if ($aUitzending[ 'id' ] == $iId) {
                echo    '<li class="withimage">
                <a class="noeffect" href="'
. $aUitzending[ 'video' ][ 'm3u8' ] . '">
                <img alt=" " src="'
. $aUitzending[ 'image' ] . '">
                <span class="name">'
. $aUitzending[ 'title' ] . '</span>
                <span class="comment"></span>
                <span class="arrow"></span>
                </a>
            </li>'
;
            }
        }
    }
}

function
showOverviewPage()
{

    // Probeer lijst van uitzendinggemist te downloaden.
    // Probeer lijst van uitzendinggemist te downloaden.

    if (FALSE === ($aUitzendingGemistArray = getUitzendingData())) {
        echo 'Geen uitzendingdata beschikbaar';
    }
else {
        echo "<ol>";
        // Loop door de array heen en print per element de title en een IMG tag met het plaatje.
        foreach ( $aUitzendingGemistArray AS $aUitzending ) {

            echo    '<li class="withimage">
        <a class="noeffect" href="?id='
. $aUitzending[ 'id' ] . '">
        <img alt=" " width=50 src="'
. $aUitzending[ 'thumbnails' ][ 0 ][ 'url' ] . '">
        <span class="name">'
. $aUitzending[ 'title' ] . '</span>
        <span class="comment"></span>
        <span class="arrow"></span>
        </a>
        </li>'
;
        }

        echo "</ol>";
    }
}


?>


Het is de bedoeling dat er voor alle klassen(eg1a t/m ev6c)een aparte pagina is.
Gewijzigd op 08/12/2012 16:05:42 door Keizer Webdesign
 
- Ariën  -
Beheerder

- Ariën -

08/12/2012 20:56:11
Quote Anchor link
Om te beginnen kan je die herhalende codes eerst in een array zetten.
 

Pagina: « vorige 1 2 3 4 5 6 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.