wUserCur::createSessionStr

Erstellt eine öffentliche Benutzer-Session auf der Basis einer Benutzer-XML-Zeichenkette
(verfügbar mit dem Modul externe Benutzerschnittstelle (z.B. ActiveDirectory/LDAP))

Funktionsaufruf

Boolean createSessionStr(String userName, String userStr)

Parameter

userName

Benutzername

userStr

Benutzer als UTF-8 kodierte XML-Zeichenkette (Lizenzabhängig)

options

Optionen

fireEventOnBeforeLogin
Legt fest, ob vor dem Login das globale Ereignis gefeuert werden soll [0|1]
fireEventOnAfterLogin
Legt fest, ob nach dem Login das globale Ereignis gefeuert werden soll [0|1]

Hinweis
Beim Einsatz von Framework-Funktionen in eigenen Skripten beachten Sie bitte den Artikel "So verwenden Sie das PHP-Framework in eigenen Scripten".
Wenn Sie eine Funktion innerhalb einer Weblication® Seite z.B. über das PHP-Quelltext Element oder in einem XSL-Template über wsl:php einbinden, muss das Framework über die grid.php nicht mehr referenziert werden. Sofern nachfolgend PHP-Beispiele aufgeführt sind, ist dies entsprechend zu beachten.

Beispiel

Erstellt eine Benutzersession, ohne dabei auf die Systembenutzer von Weblication zuzugreifen

Quelltext

<?php

include($_SERVER['DOCUMENT_ROOT'].'/weblication/grid.php');
  
  
/*
  
  Dieses Beispielskript erstellt eine Benutzersession für einen öffentlichen Benutzer, ohne dabei auf die Systembenutzer von Weblication zuzugreifen.
  Dies ist dann sinnvoll, wenn Sie eine externe vorhandene Benutzerverwaltung nutzen wollen und den darin bestehenden Benutzern die Möglichkeit geben wollen, sich in Weblication einzuloggen.
  Die Authentifizierung findet in dem Fall im Fremdsystem statt.  

  */

  // Erstellt eine Benutzersession
  
createSession('mm', array('title' => 'mr''firstname' => 'Max''surname' => 'Mustermann''email' => 'max.mustermann@test.de'));

  function 
createSession($userName$userData){
    
// Benutzerdaten als XML-Zeichenkette
    
$userStr '<wUser xmlns:de="/de" xmlns:en="/en">
      <title value="'
.$userData['title'].'"/>
      <firstname value="'
.$userData['firstname'].'"/>
      <surname value="'
.$userData['surname'].'"/>
      <type value="public"/>
      <email value="'
.$userData['email'].'"/>
      <language value="de"/>
      <group name="partner" type="standard"/>
      <group name="developer" type=""/>
    </wUser>'
;    
  
    
// Session auf Basis der zuvor definierten Benutzerdaten erstellen
    
$options = array('fireEventOnBeforeLogin' => 1'fireEventOnAfterLogin' => 1);
    if(
wUserCur::createSessionStr('mm'$userStr$options)){
      return 
true;
    }
  } 
  
  if(
wUserCur::getName() == ""){  
    print 
"Sie sind nicht angemeldet!";
  }
  else{
    print 
"<p>Guten Tag ".wUserCur::getData('firstname')." ".wUserCur::getData('lastname')."</p>";  
    
    
// Falls der Benutzer nicht im System existiert (Das kann dann der Fall sein, wenn eine Session über wUserCur::createSessionStr erstellt wurde.)
    
if(!wUserCur::isExistingUser()){
      print 
"<p>Sie sind temporär angemeldet als ".wUserCur::getName();
    }  
    else{
      print 
"<p>Sie sind angemeldet als Benutzer ".wUserCur::getName();    
    }
    
$icon       "/weblication/grid5/gui/images/icon_small/logout.gif"// Symbol der Schaltfläche
    
$caption    "Abmelden"// Bezeichnung der Schaltfläche
    
$title      "Klicken Sie hier, um sich abzumelden"// Titel der Schaltfläche
    
$attributes = array('redirect' => '/weblication'); // weitere Attribute
    
print "<br />";
    print 
'<script type="text/javascript" src="/weblication/grid5/gui/scripts/browseEdit.js"></script>';
    print 
wBrowseEdit::createButtonLogout($icon$caption$title$attributes);
  }

?>
 

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut commodo pretium nisl.

Ähnliche Seiten

Entwicklerbereich Weblication® CMS - © Scholl Communications AG