# زبان های اسکریپتی > PHP >  نمایش وضعیت انلاین یا افلاین بودن  در یاهو

## paksar

سلام به همه دوستان

اگه کسی میدونه این اسکریپت چطور کار می کنه و اسکریتش رو هم داره همین جا بزاره تا ما 

هم یاد بگیریم.

ممنون

----------


## paksar

مثله اینکه هیشکی بلد نیست...

----------


## Bahram0110

<?
function ystatus($yid) {
        $strUser = $yid;
        $url = "http://mail.opi.yahoo.com/online?u=".$strUser."&m=t&t=0";
        $handle = fopen ("$url", "r");
        $contents = "";
        do {
            $data = fread($handle, 10000);
            if (strlen($data) == 0) {
            break;
            }
            // Get the output from yahoo
            $contents .= $data;

        } while(true);
        fclose ($handle);
        if ((strpos(strtoupper($contents),"NOT ONLINE") ? strpos(strtoupper($contents),"NOT ONLINE")+1 : 0)>0)
        {
        // If your yahoo username offline on Yahoo Messenger set variable status to OFFLINE
        $strStatus = "OFFLINE";

        // Add custom Offline Image
        $imgStatus = "<a href=\"ymsgr:sendIM?" .$strUser ."\"><IMG SRC='/im_offline.gif' ALT='OFFLINE'><br />offline</a>";

        }
        else
        {

        // If your yahoo username Online on Yahoo Messenger set variable status to ONLINE
        $strStatus = "ONLINE";
        // Add Custom Online Image
        $imgStatus = "<a href=\"ymsgr:sendIM?" .$strUser ."\"><IMG SRC='/im_online.gif' ALT='ONLINE'><br />Omline</a>";
        }
        // return your custom output 
return $imgStatus;
}
?>

----------


## paksar

ممنون آقا بهرام مشکل من فقط این کد بود که نمیدونستم چطور چک کنم ببینم On هست یا Off 
ممنون از لطفتون


```
 http://mail.opi.yahoo.com/online?u=Yahoo!iD&m=t&t=0
```

----------


## www.divxkade.com

آيا راهي وجود داره كه با استفاده از همين آدرس invisble  بودن هم چك كرد؟

----------


## paksar

> آيا راهي وجود داره كه با استفاده از همين آدرس invisble  بودن هم چك كرد؟



نه با این آدرس نمیشه 
http://mail.opi.yahoo.com/online?u=Yahoo!iD&m=t&t=0

----------


## cyraxgroup

به نظرتون کجای این کد ایراد داره که کار نفوکوله؟
if (isset($row['yid']))
        {$html->parse("yid", false);
       
        $fp = fopen("http://mail.opi.yahoo.com/online?u=".$row['yid']."&m=t&t=1", "rb");
            do {
                $response = fread($fp, 128);
            } while (!feof($fp));
            fclose($fp);
            if ($status == 01) { $html->parse("yid_on", false);$html->setblockvar("yid_off", ""); }
            else { $html->parse("yid_off", false);$html->setblockvar("yid_on", ""); }
        }elseif(empty($row['yid'])){$html->setblockvar("yid", "");}
البت به این شکل هم نوشتم جواب نگرفتم

file-get-contents("http://mail.opi.yahoo.com/online?u=".$row['yid']."&m=t&t=1");

----------


## viper2009

دوستان سلام

می دونم که از مدت این تاپیک گذشته ولی برای آیندگان ممکنه لازم بشه

برای وضعیت یاهو مسنجر فقط کافیست این کد را در سطر دوم اضافه کنید
echo yahoo("آیدی شما");

و کلاً به این شکل




> <?php
> echo yahoo("آیدی شما");
> function yahoo($yid) {
>         $strUser = $yid;
>         $url = "http://opi.yahoo.com/online?u=".$strUser."&m=t&t=0";
>         $handle = fopen ("$url", "r");
>         $contents = "";
>         do {
>             $data = fread($handle, 10000);
> ...

----------


## mohmadd

راهی هست که invisbleرو نشون بده ؟ 
مثلا urli هست که اگه شخص invisble باشه برنامه یاهو پیغام افلاین بده ؟

----------


## viper2009

> راهی هست که invisbleرو نشون بده ؟ 
> مثلا urli هست که اگه شخص invisble باشه برنامه یاهو پیغام افلاین بده ؟


منظورتون این هست که در موقع آفلاین بودن ، افراد بتوانند پیغام بگذارند؟

اگر این منظور شماست ، باید بگم که دیگه کد نمی خواد چه طرف آنلاین باشه و نباشه توسط مسنجر پیغام گذاشته می شود
اگر آنلاین باشه که جواب می ده در غیر اینصورت پیعام در مسنجر بصورت آفلاین می مونه

در هر صورت پیغام ارسال می شود

----------


## mohmadd

> منظورتون این هست که در موقع آفلاین بودن ، افراد بتوانند پیغام بگذارند؟
> 
> اگر این منظور شماست ، باید بگم که دیگه کد نمی خواد چه طرف آنلاین باشه و نباشه توسط مسنجر پیغام گذاشته می شود
> اگر آنلاین باشه که جواب می ده در غیر اینصورت پیعام در مسنجر بصورت آفلاین می مونه
> 
> در هر صورت پیغام ارسال می شود


خیر , ببخشید بد توضیح دادم.
یعنی من اسکریپتی میخوام که, invsible بودن افراد رو نشون بده, به این صورت که 
اگه فردی تو یاهو off باشه اما اینجا on باشه پس یارو invsible کرده 
خوب من از کجا و با چه امکاناتی که در یاهو وجود داره  میتونی اطلاعات خود نمایش off یا on بودن رو پیدا کنم ؟ و ایا احتمالا از روش های دیگه ای استفاده میکنن ؟ 
فقط بدون اینکه از اسکریپت های دیگه تقلب کنیم و بریم اونارو باز کنیم بخونیم  :لبخند گشاده!: 
من یه سرچ هایی کردم :
http://developer.yahoo.com/

----------


## rapidpich

> فقط بدون اینکه از اسکریپت های دیگه تقلب کنیم و بریم اونارو باز کنیم  بخونیم


چیزت منو کشته. حالا اگه شما سراغ داشتی بگو ما بریم تقلب کنیم. وگرنه بدون invis بدرد نمیخوره
در ضمن تو خود یاهو چیزی گیرت نمیاد. اگه بیاد که دیگه فایده نداره

----------


## server side

http://oviet.net/@/2009/04/29/yahoo-invisible-scanner-script.html

با cURL میشه یه کارایی کردش و از خود وب سرویس های یاهو بهره بردش , ولی این هم یه چیز مفیدی هستش !

----------

