itcetera Posts:13
|
11-03-2009 12:30 PM |
|
I saw somewhere that you could use Dynamic forms with iContact.
I tried just adding the iContact form in a text module in DNN 5.1 but it doesn't work (won't add the record or redirect after that.
So if Dynamic forms can be used - I would be really happy!
All I want to do is get someone's email, send that email to the remote iContact list and redirect to another DNN page on my site.
Can someone tell me how to do this with Dynamic forms? (or alternatively, tell me how to fix the form that doesn't work in the text module (it does work on a static html page but not in the html module of DNN???
Thanks
- wayne |
|
|
|
|
David To
river guide Posts:2719
|
11-03-2009 01:33 PM |
|
HI, for Dynamic Forms, you can create a an email shortname of type textbox called "Email" under Control Panel / Manage Questions. This is the textbox that a user can type in their email address. Then under Control Panel / Completion Events, you will create two types of events (URL / Redirection and Email) with them both triggered for any field response. In the email event, the To email: $(Email) I hope this answers your question. Please try it out and if you have any issues, feel free to reply back. -- David |
|
|
|
|
itcetera Posts:13
|
11-06-2009 02:24 PM |
|
OK - I think I'm close. It needs a http Post + the redirect. The redirect works fine - the post is not right. There are two fields to fill:
HTTP: Post URL:
Which I put:
https://app.icontact.com/icp/signup.php
HTTP Post: which I put:
"return verifyRequiredXXXX();" accept-charset="UTF-8" id="icpsignupXXXX" name="icpsignup" class="signupform"
I'm not sure what the correct entry is for iContact
Here's the Icontact form post:
<form> width="305" onsubmit="return verifyRequired2653();" accept-charset="UTF-8" id="icpsignup2653" name="icpsignup" class="signupform" action="https://app.icontact.com/icp/signup.php" method="post">
var icpForm2653 = document.getElementById('icpsignup2653');
if (document.location.protocol === "https:")
icpForm2653.action = "https://app.icontact.com/icp/signup.php";
function verifyRequired2653() {
if (icpForm2653["fields_email"].value == "") {
icpForm2653["fields_email"].focus();
alert("The Email field is required.");
return false;
}
return true;
}
</form>
-----------------
The form has all the hidden field - the same as the icontact form. I just don't know the correct format for the POST field (maybe other items???
What should be changed?
|
|
|
|
|
itcetera Posts:13
|
11-10-2009 03:04 PM |
|
David,
Any help on getting this iContact form working - iContact tech support was zero help and I think its a matter what goes where? I keep getting email error: "An error occured during your email list submission. "
See my last post.
Gotta find the solution!
- wayne |
|
|
|
|
David To
river guide Posts:2719
|
11-11-2009 09:03 AM |
|
HI, can you export your form to www.betasprings.com (username: host, password: dnnhost) and send us the URL/TABID so I can take a look at it and see if I can determine what the problem is? Thanks. -- David |
|
|
|
|
itcetera Posts:13
|
11-11-2009 03:24 PM |
|
Sure - not exactly sure how to do that from one site to another. Sorry - can you give me a few steps on how to export to your site. If I export the page - I get a template. But exporting the form itself?? I'm a quick learner |
|
|
|
|
David To
river guide Posts:2719
|
11-12-2009 05:06 AM |
|
Hi, quick instructions: 1) there's a little down arrow icon on your DF page title, click on it and you should see "Export Content" as part of the drop down option 2) choose "Export Content", pick a directory on your website portal, and type in a name or leave as default name 3) go to Admin / File Manager and find the directory / filename and click on it to save to your local hard drive 4) log into www.betasprings.com (username: host, password: dnnhost) 5) go to Admin / File Manager and upload the XML file you saved 6) create a new page under DF parent page 7) load the DF module onto the page and choose the little down arrow to "Import Content" and find your file that you uploaded -- David |
|
|
|
|
itcetera Posts:13
|
11-12-2009 05:22 AM |
|
I'm fine with Steps 3 - 7... But Can't find "Export Content"?? The Control Panel has EXPORT - but that creates a template file - not an XML ... Are ther some site settings I need to change to have it produce an XML instead? The other "arrow" - for the module itself doesn't show any EXPORT option either. So what am I missing? |
|
|
|
|
David To
river guide Posts:2719
|
11-12-2009 05:47 AM |
|
It's not on the Control Template. It's the little down arrow on your DF module on that page. -- David |
|
|
|
|
itcetera Posts:13
|
11-12-2009 06:00 AM |
|
I'm using DF 2.70.5. Under the Module drop-down there is...
Print
(space)
Setting
Delete
Refresh
(space)
Move
Manage Questions/Settings
View Form Results
Advanced Features
...that's it??? Do I need to reinstall??? |
|
|
|
|
David To
river guide Posts:2719
|
11-12-2009 06:21 AM |
|
HI, very weird that you don't have Import/Export Content on your module drop-down. Let's debug your HTTP post instead. Do you know what variables / querystring parameters the HTTP post is expecting? Try to hard-code in the complete URL and see if it accepts. Then list the URL here and we can narrow down your HTTP post parameters relating to the Dynamic Forms above. -- David |
|
|
|
|
itcetera Posts:13
|
11-12-2009 06:40 AM |
|
when I put the whole URl and action post on the URL Post line, I got this error: A critical error has occurred. The remote server returned an error: (501) Not Implemented. So I put: https://app.icontact.com/icp/signup.php for the URL line and: class="firstform" name="icpsignup" id="icpsignup2653" accept-charset="UTF-8" onsubmit="return verifyRequired2653();" for the post. The Form has: (form method="post" action="https://app.icontact.com/icp/signup.php" class="firstform" name="icpsignup" id="icpsignup2653" accept-charset="UTF-8" onsubmit="return verifyRequired2653();") |
|
|
|
|
David To
river guide Posts:2719
|
11-12-2009 07:47 AM |
|
HI, I believe your form POST statement is incorrect. It should be something like this: &class=$(shortnameforclass)&name=$(shortnameforname)&id=$(shortnameforID)&accept-charset=UTF-8&onsubmit=return verifyRequired2653; but replace "shortnameforclass", "shortnameforname", and "shortnameforID" for the shortname fields on your Dynamic Forms page. Also, when you set up an HTTP post, be sure to send an email to yourself / admin to see what actual parameters are being passed. Another option is to turn on debug mode (click on Enable Debug Mode) and then fill out the entire form and click submit and see what is being processed. -- David |
|
|
|
|
itcetera Posts:13
|
11-12-2009 08:57 AM |
|
The form has one visible field:
fields_email
And several hidden fields:
listid value: 9906761
specialid:9906761 value: 50V5
clientid value: 21195
icpsignup2653 value: 2653
reallistid value: 1
doubleopt value: 0
redirect
value: http://affluentsalestraining.com/Ar...fault.aspx
errorredirect
value:
http://www.icontact.com/www/signup/error.html
I then used this for the Http POST URL:
https://app.icontact.com/icp/signup.php
and this for the Post:
&name=$(icpsignup)&id=$(icpsignup2653)&accept-charset=UTF-8&onsubmit=return verifyRequired2653();
Debug give little info:
The email I still receive is this:
An error occured during your email list submission. Please try again later.
Here's the "raw" form that works:
http://affluentsalestraining.com/test.html (view source to see code)
frustrating...
- wayne
|
|
|
|
|
David To
river guide Posts:2719
|
11-12-2009 09:37 AM |
|
HI, okay, since you don't have a lot of fields, can you log into www.betasprings.com (username: host, password: dnnhost) and if possible re-create that form on betasprings.com and send me the URL / TABID here and I can debug the problem. But before you do that, try going to Host / SQL and type in: update {objectQualifier}desktopmodules set SupportedFeatures=5 where friendlyname like '%dynamic forms%' Hopefully, the above SQL statement will enable the Import / Export Content option. If not, then you will have to recreate your form on betasprings. -- David |
|
|
|
|
itcetera Posts:13
|
11-12-2009 11:50 AM |
|
Here's the form on your server. I tried it as is and it doesn't post the email to iContact. Here's the "raw" form that does work: http://affluentsalestraining.com/test.html (view source to see code) SInce the raw version doesn't work in DotNetNuke - this will be a critical plus for Dynamic Forms to overcome - something you can promote! I have several sites that will become DNN sites and I NEED this ability to post to iContact lists. (PS: iContact tech Support is not very technical - I appreaciate your support!) |
|
|
|
|
itcetera Posts:13
|
|
David To
river guide Posts:2719
|
11-13-2009 06:33 AM |
|
HI, I looked at the form but don't know exactly what you're trying to achieve. You have a bunch of hidden fields with default values that you don't use anywhere. You mention that website https://app.icontact.com/icp/signup.php accepts the following: class="firstform" name="icpsignup" id="icpsignup2653" accept-charset="UTF-8" onsubmit="return verifyRequired2653();" So on your Dynamic Forms, what field represents "class", "name", "id"? The accept-charset should be hard-coded as is and I believe the onsubmit should be left the same as well. Can you verify to me what you go in the above parameters? -- David |
|
|
|
|
itcetera Posts:13
|
11-13-2009 07:02 AM |
|
If you view the source code for the form that works: http://affluentsalestraining.com/test.html In this source code - some names are in quotes - others are not - not sure if that means anything. class, name, and id are not fields in the form. class is likely optional, name and id seem to somehow be used for iContact to connect to the correct contact list??? So this are just passed through values - not values in the form??? |
|
|
|
|
itcetera Posts:13
|
11-13-2009 07:04 AM |
|
PS: I assumed you entered your email in the test.html form page - since it showed up in iContact. If you didn't, let me know. |
|
|
|
|
David To
river guide Posts:2719
|
11-13-2009 07:16 AM |
|
Well, then how does it map the email? The email you fill out must also be mapped somehow to the HTTP post to be sent away. Also, that's posting to http://affluentsalestraining.com/test.html; what you are posting to is https://app.icontact.com/icp/signup.php which for all intesive purposes, may accept totally different set of parameters. The best way to resolve this is to figure out what paramemters this URL requires and hard-code in values without using the Dynamic Form to make sure it works first. Right now, I really don't know a better way to debug this. On your DF page, in your HTTP post event, be sure to check "Email Response to Site Admin?: " so you could get an email depicting what is actually being posted to the URL and also perhaps change the HTTP post to: &name=$(fields_email)&id=$(icpsignup2653)&accept-charset=UTF-8&onsubmit=return verifyRequired2653(); It should pass the email address along in the parameters somewhere, otherwise how does it know how to get back to you? -- David |
|
|
|
|
itcetera Posts:13
|
11-13-2009 10:13 AM |
|
I DID IT! - I was missing a step you had hinted at - I assumed that the hidden fields were picked up automatically - like they somehow are on the test.html page. But instead ALL hidden variables needed to be in the post plus the extra ones that were in the action statement. DNN Creative has a perfect tutorial on this using your module to connect to a different third party email. That's what I needed to understand things. Works like a charm now. |
|
|
|
|
Michael Man
river guide Posts:152
|
04-12-2010 08:01 AM |
|
Hi, I know this post is long time ago, but I am now doing excatly what you were doing. Would you mind share which tutorial on DNN creative shows how to implement this? Would you mind share with me your export file?
Thanks
My email is vnthierry@yahoo.com
Posted By itcetera on 11/13/2009 12:13 PM
I DID IT! - I was missing a step you had hinted at - I assumed that the hidden fields were picked up automatically - like they somehow are on the test.html page. But instead ALL hidden variables needed to be in the post plus the extra ones that were in the action statement. DNN Creative has a perfect tutorial on this using your module to connect to a different third party email. That's what I needed to understand things. Works like a charm now. |
|
|
|
|