+ Start a Discussion
Tran ManTran Man 

Self-Service Portal Toolkit for PHP 5 is now available.

The Self-Service Portal Toolkit for PHP 5 is now on sourceforge.net.  Download from https://sourceforge.net/project/showfiles.php?group_id=96634&package_id=188531

This toolkit makes it easy to embed the salesforce.com Self-Service Portal within an existing PHP web application. It comes with a sample, Berkeley Frozen Pizza, that demonstrates how a web site can authenticate a user and then access the salesforce.com Self-Service Portal seamelessly--all without the need for two sign-ons.

Keep in mind that this is a 0.9.0 release, so feedback is especially welcomed.

Changes in version 0.9.1:
=========================
* Updated to PHP5 toolkit 1.0.5
* Added missing Users.xml

Message Edited by Tran Man on 05-11-2006 03:32 PM

tahitibluetahitiblue
Hi Nick,

Thanks for posting this awesome resource.  One thing I noticed is the Users.xml file is not included in the samples directory of the download package.  My xml knowledge is pretty weak.  Can you give us some sample code on what the format for that would be?

Thanks
Tim
Tran ManTran Man
Sure thing.

<?xml version="1.0"?>
<Users>
  <User>
    <UserName>john</UserName>
    <UserPassword>
      johnspassword
    </UserPassword>
    <SalesforceUserName>john@test.com</SalesforceUserName>
  </User>
</Users>
tahitibluetahitiblue
Hey Nick,
Just wanted to say thanks for this, I was able to mix and match your methods to get this to work with my clients authentication system and bussiness processes.

The getSSP_URL method is a really nice piece of code. 

It was also nice to have two good example calls on the SObject method (creating a contact and the SSP user).  The 7.0 api docs doc don't include php sample code, so these two were real time savers. 

One word of caution to others that want to mix and match from the samples. In login.php its referenced as..
$ssuUtility = new SelfServiceUserUtility
in signup.php its called as
$ssuUility = new SelfServiceUserUtility

So if you cut and paste from the public function calls double check the spelling before freaking out thinking that your not maintaining the session.

--tim
chuckdubdubchuckdubdub

Got the Pizza demo working.  Great stuff.  Question:  do you recommend a method of obtaining the SFID of a user just created:

saveUserToSalesforce($_POST['firstname'], $_POST['lastname'], $_POST['email']);

Also, presumably for the whole "lost password" routine, you'd want to avoid anyone ever resetting the individual SSP users password through Salesforce.  Since the SSP user is going through an external site, it seems like we'd want to write a routine that actually rewrote their pw in the Users.xml file.

 

-Chuck

 

Sam1981Sam1981

Just wanted to know if a toolkit like this is available for Java ? This info would be very helpful

Thanks

Sam

Tran ManTran Man
Sorry, it is not.  But the exact same logic could be used in Java.  Let us know if you have any specific questions.


GlennAtAppirioGlennAtAppirio
Hi Nick,

We could use a pointer regarding authenticating SSP users via Java.  The SSP sits "behind" a public-facing Jive KB, and we want to use the SSP for all customer authentication.  So when a customer tries to log into Jive, a Jive authentication class can do a callout to another system (e.g. the SFDC SSP) and try to authenticate the provided username/password credentials.

We can get this working with no problem to authenticate SFDC users (using SoapBindingStub.login() as shown in the excellent Java API example code), but not SSP users.

What's the easiest way for us to write a few lines of Java that would allow an external system (here, Jive KB) to ask the SSP if a particular username/password can be authenticated?

Thx
Glenn
GlennAtAppirioGlennAtAppirio
I answered my own question, at http://community.salesforce.com/sforce/board/message?board.id=JAVA_development&message.id=3918.
MeenakshmiMeenakshmi

Hi,

  1. Will this work for professional edition also?
  2. Can anyone please elaborate the steps to use this toolkit from salesforce and php application.