Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Sending HTTP POST thru fsockopen?

Posted on 2011-03-23
2
Medium Priority
?
392 Views
Last Modified: 2012-05-11
The task seems simple. I want to use fsockopen to post variables to another page.

Just to give you an idea how I want it to work... This is being used for adding user accounts into two separate databases on different websites. The user fills out a form, the $_POST variables are used to create a user account in the main database, then I want to send those variables to another page (through fsocket) to setup the account on the secondary databse.

Here's what I have so far (I will provide all pieces that I'm using for testing):

The Form:
<form action="testprocess.php" method="post">
First Name: <input type="text" name="first_name" size="20"><br /><br />
Last Name: <input type="text" name="last_name" size="20"><br /><br />
<input type="submit" value="Submit">
</form>

Open in new window



Main Processing Script  "testprocess.php"
<?
$first_name = urlencode($_POST['first_name']);
$last_name = urlencode($_POST['last_name']);

// Here would be all my functions that I want my script to do before sending the post variables to the other web site. 

$req = "first_name=".$first_name;
$req .= "&last_name=".$last_name;

// post back to PayPal system to validate
$header .= "POST /insertacct.php HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ('demo.mysite.com', 80, $errno, $errstr, 30);
fputs ($fp, $header . $req);
fclose ($fp);

header("location: test.php?chk=1");
?>

Open in new window



Insert Account Page
(this is the "behind-the-scenes" page that will be on a different website)
<?
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];

  mysql_query(" INSERT INTO `users`  (`last_name` , `first_name`)  VALUES ('$last_name','$first_name')") or die(mysql_error());
?>

Open in new window




The address of my script would be:
http://ecafe.mydomain.com/insertacct.php
Hopefully, it doesn't matter that it is a Subdomain.

0
Comment
Question by:tonyhhisc
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 3

Accepted Solution

by:
WebCricket earned 2000 total points
ID: 35200437
If you want to use fsocket open, I would use this script http://www.php.net/manual/en/function.fsockopen.php#101872 but I highly recommend using cURL for this sort of operation. CURL can handle all the heavy lifting for you.
0
 

Author Closing Comment

by:tonyhhisc
ID: 35210445
Thanks I used CURL
0

Featured Post

Survive A High-Traffic Event with Percona

Your application or website rely on your database to deliver information about products and services to your customers. You can’t afford to have your database lose performance, lose availability or become unresponsive – even for just a few minutes.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Originally, this post was published on Monitis Blog, you can check it here . It goes without saying that technology has transformed society and the very nature of how we live, work, and communicate in ways that would’ve been incomprehensible 5 ye…
CTAs encourage people to do something specific to show interest in your company, product or service. Keep reading to learn why CTAs should always be thought of as extremely important, albeit small, sections of websites.
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to count occurrences of each item in an array.

670 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question