Erweiterung des Login Moduls

Alles rund um Module und Plugins in CONTENIDO 4.9.
Antworten
Peer
Beiträge: 309
Registriert: Fr 9. Sep 2005, 17:22
Kontaktdaten:

Erweiterung des Login Moduls

Beitrag von Peer »

Hallo,

ich bin gerade dabei das Contenido mit einem andern System zu kombinieren.
Jetzt bin ich dabei die Schnittstellen zu etablieren und stocke schon bei dem Login.

Ich würde gerne mit dem Standard Login von Contenido 4.9.6

Folgende Action ausführen

Code: Alles auswählen

<?php

//--------------------------------------------------

require_once("VBStApiClient.class.php");

//--------------------------------------------------

$api = new VBStApiClient("http://****", "****");

//--------------------------------------------------
/* Sitzung generieren */
$session_id = $api->call("session", "get");

/* Prüfen ob letzter Aufruf erfolgreich war */
if($api->callSucceeded()) {
	print("Session-Id: ".$session_id."<br>");

	/* Benutzername */
	$username = $_POST["username"];

	/* Kennwort als SHA1 */
	$password = sha1($_POST["password"]);

	/* Benutzer authentifizieren */
	$response = $api->call("user", "auth", array(
		"session" => $session_id,
		"username" => $username,
		"password" => $password
	));

	/* Authentifizierung erfolgreich */
	if($response === true) {
		print("Authentifizierung erfolgreich<br>");

		/* Daten in die Sitzung schreiben */
		$api->call("session", "store", array(
			"session" => $session_id,
			"key" => "beispielschluessel",
			"value" => "beispielwert xy"
		));

		/* Sitzungsdaten abrufen */
		$response = $api->call("session", "dump", array(
			"session" => $session_id
		));

		if($api->callSucceeded()) {
			/* Sitzungsdaten ausgeben */
			var_dump($response);
		} else {
			print("Konnte Sitzungsdaten nicht abrufen<br>");
		}
	} else {
		/* Fehler: Authentifizierung fehlgeschlagen */
		print("Authentifizierung fehlgeschlagen<br>");
		var_dump($api->getError());
	}

	/*
	 * Sitzung wieder löschen
	 *
	 * Nicht zwingend erforderlich. Nicht benutzte Sessions werden nach 7 Tagen
	 * automatisch aus dem System gelöscht und können nicht mehr verwendet werden.
	 */
	$response = $api->call("session", "truncate", array(
		"session" => $session_id
	));

	if($response === true) {
		print("Session erfolgreich gelöscht<br>");
	} else {
		/* Fehler: Sitzung löschen */
		print("Session konnte nicht gelöscht werden werden<br>");
		var_dump($api->getError());
	}
} else {
	/* Abrufen der SessionId fehlgeschlagen */
	print("Konnte keine Session-Id abrufen<br>");
	var_dump($api->getError());
}

//--------------------------------------------------

?>
in Meiner Vorlgae habe ich eine html Datei mit den Login Feldern und und eine php Datei mit den Daten die oben stehen.
Über die html Datei

Code: Alles auswählen

<!doctype html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Beispielaufruf VBStApiClient</title>
 </head>
 <body>
  <form action="example.php" method="post" enctype="application/x-www-form-urlencoded">
   <table>
    <tr>
     <td>Benutzername:</td>
     <td><input name="username" type="text"></td>
    </tr>
    <tr>
     <td>Kennwort:</td>
     <td><input name="password" type="password"></td>
    </tr>
    <tr>
     <td align="right" colspan="2">
      <input type="submit">
     </td>
   </table>
  </form>
 </body>
</html>
Hat jemand eine Idee???

Danke für eure Hilfe
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: Erweiterung des Login Moduls

Beitrag von rethus »

Hallo,
vielleicht beschreibst du erst einmal genauer, was genau das Ziel der Umsetzung ist.

Ich hatte mal eine Aufgabenstellung, dass ich einen Deeplink ins Contenido-Backend benötigte.
Gelöst habe ich das so: https://wiki.xstable.com/doku.php/webso ... minbereich

Leider ist das bisher nicht in den Core aufgenommen worden, obwohl ich mich erinnere seiner Zeit darum gebeten zu haben.

@4fb: Bitte in den Core aufnehmen.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Antworten