servus leute
für das multiaddon von sebbyphm suche ich eine schnittstelle zum primusportal
hat jemand sowas zufällig da??? oder kann es erstellen
Hoi,
von noname hab ich mal diese Datei für eine Primus-Schnittstelle bekommen. Da sollte alles nötige drinstehen. VOm Einbau selber kann ich aber nichts sagen da ich selber noch ncihts damit gemacht hab...
<?php
/**
* PrimusInterface
* -------------------------------------------
* Mit dieser Klasse ist ein einfacher Primeratransfer von Ihrem Account
* zu dem Account eines bei Primusportal.de registrierten Mitglieds möglich.
*
* Die Einbindung des Interfaces geschieht folgendermaßen:
* 1. Einbindung der Klasse in Ihr PHP-Auszahlungsskript:
* CODE:
* require_once( "PFAD/ZU/DER/KLASSE/PrimusInterface.class.php" );
* $PPUsername = "username"; // Ihr Username bei Primusportal
* $PPPassword = "passwort"; // Ihr Passwort bei Primusportal
*
* $Interface = new PrimusInterface($PPUsername, $PPPassword);
* 2. Durchführen einer Auszahlung:
* CODE:
* $Status = $Interface->Pay($PayReceiver, $PayAmount, $PayDescription);
*
* Wobei $PayReicer der Username des Empfängers bei
* Primusportal.de ist. $PayAmount ist der gerundete( !! ) Betrag an Primera,
* die der Empfänger erhalten soll. $PayDescription ist eine von Ihnen
* festgelegte kurze Beschreibung. Die Länge dieses Textes darf 100 Zeichen
* nicht überschreiten. Beispiel:
* $status = $Interface->Pay("garbage", 10000, "Auszahlung IhreSeite.de - ID: 12345");
* 3. Überprüfung des Status (Rückgabecode):
* CODE:
* if(!$status) {
* // Ein Fehler ist aufgetreten
* // Fehlerbehandlung hier einfügen...
* } else {
* // Auszahlung erfolgreich durchgeführt
* // Führen Sie hier Ihre Datenbankabfragen durch, um die Auszahlung zu
* // bestätigen...
* }
*
* Die komplette Rückgabe des Interfaces wird als assoziatives Array in der Klassen-
* variable __data gespeichert:
* __data => array("status" => Rückgabecode (PI_DONE, PI_SENDER_ERROR, ...),
* "statustext" => Status in Worten (z.B.: "Transaktion erfolgreich durchgeführt"),
* ")
*
*
* @author Andreas Schmidt <xxgarbagexx@web.de>
* @version 1.0 - beta
* @package PrimusInterface
* @copyright (c) 2007 by Primusportal.de
**/
/** Fehler - Interfacebenutzer */
define("PI_ERROR", -1);
/** Statuscode für erfolgreich ausgeführte Transaktion */
define("PI_DONE", 200);
/** Fehler - User existiert nicht oder ist gesperrt */
define("PI_RECEIVER_ERROR", 301);
/** Sender-Account Fehler (User nicht existent, gesperrt, ...) */
define("PI_SENDER_ERROR", 401);
/** Betrag fehler */
define("PI_AMOUNT_ERROR", 501);
/** Zu wenig Primera */
define("PI_TOO_LESS_PRIMERA", 502);
/** User nicht aktiv oder existiert nicht */
define("PI_USER_CHECK_ERROR", 601);
/** User aktiv */
define("PI_USER_CHECK_OK", 602);
/** Primerastand erfolgreich geholt */
define("PI_GET_PRIMERA_DONE", 701);
class PrimusInterface {
/**
* URL für das Interface auf dem Primusserver:
**/
var $__host = "www.primusportal.de";
var $__path = "/transfer.interface.2.0.php";
var $__errno;
var $__err;
var $__seperator = ":";
var $__username;
var $__password;
var $__data;
/**
* Konstruktor
**/
function PrimusInterface($PPUsername, $PPPassword) {
$this->__username = $PPUsername;
$this->__password = $PPPassword;
}
/**
* Anfrage senden und Rückgabecode in Variable speichern
**/
function Query( $data = array() ) {
$fp = fsockopen($this->__host, 80, $this->__errno, $this->_err);
if(!$fp) return false;
$data["PrimusInterface_Username"] = base64_encode($this->__username);
$data["PrimusInterface_Password"] = base64_encode(md5($this->__password));
// POST-Daten übermitteln:
$data = http_build_query($data, '', '&');
fputs($fp, "POST {$this->__path} HTTP/1.1\r\n");
fputs($fp, "Host: {$this->__host}\r\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-length: ". strlen($data) ."\r\n");
fputs($fp, "Connection: close\r\n\r\n");
fputs($fp, $data);
$return = "";
while(!feof($fp))
$return.=fgets($fp,128);
$content = explode("<!-- return-start -->", $return);
return $content[1];
}
/**
* Funktion parst die Rückgabe vom Transferskript:
*/
function Parse( $content ) {
$x = explode("\n", $content);
$return = array();
foreach($x as $currentLine) {
$line_exploded = explode(":", $currentLine,2);
if(count($line_exploded) > 1)
$return[$line_exploded[0]] = $line_exploded[1];
}
return $return;
}
/**
* @param int/string $Receiver UserID / Username des Empfängers
* @param int $Amount Betrag in ganzzahligen Primera
* @param string $Description Beschreibung (Sichtbar in Einzelauflistung)
*/
function Pay($Receiver, $Amount, $Description = "") {
$PostData = array("PrimusInterface_Action" => "Pay",
"PrimusInterface_Receiver" => base64_encode($Receiver),
"PrimusInterface_Amount" => base64_encode($Amount),
"PrimusInterface_Description" => base64_encode($Description) );
$PostReturn = $this->Parse( $this->Query($PostData) );
$this->__data = $PostReturn;
if($PostReturn["status"] == "200")
return true;
else
return false;
}
/**
* Überprüft den Status eines Primus-Users
* - existiert der User
* - ist er aktiv
* @param string/int $User Userid / Username
*/
function CheckPrimusUser($User) {
$PostData = array( "PrimusInterface_Action" => "CheckPrimusUser",
"PrimusInterface_CheckPrimusUser" => $User);
$PostReturn = $this->Parse( $this->Query($PostData) );
$this->__data = $PostReturn;
if($PostReturn["status"] == PI_USER_CHECK_OK)
return true;
else
return false;
}
/**
* Die Funktion liefer den aktuellen Primerastand
*
*/
function GetPrimera() {
$PostData = array( "PrimusInterface_Action" => "GetPrimera" );
$PostReturn = $this->Parse( $this->Query($PostData) );
$this->__data = $PostReturn;
if($PostReturn["status"] == PI_GET_PRIMERA_DONE)
return $PostReturn["primera"];
else
return false;
}
};
?>
cu, Swinxx
danke swinxx aber das hab ich auch, aber suche die für das multiauszahlungsaddon
danke swinxx aber das hab ich auch, aber suche die für das multiauszahlungsaddon
Ui, wer ließt is klar im Vorteil :crazy: Hätte nicht gedacht das ich das mal zu mir selber sagen muss :-)
Sry
cu, Swinxx
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.