471,336 Members | 1,022 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,336 software developers and data experts.

sending basic data between php functions on internet

Hey can U help me with the following?

I would like to send basic data (like a set of integers & strings) from
one php function to another php function.

Sounds easy, However, the functions are located on a different computer.

Or, said differently, I would like to use

function oncomp1($integer1, $string1, $string2)
{
// ...
//string3 = function of string2

//<-- call oncomp2($string1,$string3,$integer1);
}

where function oncomp1 is on computer 1, and oncomp2 is on computer 2.

What to do?
The strings can be to long (a few kb) to pass it simply in the URL.
However WDDX is heavily overkill, because u need to compile php with
--enable-wddx to use those functions. And WDDX do not cover communnication.

Greetings,
Edwin
Jul 17 '05 #1
4 1472
Edwin Rozie wrote:

Hi Edwin,
Hey can U help me with the following?

I would like to send basic data (like a set of integers & strings) from
one php function to another php function.

Sounds easy, However, the functions are located on a different computer.

Or, said differently, I would like to use

function oncomp1($integer1, $string1, $string2)
{
// ...
//string3 = function of string2

//<-- call oncomp2($string1,$string3,$integer1);
}

where function oncomp1 is on computer 1, and oncomp2 is on computer 2.

What to do?
The strings can be to long (a few kb) to pass it simply in the URL.
However WDDX is heavily overkill, because u need to compile php with
--enable-wddx to use those functions. And WDDX do not cover
communnication.
Why not post it to a receiving script on server2?
You can mimic a posting using CURL.
www.php.net -> find CURL

Good luck!

Regards,
Erwin Moller


Greetings,
Edwin


Jul 17 '05 #2
> Why not post it to a receiving script on server2?
You can mimic a posting using CURL.
www.php.net -> find CURL


I remember that I've found a PHP script that mimics posting. It's
somewhere on www.php.net, in user comments under "POST" I believe.

Cheers
Mike

Jul 17 '05 #3
Hey all :)

Michał Woźniak wrote:
I remember that I've found a PHP script that mimics posting. It's
somewhere on www.php.net, in user comments under "POST" I believe.

Do u remember more details about the script? I readed
http://be.php.net/variables.external completly and didnt found it.
Google couldnt help me neether, I tryed multiple searches.

Thx for helping me out!
Jul 17 '05 #4
Michał Woźniak wrote:
Why not post it to a receiving script on server2?
You can mimic a posting using CURL.
www.php.net -> find CURL

I remember that I've found a PHP script that mimics posting. It's
somewhere on www.php.net, in user comments under "POST" I believe.


Ah, I found it :)

For the people who want to use this in the future: It is in a reply of
lukas on http://be2.php.net/manual/en/ref.curl.php.

The script is:

<?
function HTTP_Post($URL,$data, $referrer="") {

// parsing the given URL
$URL_Info=parse_url($URL);

// Building referrer
if($referrer=="") // if not given use this script as referrer
$referrer=$_SERVER["SCRIPT_URI"];

// making string from $data
foreach($data as $key=>$value)
$values[]="$key=".urlencode($value);
$data_string=implode("&",$values);

// Find out which port is needed - if not given use standard (=80)
if(!isset($URL_Info["port"]))
$URL_Info["port"]=80;

// building POST-request:
$request.="POST ".$URL_Info["path"]." HTTP/1.1\n";
$request.="Host: ".$URL_Info["host"]."\n";
$request.="Referer: $referer\n";
$request.="Content-type: application/x-www-form-urlencoded\n";
$request.="Content-length: ".strlen($data_string)."\n";
$request.="Connection: close\n";
$request.="\n";
$request.=$data_string."\n";

$fp = fsockopen($URL_Info["host"],$URL_Info["port"]);
fputs($fp, $request);
while(!feof($fp)) {
$result .= fgets($fp, 128);
}
fclose($fp);

return $result;
}

$output1=HTTP_Post("http://www.server1.com/script1.php",$_POST);
$output2=HTTP_Post("http://www.server2.com/script2.php",$_POST);
?>
Jul 17 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

1 post views Thread by coder_1024 | last post: by
2 posts views Thread by Fernando Barsoba | last post: by
reply views Thread by Jonathan Woods | last post: by
19 posts views Thread by ... | last post: by
4 posts views Thread by david | last post: by
reply views Thread by rosydwin | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.