Aşağıda benim OpenID uygulama bir çalışma örneği. Ben OpenID sağlayıcısı olarak hyves.nl kullanabilirsiniz ama bu da (Google değil ama) yanı sıra me.yahoo.com ve muhtemelen diğer OpenID sağlayıcıları ile çalışır.
Şimdiye kadar iyi. Ama şimdi benim hyves profildeki takma ve / veya tamadı almak istiyorum. Ben $ sahne dizideki true takma ve / veya tamadı batınca ben hiç artık giriş yapamıyorum.
Ben burada yanlış ne yapıyorum?
class TestController extends Zend_Controller_Action
{
private $_sreg = null;
public function init()
{
$props = array('nickname' => false,
'email' => false,
'fullname' => false,
'dob' => false,
'gender' => false,
'postcode' => false,
'country' => false,
'language' => false,
'timezone' => false);
$this->_sreg = new Zend_OpenId_Extension_Sreg($props);
}
public function loginAction()
{
$consumer = new Zend_OpenId_Consumer();
if (!$consumer->login('hyves.nl', 'http://localhost/trouwcom/public/test/verify', 'http://localhost/trouwcom', $this->_sreg))
{
echo 'Login failed';
}
$this->_helper->viewRenderer->setNoRender();
}
public function verifyAction()
{
$consumer = new Zend_OpenId_Consumer();
if ($consumer->verify($_GET, $id, $this->_sreg))
{
echo 'VALID ' . htmlspecialchars($id);
$data = $this->_sreg->getProperties();
print_r($data);
}
else
{
echo 'INVALID ' . htmlspecialchars($id);
}
$this->_helper->viewRenderer->setNoRender();
}
}