PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Icq



maik15
23-08-2004, 19:22
Wie könnte ich es realisieren das ich anzeigen lassen kann ob eine bestimmte ICQ#/user online ist?
Ich wollte das so machen das ich die ICQ-nummer im script reinschreibe und mir dann den status von der nummer (online/offline) über zwei unterschiedliche bilder auf der Seite anzeigen lasse.

quinte17
24-08-2004, 12:15
http://www.icq.com/features/web/indicator.html
da ;)

maik15
24-08-2004, 19:24
Gibts bloß noch ein problem der zeigt das bild bei mir nicht an.

Sengi
27-08-2004, 21:22
versuch doch mal folgendes:

function GetICQ($uin) {
if (!is_numeric($uin)) return FALSE;

$fp = fsockopen('status.icq.com', 80, &$errno, &$errstr, 8);
if (!$fp) return FALSE;

$request = "HEAD /online.gif?icq=$uin HTTP/1.0\r\n"
."Host: web.icq.com\r\n"
."Connection: close\r\n\r\n";
fputs($fp, $request);

do {
$response = fgets($fp, 1024);
}
while (!feof($fp) && !stristr($response, 'Location'));

fclose($fp);

if (strstr($response, 'online1')) return 'online';
if (strstr($response, 'online0')) return 'offline';
if (strstr($response, 'online2')) return 'disabled';
// disabled meint, dass der Benutzer eingestellt hat, dass sein
// Status im Web nicht angezeigt wird.

return FALSE;
}

// Aufruf:
echo GetICQ(12423456);


Quelle: http://www.dclp-faq.de/ch/ch-about.html

maik15
28-08-2004, 11:55
Und wie bring ich das jetzt zum laufen???
Könntest du mir mal alles erklären was ich jetzt machen muss?
Währe krass.
gruß
Maik

Sengi
28-08-2004, 18:28
So in etwa kannst du dir je nach Status des Users entsprechend Bilder anzeigen lassen.




function GetICQ($uin) {
if (!is_numeric($uin)) return FALSE;

$fp = fsockopen('status.icq.com', 80, &$errno, &$errstr, 8);
if (!$fp) return FALSE;

$request = "HEAD /online.gif?icq=$uin HTTP/1.0\r\n"
."Host: web.icq.com\r\n"
."Connection: close\r\n\r\n";
fputs($fp, $request);

do {
$response = fgets($fp, 1024);
}
while (!feof($fp) && !stristr($response, 'Location'));

fclose($fp);

if (strstr($response, 'online1')) return 'online';
if (strstr($response, 'online0')) return 'offline';
if (strstr($response, 'online2')) return 'disabled';
// disabled meint, dass der Benutzer eingestellt hat, dass sein
// Status im Web nicht angezeigt wird.

return FALSE;
}



if (GetIcq(227771323) == 'online'){
echo "<img src='online.gif'>";
} elseif (GetIcq(227771323) == 'offline'){
echo "<img src='offline.gif'>";
}else{
echo "<img src='disabled.gif'>";
}

maik15
28-08-2004, 19:36
Was muss ich jetzt alles machen wenn ich das in eine HTML seite reinhängen will?

Sengi
28-08-2004, 20:28
folgendes aber ganz grob beschrieben....

erstell ne datei ala index.php die codemäßig in etwa so aussieht:


<?php
Hier haust du die GetIcq funktion rein


?>


<html>


Und hier kommt deine ganz normale HTML Seite rein. Da wo du das Bildchen haben willst setzt du den unteren Phpcode aus dem Beitrag oben rein in folgender form

<?php

if (GetIcq(227771323) == 'online'){
echo "<img src='online.gif'>";
} elseif (GetIcq(227771323) == 'offline'){
echo "<img src='offline.gif'>";
}else{
echo "<img src='disabled.gif'>";
}

?>

Und hier gehts dann halt weiter mit deinem Htmlcode

</html>

maik15
29-08-2004, 16:13
Hmm...
So richtig kapiert ahb ichs nicht.
Wenn du zeit hast könntest du mir das mal fertig machen und an assmaik@freenet.de schicken?
Ich währe dir sehr dankbar dafür, denn soviel ahnung habe ich nicht.
gruß
maik

Sengi
29-08-2004, 16:20
Ähm???

Ich habe null Ahnung was du überhaupt richtig damit anfangen willst, geschweige denn wie deine HTML Datei aussieht...
Wenn du es nicht richtig kannst dann kann ich dir einige Seiten wärmstens empfehlen:

www.selfphp.info
http://www.php-q.net/
http://dclp-faq.de/ch/ch-about.html

Ich setz hier gern Hilfestellungen rein, aber ich bastel dir nicht deine Sachen zurecht :)

maik15
29-08-2004, 18:15
Könntest du dann wenigstens mal "ausführlich" beschreiben was ich machen muss?
Was mach ich in der HTML seite und wie weiter...

gEnTi
09-09-2004, 00:30
Es steht alles da, mehr gibts nicht zu sagen...

Zuerst oben die Funktion die hier steht einfügen, dann die if then else condition so wie sie hier steht.. man kann es nicht genauer beschreiben...

diese Posting sollte dier eigentlich alles machen was du willst: 28-08-2004 18:28