close ad
Install the LAtest Updates to Work with CC 2017 and CC 2018
open ad
View Menu

Technical Support Forums

Free, outstanding support from WebAssist and your colleagues

rating

validation

Thread began 12/05/2013 10:22 am by CraigR | Last modified 12/09/2013 5:00 pm by Jason Byrnes | 1230 views | 11 replies |

CraigRBeta Tester

validation

I have a form with a very simple check, where a user enters their email address for validation, (no password).
If the address is on the database, the user is redirected to another page, where their memberid should be appended as a get parameter.

When I set up the form with the user authentication wizard, I set emailaddress as the only column to be validated.

Can I get the memberid from my table at the same time the user authentication behaviour checks the emailaddress, (without the need to compare it), or do I need to add a lookup query to the page using the post email address as a parameter ?

<?php
if(isset($_POST["Check"]) || isset($_POST["Check_x"])){
$WA_Auth_Parameter = array(
"connection" => $PowerCMSConnection,
"database" => $database_PowerCMSConnection,
"tableName" => "tblmemberscontact",
"columns" => explode($WA_Auth_Separator,"MemberEmailAddress"),
"columnValues" => explode($WA_Auth_Separator,"".((isset($_POST["emailaddress"]))?$_POST["emailaddress"]:"") .""),
"columnTypes" => explode($WA_Auth_Separator,"text"),
"sessionColumns" => explode($WA_Auth_Separator,"MemberContactID".$WA_Auth_Separator."MemberID"),
"sessionNames" => explode($WA_Auth_Separator,"MemberContactID".$WA_Auth_Separator."MemberID"),
"successRedirect" => "../events/booktickets.php?EventID=".$_GET['EventID']."&MemberID=".$_SESSION['MemberID'],
"failRedirect" => "../events/booktickets_check.php?failed=true",
"gotoPreviousURL" => FALSE,
"keepQueryString" => FALSE
);

WA_AuthenticateUser($WA_Auth_Parameter);
}
?>



I tried adding MemberID as a session variable, but the redirect seems to append the session value of the previous memberid to the url. I don't really need the session, i just wanted to use the memberid of the validated email address

Sign in to reply to this post

Jason ByrnesWebAssist

the authentiocate user behaivor is set to store the member ID as a session variable:

"sessionColumns" => explode($WA_Auth_Separator,"MemberContactID".$WA_Auth_Separator."MemberID"),
"sessionNames" => explode($WA_Auth_Separator,"MemberContactID".$WA_Auth_Separator."MemberID"),


but think about order of operations. this code block is setting a list of perameters that are going to be sent into the WA_AuthenticateUser function

you cant at the same time tell the function to lookup the session variable, and tell it to use the session in the success redirect:
"successRedirect" => "../events/booktickets.php?EventID=".$_GET['EventID']."&MemberID=".$_SESSION['MemberID'],


the session hasn't been looked up yet.

leave the success redirect blank, and add header function after the WA_AuthenticateUser function


<?php header("Location: ../events/booktickets.php?EventID=".$_GET['EventID']."&MemberID=".$_SESSION['MemberID']); ?>

Sign in to reply to this post

CraigRBeta Tester

I get what you are saying.

I tried as you suggested,, but now the authentication fails

at what point do i add the redirect ?

immediately after the WA_AuthenticateUser function, after the last curly bracket or in a separate block ?

do i need a block of code to confirm the user has been authenticated brfore the redirect is carried out ?

Sign in to reply to this post

Jason ByrnesWebAssist

the header should be in a seperarte code block after WA_AuthenticateUser function

Sign in to reply to this post

CraigRBeta Tester

Thanks Jason

I put the header in a

if(isset($_POST["Check"]) || isset($_POST["Check_x"])){

block,

using the logic that a fail redirect will reload the page before this line is reached.

seems to work ;-)

Sign in to reply to this post

Jason ByrnesWebAssist

glad to hear it is working.

Sign in to reply to this post

CraigRBeta Tester

oops, spoke too soon.

Bizarrely, it seemed to work at first, but now, it doesn't.

I know the email address I key in is correct, and if i put the redirect path after "successRedirect", it works.

If I change it to the code below, I get the failed message

<?php
if(isset($_POST["Check"]) || isset($_POST["Check_x"])){
$WA_Auth_Parameter = array(
"connection" => $PowerCMSConnection,
"database" => $database_PowerCMSConnection,
"tableName" => "tblmemberscontact",
"columns" => explode($WA_Auth_Separator,"MemberEmailAddress"),
"columnValues" => explode($WA_Auth_Separator,"".((isset($_POST["emailaddress"]))?$_POST["emailaddress"]:"") .""),
"columnTypes" => explode($WA_Auth_Separator,"text"),
"sessionColumns" => explode($WA_Auth_Separator,"MemberContactID".$WA_Auth_Separator."MemberID"),
"sessionNames" => explode($WA_Auth_Separator,"MemberContactID".$WA_Auth_Separator."MemberID"),
"successRedirect" => "",
"failRedirect" => "/events/booktickets_check.php?EventID=".$_GET['EventID']."&failed=true",
"gotoPreviousURL" => FALSE,
"keepQueryString" => FALSE
);

WA_AuthenticateUser($WA_Auth_Parameter);

}
?>
<?php
if(isset($_POST["Check"]) || isset($_POST["Check_x"])){
header("Location: /events/booktickets.php?EventID=".$_GET['EventID']."&MemberID=".$_SESSION['MemberID']);
}?>
Sign in to reply to this post

Jason ByrnesWebAssist

I'll need to troubleshoot directly, see the private message section.

Sign in to reply to this post

CraigRBeta Tester

PM

Sign in to reply to this post

Jason ByrnesWebAssist

see PM

Sign in to reply to this post
loading

Build websites with a little help from your friends

Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.

Build websites from already-built web applications

These out-of-the-box solutions provide you proven, tested applications that can be up and running now.  Build a store, a gallery, or a web-based email solution.

Want your website pre-built and hosted?

Close Windowclose

Rate your experience or provide feedback on this page

Account or customer service questions?
Please user our contact form.

Need technical support?
Please visit support to ask a question

Content

rating

Layout

rating

Ease of use

rating

security code refresh image

We do not respond to comments submitted from this page directly, but we do read and analyze any feedback and will use it to help make your experience better in the future.

Close Windowclose

We were unable to retrieve the attached file

Close Windowclose

Attach and remove files

add attachmentAdd attachment
Close Windowclose

Enter the URL you would like to link to in your post

Close Windowclose

This is how you use right click RTF editing

Enable right click RTF editing option allows you to add html markup into your tutorial such as images, bulleted lists, files and more...

-- click to close --

Uploading file...