Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

PHP vs. API

Frage Entwicklung PHP

Mitglied: Soidberg

Soidberg (Level 1) - Jetzt verbinden

26.02.2010 um 12:41 Uhr, 2980 Aufrufe, 1 Kommentar

Es geht darum ein bestehendes funktierendes Snippet umzubasteln wobei ich aktive Hilfe benötige da PHP nicht meine Welt ist.

Ich lasse für mich auf einer seperaten Seite (.php) den aktuellen Creditstand meines Filehostingaccountes anzeigen. Das funktioniert auch sehr gut, nun möchte ich diese Anzeige erweitern um weitere Infos über die API darzustellen.

Das Skript wurde damals gefunden, Leider ist Try and Error bislang mehr Error weshalb ich mir hier aktive Hilfe erhoffe.

Anbei das Skript:

01.
<?php 
02.
 
03.
require_once('./global.php'); 
04.
// Daten die du ändern kannst 
05.
$user  = "*********";     // Account-ID 
06.
$type  = "prem";      // prem oder col 
07.
$pass  = "**********"; // Account-Passwort 
08.
 
09.
// Hier gehts dann richtig los 
10.
$apisub = "getaccountdetails_v1"
11.
$host = "api.****share.com"
12.
$file = "/cgi-bin/rsapi.cgi?sub=".$apisub."&type=".$type."&login=".$user."&password=".$pass
13.
 
14.
$fp = fsockopen($host, 80, $errno, $errstr, 30); 
15.
if (!$fp
16.
17.
    trigger_error( "$errstr ($errno)<br />\n"); 
18.
    return
19.
}   
20.
$out = "GET ".$file." HTTP/1.1\r\n"
21.
$out .= "Host: ".$host."\r\n"
22.
$out .= "User-Agent: Mozilla/5.3 (Windows; U; Windows NT 5.1; de; rv:1.8.1.6) Gecko/2232 Firefox/3.0.0.R\r\n"
23.
$out .= "Content-Type: application/x-www-form-urlencoded\r\n"
24.
$out .= "Connection: Close\r\n\r\n"
25.
 
26.
fwrite($fp, $out); 
27.
     
28.
$accdata = array(); 
29.
$active = false; 
30.
     
31.
while (!feof($fp))  
32.
33.
    $data = fgets($fp, 128); 
34.
    if(substr($data,0,10) == "accountid="
35.
36.
        $active = true; 
37.
38.
    if($active == true) 
39.
40.
        $exptemp = explode("=",$data); 
41.
        $accdata[$exptemp[0]] = $exptemp[1]; 
42.
43.
44.
fclose($fp); 
45.
 
46.
// Daten anzeigen 
47.
echo "<pre>"
48.
//print_r($accdata); 
49.
echo "<center><font color='lime'> Traffic übrig in MB (Gesamt): ".$accdata["premkbleft"]/1000 ."</font></center>"
50.
echo "<center><font color='grey'> TrafficShare übrig in MB: ".$accdata["bodkb"]/1000 ."</font></center>";          
51.
echo "</pre>"
52.
?>
Der API-Auszug:

subroutine=getaccountdetails_v1
Description: Returns key-pair values for the specific account. Warning: The order may change, and we will probably add or remove values in the future.
You should make sure that your program does not stop working if new values appear or existing values disappear.
Parameters: type=col or prem (Collector's account or Premium account.)
login=ID or username
password=password of the login
withrefstring=1 (Optional. If given, the reply also contains refstring=STRING. You need this string to earn money. See FAQ for further information.)
withcookie=1 (Optional. If given, the reply also contains cookie=STRING. You need this string only if you need to set a valid encryped cookie.)
Reply fields: 1:key 2:value
Reply format: string=string or integer\n...
Reply example: TYPE=PREM:
accountid=$accountid (integer)
type=$type (prem or col)
servertime=$time (integer)
addtime=$addtime (integer)
validuntil=$validuntil (integer)
username=$username (string)
directstart=$directstart (integer)
protectfiles=$protectfiles (integer)
rsantihack=$rsantihack (integer)
plustrafficmode=$plustrafficmode (integer)
mirrors=$mirrors (string)
jsconfig=$jsconfig (string)
email=$email (string)
lots=$lots (integer)
fpoints=$fpoints (integer)
ppoints=$ppoints (integer)
curfiles=$curfiles (integer)
curspace=$curspace (integer)
bodkb=$bodkb (integer)
premkbleft=$premkbleft (integer)
ppointrate=$ppointrate (integer in cents)
refstring=$refstring (string, optional. See 'withrefstring' above.)
cookie=$cookie (string. optional. See 'withcookie' above.)

Für mich ist erstmal nur die Info: curfiles=$curfiles (integer) interessant, wobei ein leicht erweiterbarer PHPcode natürlich genial wäre.

Wer kann mir das bestehende Snippet mit dieser Ausgabe erweitern, ich bekomme es scheinbar mit reinem rumbasteln nicht hin.

Viele Grüße

Soidberg
Mitglied: Arano
27.02.2010 um 00:18 Uhr
Hallo Soidberg

Wenn du zwischen Zeile 50 und 51 die folgende Zeile einfügst solltest du bekommen was du möchtest.
01.
echo "<center><font color='grey'> Beschreibung von \"curfiles\": ".$accdata["curfiles"] ."</font></center>";
Wenn ich das Script richtig gelesen habe sollten alle Werte __nach__ "accountid" (und nur wenn dieser existiert / aktiv ist) in dem Array $accdata vorhanden sein und sollten über den Aufruf von $accdata["WERTNAME"] aufrufbar sein.
So solltest du auch weitere Werte selber anzeigen lassen können.

Ein schöne Wochenende
~Arano
Bitte warten ..
Ähnliche Inhalte
Debian
SMS Gateway (API für PHP)
Frage von itnobbyDebian4 Kommentare

Hallo zusammen, ich habe folgenden IST-Zustand: - Debian Server (HyperV) - nginx Webserver - MySQL Datenbank - PHP Jetzt ...

E-Business
Onlineshop und Warenwirtschaftssystem: API selbst programmieren?
Frage von scheuffeleE-Business8 Kommentare

Hallo! Wir haben ein älteres Warenwirtschaftssystem im Einsatz, dass noch vor der großen E-Commerce-Welle eingekauft wurde. Für unseren neuen ...

Ubuntu
Cloud über API einbinden
gelöst Frage von KammiiUbuntu2 Kommentare

Hi, ich betreibe einen kleinen Ubuntu Server (14.04.1 LTS) zuhause, nun möchte ich eine Cloud fest als zusätzliches Laufwerk ...

Webentwicklung
API Schnittstelle Wordpress - Communication
Frage von thurboWebentwicklung

Hallo Freunde, was bin ich froh endlich wieder mal ne Frage auf deutsch verfassen zu können. Weiß gar nicht ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 10 StundenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 15 StundenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 15 StundenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...

Windows Server
SMBv1 deaktivieren führte zur Katastrophe, keine Domänenanmeldung mehr
Frage von Freak-On-SiliconWindows Server14 Kommentare

Servus; Habe Mist gebaut. Umgebung: Server 2012R2 Domäne 2x DC ~10 Memberserver (2012R2 und 2008R2) ~100 Windows 8 Clients ...

Windows XP
Windows XP Aktivieren geht nicht
Frage von tetikmiroWindows XP13 Kommentare

Hallo Ich habe einen Windows XP mit einen vCenter Converter umgezogen auf eine ESXI. Soweit funktioniert dies auch ohne ...

Grafikkarten & Monitore
2x 4K Monitore an einer GraKa betreiben
gelöst Frage von JollyJumper83Grafikkarten & Monitore10 Kommentare

Hallo liebe IT-Gemeinde, ich bin auf der Suche nach einer kostengünstigen GraKa für meinen Präsentations-PC. Wir möchten in unserem ...