How to POST data from a PHP file POST data, no form and hidden variables
-------------------------------------------------- ----------------------------------------------
You can use the following functions:
PHP
Function PostTohost ($ URL, $ DATA) {
$ URL = PARSE_URL ($ URL);
IF (! $ URL) Return "Couldn't Parse URL";
IF (! isset ($ URL ['Port'])) {$ URL ['Port'] = ""
IF (! isset ($ URL ['Query']) {$ URL ['Query'] = ""
$ encoded = "";
While (List ($ K, $ V) = Each ($ DATA)) {
$ encoded. = ($ encoded? "&": "");
$ encoded. = Rawurlencode ($ K). "=". Rawurlencode ($ V);
}
$ fp = fsockopen ($ URL ['Host'], $ URL ['Port']? $ URL ['Port']: 80);
IF (! $ fp) Return "failed to open socket to $ url [host]";
FPUTS ($ FP, SPRINTF ("Post% S% S% S HTTP / 1.0 / N", $ URL ['PATH'], $ URL ['Query']? "": "", $ URL ['Query ']));
FPUTS ($ FP, "Host: $ URL [Host] / N");
FPUTS ($ FP, "Content-Type: Application / X-WWW-FORM-URLENCODED / N");
FPUTS ($ FP, "Content-Length:". Strlen ($ encoded). "/ n");
FPUTS ($ FP, "Connection: Close / N / N");
FPUTS ($ FP, "$ Encoded / N");
$ line = fgets ($ FP, 1024);
IF (! EREGI ("^ http / 1 / .. 200", $ line)) Return;
$ results = ""; $ INHEADER = 1;
While (! Feof ($ fp)) {
$ line = fgets ($ FP, 1024);
IF ($ INHEADER && ($ line == "/ n" || $ line == "/ r / n")) {
$ INHEADER = 0;
}
Elseif (! $ inheader) {
$ results. = $ line;
}
}
Fclose ($ fp);
Return $ Results;
}
?>
-------------------------------------------------- ------------------------------------------------
It can also be
PHP
$ URL = "www.mysite.com/test.php"; $ CH = curl_init ();
CURL_SETOPT ($ Ch, curlopt_url, "https: // $ URL");
CURL_SETOPT ($ CH, CURLOPT_POST, 1);
CURL_SETOPT ($ CH, CURLOPT_POSTFIELDS, "DATA1 = Blah & Data2 = Blah");
CURL_EXEC ($ CH);
CURL_CLOSE ($ CH);
?>