- brodAsked on March 10, 2011 at 07:36 PM
- DanielGriffinAnswered on March 11, 2011 at 09:09 AM
I'm afraid that it's only possible to send data using HTTP POST, so you would need some intermediary layer or page to handle that for you. I'd recommend sending the data to a custom Thank-you page and then using that page to create a SOAP message. Here's are a link on sending post data and setting up your own thank-you page:
- brodAnswered on April 27, 2011 at 06:57 PM
Thanks for your response. Could you recommend any specific information on creating a SOAP message using post data in a php page?
Here's sample post data from a test form:
Array ( [submission_id] => 169752189996925225 [formID] => 11161509303 [ip] => 98.70.100.07 [firstname] => Don [lastname] => Brown [pidnumber] => 1234-5678-9012 [login] => don1 [height] => 6' 2" [weight] => 175 lbs [eyescolor] => Brn [dateof] => 6-27-1952 )
- DanielGriffinAnswered on April 28, 2011 at 07:28 AM
If your server has it installed, then I'd recommend using PEARs SOAP classes because they are well known and you should be able to find a fair bit of information online. Collect all of the POST data in your thank-you page and then use PHP to format a message. The SOAP_Value's will depend on the SOAP service that you want to talk to. Here are some good links on using PHP as a SOAP client.
The O'Reily link is very good, have a look at that first. Hope this helps. If you have any specific question let me know and i'll see what I can come up with.
- ohsAnswered on April 29, 2011 at 06:01 PM
- brodAnswered on April 29, 2011 at 06:04 PM
Thanks for such complete information! It is really appreciated.
Since I'm already using a custom Thank You page for internal purposes,
is it possible to use some other page or is there another way to collect the
post data in order to send it to the WSDL service?
- DanielGriffinAnswered on April 29, 2011 at 06:26 PM
No problem Don,
I'm afraid not. Its only possible to submit any web form to one page at a time. But you "should" hopefully be able to customize the page to do several things at once. Just split the page logic so that it collects the data, does your internal task and then takes care of the of the messaging.
Sorry for being a bit vague but without looking at the code I am only guessing of course.
Hope this helps,
- brodAnswered on May 18, 2011 at 09:09 PM
I enabled "Send POSTDATA" on the form and placed the following code <? print_r($_POST); ?> on my Thank You page to collect the POSTDATA but it appears that the php is not being processed.
My Thank You page is actually a PMP4 template which is located at: http://www.personalidservices.com/cgi-bin/citizens/pm.cgi?action=form_success. Is there a way to process php in a PMP4 template?
- DanielGriffinAnswered on May 19, 2011 at 05:31 PM
i'm afraid that I can't see that page because it is behind a login. But from the address I can tell that it is actually generated from a cgi script, not PHP. PHP can run as a cgi so it's not impossible - just unusual. I haven't heard of PMP4 before so I've been searching the web for it, but I can't seem to find anything relevant to web development. Do you have any more information on it that would help me to figure it out?
- brodAnswered on May 19, 2011 at 06:09 PM
Sorry for the abbreviation. PMP4 is Interlogy's Profile Manager Premium 4.
Here's the code on the Thank You page:
<table width="680" border="0" align="center" cellpadding="0" cellspacing="0">
<p class="style86">Thank You for registering!</p>
<p>Click the <span class="style85">Submit</span> button to continue. </p>
<form action=pm.cgi method=post>
<input type=hidden name=action value=login>
<input type=hidden name=action value=modified>
<input type=hidden name=login value="%%login%%">
<input type=hidden name=ID value="%%ID%%">
<input name="form_sent" type="hidden" id="form_sent" value="Yes">
<font size="2" face="Verdana">Login Name: </font>
<input type=text color=grey name=login size=25 value=%%login%%>
<font size="2" face="Verdana">Password: </font></td>
<input type=password color=grey name=password value=%%password%% size=25> </td></tr>
<p align="center"><span class="style33">
Form sent - Click Submit button to continue. </span></p>
<p align="center"><input type="submit" name="submit" value="Submit"></p>
<p><? print_r($_POST); ?>
- DanielGriffinAnswered on May 19, 2011 at 06:23 PM
Thanks Don. I'm not really familiar with other interlogy products but judging by the form action specified in the code you've posted and a quick look at the PMP4 documentation, I see that it is indeed a cgi program creating the page... so you are probably out of luck with the PHP option I'm afraid. However interolgoy support might be able offer some other solution. You can contact them directly here:
Just reference this thread. in the meantime I will assign your problem to the next level on jotform.com since there are a few developers working on both products - hopefully one of them will be able to help you.
Thanks for you ongoing patience,
- brodAnswered on May 19, 2011 at 06:33 PM
Since PHP won't work on that page, I'm thinking of using a workaround like the following, which should allow the processing of the POST DATA on a regular .php page which wouid act as the form "Thank You" page, and then redirect to the actual Thank You page. I just have to figure out how to process the POST DATA for the WSDL service.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<p><? print_r($_POST); ?></p>
header( 'Location: http://www.personalidservices.com/cgi-bin/citizens/pm.cgi?action=form_success' ) ;
- DanielGriffinAnswered on May 19, 2011 at 07:05 PM
Yes, if you can create some intermediary PHP page like that to handle the SOAP stuff, then that would get around your problem. To capture and use the field data, first check out this link:
Basically you are going to be using the name of each field in the form to identify the correct post value. So lets say there is a field named text_name (check the source code of your form for the correct names).
your PHP would be :
$name = $_POST['text_name'];
Note that you are loading the value that comes from the html page (text_name) into a new PHP variable named "$name".
Once you've done this for every field then you can start to work with the data. You can check that you've read it successfully by trying to write it out like so
Once that's working have a look at the links i've posted above.
However, Interlogy might still have a better solution than this!! So i'd recommend checking with them first.
- khrisellAnswered on July 04, 2013 at 06:50 PMGreetings!We are happy to announce that we have released Jotform Webhooks, this feature would replace Send Post Data + Custom URL Thank You Page workaround in order to help you transfer forms data to your own database using your own script codes.
To know more about Jotform Webhooks, please click here.
Thank you for using JotForm. :)