Author Topic: Ausgabe auswerten mittells if-abfrage?  (Read 11488 times)

0 Members and 1 Guest are viewing this topic.

Offline .Infecto

  • Newbie
  • *
  • Posts: 48
    • View Profile
Ausgabe auswerten mittells if-abfrage?
« on: November 15, 2014, 10:48:47 PM »
Hallo zusammen,
wie kann ich diesen Inhalt, bzw. diese Ausgabe individuell Auswerten?

http://share-links.biz/api/list?apikey=2ed183155346a56a

Die Ausgabe ist individuell
Als Beispiel nehmen wir mal die erste Ausgabe, bis zum ersten Leerzeichen
Ich möchte das hier auswerten

f9zeuenjbygnh;Hoster Test;so,ob,ul,fs,bs;556356550;0;online

Und zwar, möchte ich an diese Ausgabe kommen:

so,ob,ul,fs,bs

Diese sitzt zwischen zwei ";"- Zeichen

Mit der if-abfrage möchte ich an der Besagten Ausgabe kommen und diese seperat ausgeben.

Quasi:

$folderid 
'f9zeuenjbygnh' // Individuelle ID
if ($id == 'f9zeuenjbygnh') {


Wenn der passende Code gefunden wird, möchte ich den Inhalt "so,ob,ul,fs,bs" ausfindig machen.
Dieser liegt zwischen diesem hier:

;Hoster Test;so,ob,ul,fs,bs;

"Hoster Test" ist ein Name der auch individuell ist und demnach ignoriert werden muss.

Wie geht könnte das funktionieren?
Hat da jemand einen Tipp und einen Codeschnipsel?

LG

Rembrandt

  • Guest
Re: Ausgabe auswerten mittells if-abfrage?
« Reply #1 on: November 16, 2014, 05:20:42 AM »
Hi!

Ich würde das, wenn die Anzahl der Elemente immer gleich ist, mit einen Array lösen.
$hostArray explode(";","f9zeuenjbygnh;Hoster Test;so,ob,ul,fs,bs;556356550;0;online");


in diesen fall würde:
print_R($hostArray[2]);
 "so,ob,ul,fs,bs" zurück liefern.

mfg Andi

Offline .Infecto

  • Newbie
  • *
  • Posts: 48
    • View Profile
Re: Ausgabe auswerten mittells if-abfrage?
« Reply #2 on: November 16, 2014, 01:33:02 PM »
Die Anzahl der Elemente sollten gleich bleiben:

  $buffer file_get_contents("http://share-links.biz/api/list?apikey=2ed183155346a56a");
  
$lines explode("\n",$buffer);
  foreach(
$lines as $line) {
      
$resArray explode(";",$line);
      if (
count($resArray) == 6) {
          
print_r($resArray); 
      }                  
  }


Ich nutze diese API- Abfrage: http://share-links.biz/api/list?apikey=2ed183155346a56a

Diese Abfrage, liefert mir folgende Ausgabe.

Code: [Select]
f9zeuenjbygnh;Hoster Test;so,ob,ul,fs,bs;556356550;0;online 7s08qen7gxwu;sdsdsdsdsdsd;ul;7008015;0;online x1y7qenll3qj;sdssd;ul;89791;0;online 0df6qenm7dg5r;SL;ul;7008015;0;online qu55men1z4bm;ShooBi;ul;89791;0;online
Die Ausgabe besteht aus folgenden Inhalten:

ID (f9zeuenjbygnh)
NAME (Hoster Test)
KÜRZEL (so,ob,ul,fs,bs)
GRÖßE (556356550)
KLICKS (0)
STATUS (online)
---- Es folgt ein Leerzeichen und die nächste Ausgabe folgt

Jetzt kommen wir zu dem eigentlichen, was passieren soll.

Im Adminbereich, kann man einen Containerlink von Share-Linkz.biz eingeben: http://share-links.biz/_f9zeuenjbygnh

In der URL ist die ID vorhanden: http: // share-links.biz/_f9zeuenjbygnh

Das System extrahiert die ID und schreibt diese in die Datenbank.

Auf der Detailsseite, werden anhand der ID von dem Share-Linkz Container einige Fragen abgefragt:

    $sldl str_replace(SHARELINKZBIZ_FOLDERKEY''$image_row['image_download_url']);
  
    if (
$image_row['image_download_url'] == SHARELINKZBIZ_FOLDERKEY $sldl '') {
        
$sls_curl curl_init();
        
curl_setopt($sls_curlCURLOPT_URLSHARELINKZBIZ_STATS);
        
curl_setopt($sls_curlCURLOPT_RETURNTRANSFER1);
        
curl_setopt($sls_curlCURLOPT_POST1);
        
curl_setopt($sls_curlCURLOPT_FOLLOWLOCATION1);
        
$arrays = array(
            
'apikey' => '2ed183155346a56a',
            
'folderCodes' => $sldl,
        );
        
curl_setopt($sls_curlCURLOPT_POSTFIELDS$arrays);
        
$sls_echo explode(';'curl_exec($sls_curl));
        
curl_close($sls_curl);
        
$image_parts $sls_echo[6];
      
        
$statustxt = array(
            
"/online/",
            
"/offline/"
        
);
        
$statusimg = array(
            
"<img src=\"" TEMPLATE_PATH "/images/status/online.png\" width=\"24\" height=\"14\" alt=\"\"/>",
            
"<img src=\"" TEMPLATE_PATH "/images/status/offline.png\" width=\"24\" height=\"14\" alt=\"\"/>"
        
);
      
        
$status preg_replace($statustxt$statusimg$sls_echo[2]);
      
        
$image_status $status;
    } else {
        
$image_parts "n/a";
    }


Hier wird z.B der Status und die Parts abgefragt, ohne Probleme.
Allerdings wird hier die Status-API verwendet: http://share-links.biz/api/status

Die Status-API liefert aber nicht die exakten Hoster/Kürzel aus, darum muss ich auf  http://share-links.biz/api/list zurückgreifen, welches aber ALLE Ordner ausliefert.

Darum versuche ich wie beim Status mit einer if-Abfrage und anhand der ID an die Hoster-Kürzel zu kommen.
Das Problem ist aber das die Liste mehrere Container auf einmal ausgibt und man nicht so einfach mit "$sls_echo[2]" an die entsprechende Stelle kommt.
Denn http://share-links.biz/api/status liefert anhand der ID auch nur die ID-Relevanten Daten aus und http://share-links.biz/api/list alle Container.