Rila_xp Posted September 4, 2011 Report Posted September 4, 2011 Salutare,am gasit pe un site bucata asta de cod si tot ma bat cu ea ca nu pot sa inteleg de ce nu vrea sa functioneze.Ar trebui sa se logheze pe yahoo si sa imi trimita un mesaj catre un user!Ce vreau eu,daca puteti sa ma ajutati este sa imi explicati de ce nu functioneaza scriptul si cam ce ar trebui sa ii fac,si cum trebuie sa il modific ca sa pot vedea si ce mesaje primesc!Va multumesc!<?php // script name: send_message_to_yahoo_messenger.php // web scraper: Sony AK Knowledge Center - www.sony-ak.com // last update: July 20, 2010 // get home page of yahoo mobile $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, "http://us.m.yahoo.com/w/bp-messenger"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_ENCODING, ""); curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14,52; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729)"); curl_setopt($curl, CURLOPT_COOKIEJAR, getcwd() . '/cookies_yahoo_messenger.cookie'); $curlData = curl_exec($curl); curl_close($curl); // debug: show the returned html // echo $curlData; exit; // get post url for login to yahoo $xml = $curlData; $xmlDoc = new DOMDocument(); @$xmlDoc->loadHTML($xml); $urlPostLoginToYahoo = $xmlDoc->getElementsByTagName("form")->item(0)->getAttribute("action"); foreach ($xmlDoc->getElementsByTagName("input") as $input) { if ($input->getAttribute("name") == "_done") { $_done = $input->getAttribute("value"); } if ($input->getAttribute("name") == "_ts") { $_ts = $input->getAttribute("value"); } if ($input->getAttribute("name") == "_crumb") { $_crumb = $input->getAttribute("value"); } } // do login to yahoo messenger (mobile version) $yahoo_id = "your_yahoo_id"; $yahoo_id_password = "your_yahoo_id_password"; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $urlPostLoginToYahoo); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, "_authurl=auth&_done=" . $_done . "&_sig=&_src=&_ts=" . $_ts . "&_crumb=" . $_crumb . "&_pc=&_send_userhash=0&_partner_ts=&id=" . $yahoo_id . "&password=" . $yahoo_id_password . "&__submit=Sign+in"); curl_setopt($curl, CURLOPT_ENCODING, ""); curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14,52; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729)"); curl_setopt($curl, CURLOPT_COOKIEFILE, getcwd() . '/cookies_yahoo_messenger.cookie'); curl_setopt($curl, CURLOPT_COOKIEJAR, getcwd() . '/cookies_yahoo_messenger.cookie'); $curlData = curl_exec($curl); curl_close($curl); // get home page url for sending message $urlSendMessage = $curlData; $urlSendMessage = substr($urlSendMessage, strpos($urlSendMessage, "<a href=\"/w/bp-messenger/sendmessage") + 9); $urlSendMessage = substr($urlSendMessage, 0, strpos($urlSendMessage, "\"")); $urlSendMessage = str_replace("&", "&", $urlSendMessage); $urlSendMessage = "http://us.m.yahoo.com" . $urlSendMessage; // get home page of mobile messenger to send message $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $urlSendMessage); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_ENCODING, ""); curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14,52; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729)"); curl_setopt($curl, CURLOPT_COOKIEFILE, getcwd() . '/cookies_yahoo_messenger.cookie'); curl_setopt($curl, CURLOPT_COOKIEJAR, getcwd() . '/cookies_yahoo_messenger.cookie'); $curlData = curl_exec($curl); curl_close($curl); // debug: show the returned html // echo $curlData; exit; $xml = $curlData; $xmlDoc = new DOMDocument(); @$xmlDoc->loadHTML($xml); $urlPostSendMessage = $xmlDoc->getElementsByTagName("form")->item(0)->getAttribute("action"); $urlPostSendMessage = "http://us.m.yahoo.com" . $urlPostSendMessage; // do send message to yahoo messenger $yahoo_username = "targetid"; // this is Yahoo! ID target $yahoo_message = "This is my message to you!"; // this is Yahoo! messenger message to the target $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $urlPostSendMessage); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, "id=" . $yahoo_username . "&message=" . $yahoo_message . "&__submit=Send"); curl_setopt($curl, CURLOPT_ENCODING, ""); curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14,52; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729)"); curl_setopt($curl, CURLOPT_COOKIEFILE, getcwd() . '/cookies_yahoo_messenger.cookie'); curl_setopt($curl, CURLOPT_COOKIEJAR, getcwd() . '/cookies_yahoo_messenger.cookie'); $curlData = curl_exec($curl); curl_close($curl); echo "your message already sent to Yahoo! ID: " . $yahoo_username;?> Quote