Post naar extern adres en toon resultaat

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

HP van Hagen

HP van Hagen

31/05/2005 20:30:00
Quote Anchor link
Hallo,

Ik wil graag 1 php pagina die als ik die aanroep een post met onderstaande parameters doet en het resultaat in een iframe laat zien. Ik wil deze code als dit mogelijk is binnen de function content plaatsen.

Wie kan me daarbij helpen??

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
function content()
{

?>

<center>
<br>
<b>HMHC Hoorn Veteranen A - Uitslagen</b>
<br>
<IFRAME SRC="http://www.knhb.nl/app/standenmotor/competitie/asp/roo...perafdeling.asp" NORESIZE SCROLLING=YES HSPACE=0 VSPACE=0 FRAMEBORDER=0 MARGINHEIGHT=0 MARGINWIDTH=0 WIDTH=95% HEIGHT=90%>
<input type="hidden" name="blnExport" value="0">
<input type="hidden" name="soort" value="1030">
<input type="hidden" name="wat" value="beide">
<input type="hidden" name="heren" value="ja">
<input type="hidden" name="dames" value>
<input type="hidden" name="jongens" value>
<input type="hidden" name="meisjes" value>
<input type="hidden" name="afdeling" value="21382">
<input type="hidden" name="dag1" value="27">
<input type="hidden" name="maand1" value="5">
<input type="hidden" name="jaar1" value="2005">
<input type="hidden" name="dag2" value="31">
<input type="hidden" name="maand2" value="5">
<input type="hidden" name="jaar2" value="2005">
</IFRAME>

</center>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
} // end function content
?>


Alvast dank!

HP van Hagen
http://www.vanhagen.net
 
PHP hulp

PHP hulp

13/01/2025 21:20:34
 
Jelmer -

Jelmer -

31/05/2005 20:40:00
Quote Anchor link
Misschien heb je er wat aan:
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
<?php
function senddata($data, $url, $returnoutput = false) {
    if(is_array($data))
    {

        $data = array2string($data);
    }

    $in = "";
    $buffer = gzcompress($data);
    $data = "data=".str2hex($buffer);
    $url_parsed = parse_url($url);
    $host = $url_parsed["host"];
    if (!isset($url_parsed["port"])){
        $port = 80;
    }

    else
    {
        $port = $url_parsed["port"];
    }

    $path = $url_parsed["path"];
    //if url is http://example.com without final "/"
    //I was getting a 400 error

    if (empty($path) || empty($host)){
        trigger_error("Fout: geen path of host bekend", E_USER_ERROR);
        return false;
        break 2;
    }

    if (isset($url_parsed["query"]) && $url_parsed["query"] != ""){
        $path .= "?".$url_parsed["query"];
    }

    $out = "POST $path HTTP/1.0\r\nFrom: [email protected]\r\nUser-Agent: php2p/0.001\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: ".strlen($data)."\r\n\r\n".$data;
    if($fp = fsockopen($host, $port, $errno, $errstr, 20)){
        fwrite($fp, $out);
        if($returnoutput){
            while (!feof($fp)) {
                $in .= fgets($fp, 128);
            }

            return $in;
        }

        else{
            return true;
        }

        fclose($fp);
    }

    else{
        trigger_error("fsockopen ERROR: ".$errno."-".$errstr);
        return false;
    }
}

?>
 
HP van Hagen

HP van Hagen

31/05/2005 21:21:00
Quote Anchor link
Jelmer,

Ziet er goed uit. Ben alleen een beginner. Kun je me wat meer op weg helpen??

Thanks!
HP
 
Jelmer -

Jelmer -

31/05/2005 21:29:00
Quote Anchor link
Ik heb het niet uitgeprobeerd, maar ik vermoed dat het iets in deze richting zal worden:
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
<?php
function senddata($data, $url, $returnoutput = false) {
    $in = "";
    $url_parsed = parse_url($url);
    $host = $url_parsed["host"];
    if (!isset($url_parsed["port"])){
        $port = 80;
    }

    else
    {
        $port = $url_parsed["port"];
    }

    $path = $url_parsed["path"];
    //if url is http://example.com without final "/"
    //I was getting a 400 error

    if (empty($path) || empty($host)){
        trigger_error("Fout: geen path of host bekend", E_USER_ERROR);
        return false;
        break 2;
    }

    if (isset($url_parsed["query"]) && $url_parsed["query"] != ""){
        $path .= "?".$url_parsed["query"];
    }

    $out = "POST $path HTTP/1.0\r\nFrom: [email protected]\r\nUser-Agent: PHP\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: ".strlen($data)."\r\n\r\n".$data;
    if($fp = fsockopen($host, $port, $errno, $errstr, 20)){
        fwrite($fp, $out);
        if($returnoutput){
            while (!feof($fp)) {
                $in .= fgets($fp, 128);
            }

            return $in;
        }

        else{
            return true;
        }

        fclose($fp);
    }

    else{
        trigger_error("fsockopen ERROR: ".$errno."-".$errstr);
        return false;
    }
}


//voorbeeld:
echo senddata("name=jelmer\[email protected]\nschool=niets", "http://www.google.nl", true);
?>
 
HP van Hagen

HP van Hagen

31/05/2005 21:42:00
Quote Anchor link
Hoi,

Ik heb meer het idee dat dit met mailen te maken heeft.

Weet niet waar ik mijn parameters moet zetten om de pagina keurig terug te krijgen???

HP
 
Jelmer -

Jelmer -

31/05/2005 22:35:00
Quote Anchor link
Mail is ook via hetzelfde princype, alleen is het dan de browser die naar een pagina toe gaat. Met mijn script komt de pagina als het ware naar de browser toe.
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
<?php
[insert funcie senddata() hier]

$waarden = "blnExport=0\n";
$waarden .= "soort=0\n";
$waarden .= "wat=beide\n";
$waarden .= "heren=ja\n";
$waarden .= "afdeling=21382\n";
$waarden .= "dag1=27\n";
$waarden .= "maand1=5\n";
$waarden .= "jaar1=2005\n";
$waarden .= "dag2=31\n";
$waarden .= "maand2=5\n";
$waarden .= "jaar2=2005\n";

$url = "http://www.knhb.nl/app/standenmotor/competitie/asp/roo...perafdeling.asp";

$aangevraagdepagina =  senddata($waarden, $url, true);
?>

$aangevraagdepagina zal (als het goed is) nu de pagina bevatten die jij anders voorgeschoteld krijgt als je met je browser een of ander formuliertje op de knvbsite invlud, die deze waarden meestuurd.
Nu kun je bijvoorbeeld de resultaten van de opmaak van de pagina gaan proberen te schijden, maar je kun ook gewoon
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $aangevraagdpagina; ?>
doen en je krijgt de pagina te zien, en dat nog wel op je eigen website. Houd er wel rekening mee dat de links en de plaatjes dan vaak niet werken.

Wat je ook nog kunt doen (stukken simpeler) is een met-form maken, waar je zo te zien al mee bezig was, en die met javascript weg sturen.
<IFRAME SRC="pagina.html" NORESIZE SCROLLING=YES HSPACE=0 VSPACE=0 FRAMEBORDER=0 MARGINHEIGHT=0 MARGINWIDTH=0 WIDTH=95% HEIGHT=90%></IFRAME>

painga.html:
<html>
<body onload="document.forms[0].submit()">
<form method="POST" action="http://www.knhb.nl/app/standenmotor/competitie/asp/roo...perafdeling.asp">
<input type="hidden" name="blnExport" value="0">
<input type="hidden" name="soort" value="1030">
<input type="hidden" name="wat" value="beide">
<input type="hidden" name="heren" value="ja">
<input type="hidden" name="dames" value>
<input type="hidden" name="jongens" value>
<input type="hidden" name="meisjes" value>
<input type="hidden" name="afdeling" value="21382">
<input type="hidden" name="dag1" value="27">
<input type="hidden" name="maand1" value="5">
<input type="hidden" name="jaar1" value="2005">
<input type="hidden" name="dag2" value="31">
<input type="hidden" name="maand2" value="5">
<input type="hidden" name="jaar2" value="2005">
</FORM>
</body>
</html>


PS: iFrame-tags lijken net als textarea-tags, alsof je er iets tussen kunt zetten. Niets is minder waar. Je kunt alleen een pagina in een iFrame krijgen door de source (src-attribuut) in te vullen.
 



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.