0

I am sending data from a wordpress form in one site to another third party website. When I print_r() the array data on the wordpress form , it displays

Array ( 
[comp_title] => Test incident title 
[comp_desc ] => Officers reported are: first fname officer first lname officer , second fname officer second lname officer , third fname officer third lname officerLocation: locationDescription: desc 
[fullname] => Test reporter fnameTest reporter lname 
[email] => [email protected] [phonno] => 0700123456 
[anonymous] => 0 
[fac_id] => 24576 
)

However, on the third party site, when I use var_dump($_GET), it displays array(0).

This is php code from the wordpress site:

add_action("gform_after_submission_1", "set_post_content", 10, 2);
function set_post_content($entry, $form){

//set POST variables
$post_url= 'http://example.com/form_api.php';

$body= array(
'comp_title' =>     urlencode($entry['1']),
'comp_desc' =>     urlencode('Officers reported are: '.$entry['4.3'].' '.$entry['4.6'].' , '.$entry['14.3'].' '.$entry['14.6'].' , '.$entry['13.3'].' '.$entry['13.6'].'. Location: '.$entry['5'].'. Description: '.$entry['6']),
'fullname' =>  urlencode($entry['8.3'].' '.$entry['8.6']),  
'email' =>     urlencode($entry['10']),
'phonno' =>    urlencode($entry['9']),
'anonymous' => urlencode(0),
'fac_id' =>    urlencode(24576)
);

 $fields_string = http_build_query($body);

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $post_url);
curl_setopt($ch,CURLOPT_POST, count($body));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);

$result = curl_exec($ch);

curl_close($ch);

}      

Then on form_api.php on the third party application i have:

$fac_id =  mysql_real_escape_string($_GET['fac_id']);
$comp_title = mysql_real_escape_string(strtoupper($_GET['comp_title']));
$comp_desc = mysql_real_escape_string($_GET['comp_desc']);
$fullname =mysql_real_escape_string($_GET['fullname']);
$email = mysql_real_escape_string($_GET['email']);
$phonno = mysql_real_escape_string($_GET['phonno']);

What could i be doing wrong?

2
  • 1
    You should work with $_POST superglobal I think, not $_GET. Commented Feb 12, 2014 at 19:58
  • Sure, works well now. Commented Feb 12, 2014 at 20:02

1 Answer 1

1

You're trying to grab GET data, but you are sending the request via POST. Try grabbing $_POST['fac_id'] instead of $_GET['fac_id'].

Sign up to request clarification or add additional context in comments.

2 Comments

I can't believe i have been debugging this a whole day yet it was this simple. Thank you.
You're welcome, man! Sometimes it just takes a second pair of eyes.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.