function process($data, $config) { $myTransactionData = $this->set_array($data, $config); $xmlRequest = "<?xml version=\"1.0\"?>"; $xmlRequest .= "<request>"; $xmlRequest .= "\t<type>transaction</type>"; $xmlRequest .= "\t<authtype>authorise</authtype>"; $xmlRequest .= "\t<authentication>"; $xmlRequest .= "\t\t<shreference>" . $config['sh_ref'] . "</shreference>"; $xmlRequest .= "\t\t<checkcode>" . $config['sh_check'] . "</checkcode>"; $xmlRequest .= "\t</authentication>"; $xmlRequest .= "\t<transaction>"; foreach ($myTransactionData as $key => $value) { $xmlRequest .= "<{$key}>{$value}</{$key}>"; } $xmlRequest .= "\t</transaction>"; $xmlRequest .= "</request>"; // =debug $xmlResponse = $this->sendTransaction($xmlRequest, $config); if ($xmlResponse != "") { $responseFields = simplexml_load_string($xmlResponse); $responseArray = objectsIntoArray($responseFields); } if (trim($responseArray['status']) != "OK") { $trans = array('error' => $responseArray['reason']); } else { $details = array("Method" => "SecureHosting", "Approval Code" => $responseArray['reference']); // Return the trans details $trans = array('status' => 3, 'transaction_id' => $responseArray['reference'], 'payment_type' => 'SecureHosting', 'amount' => $data["order_total"], 'details' => serialize($details), 'approval' => $responseArray['authtype']); } return $trans; }
public function response() { require_once '../includes/util.php'; $response_object = simplexml_load_string($this->request()); $response_array = objectsIntoArray($response_object); return $response_array; }
function process($data, $config) { $messageID = md5(time() . rand(1000, 1000000) . time()); if ($config['x_test_request'] == "TRUE") { $merchantID = "XYZ0010"; $merchantPW = "abcd1234"; } else { $merchantID = $config['merchant_id']; $merchantPW = $config['password']; } $myTransactionData = $this->set_array($data, $config); $xmlRequest = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; $xmlRequest .= "<NABTransactMessage>"; $xmlRequest .= "<MessageInfo>"; $xmlRequest .= "<messageID>" . $messageID . "</messageID>"; $xmlRequest .= "<messageTimestamp>" . create_date() . "</messageTimestamp>"; $xmlRequest .= "<timeoutValue>60</timeoutValue>"; $xmlRequest .= "<apiVersion>xml-4.2</apiVersion>"; $xmlRequest .= "</MessageInfo>"; $xmlRequest .= "<MerchantInfo>"; $xmlRequest .= "<merchantID>" . $merchantID . "</merchantID>"; $xmlRequest .= "<password>" . $merchantPW . "</password>"; $xmlRequest .= "</MerchantInfo>"; $xmlRequest .= "<RequestType>Payment</RequestType>"; $xmlRequest .= "<Payment>"; $xmlRequest .= '<TxnList count="1">'; $xmlRequest .= '<Txn ID="1">'; foreach ($myTransactionData as $key => $value) { $xmlRequest .= "<{$key}>{$value}</{$key}>"; } $xmlRequest .= "<CreditCardInfo>"; $xmlRequest .= "<cardNumber>" . $data['nab_cc_num'] . "</cardNumber>"; $xmlRequest .= "<expiryDate>" . $data['nab_cc_month'] . '/' . $data['nab_cc_year'] . "</expiryDate>"; $xmlRequest .= "</CreditCardInfo>"; $xmlRequest .= "</Txn>"; $xmlRequest .= "</TxnList>"; $xmlRequest .= "</Payment>"; $xmlRequest .= "</NABTransactMessage>"; $xmlResponse = $this->sendTransactionToNab($xmlRequest, $config['x_test_request']); if ($xmlResponse != "") { $responseFields = simplexml_load_string($xmlResponse); $responseArray = objectsIntoArray($responseFields); } if (trim($responseArray['Payment']['TxnList']['Txn']['responseCode']) != "00") { $trans = array('error' => $responseArray['Payment']['TxnList']['Txn']['responseText']); } else { $details = array("Method" => "NAB", "Approval Code" => $responseArray['Payment']['TxnList']['Txn']['responseCode'], "Transaction ID" => $responseArray['Payment']['TxnList']['Txn']['txnID'], "Transaction Ref" => $data['transaction_id'], "Transaction Info" => $responseArray['Payment']['TxnList']['Txn']['responseText']); // Return the trans details $trans = array('status' => 3, 'transaction_id' => $responseArray['Payment']['TxnList']['Txn']['txnID'], 'payment_type' => 'NAB', 'amount' => $data["order_total"], 'details' => serialize($details), 'approval' => $responseArray['Payment']['TxnList']['Txn']['responseCode']); } return $trans; }
function definition() { $search = rawurlencode($this->query); $url = "API"; $response = httpGet($url); $xmlObj = simplexml_load_string($response); $arrXml = objectsIntoArray($xmlObj); //print_r($arrXml); //echo count($arrXml['definitions']); if (count($arrXml) > 0) { if (isset($arrXml['definition']['text'])) { echo $arrXml['definition']['text']; } else { foreach ($arrXml['definition'] as $i => $definition) { echo $i + 1 . ". " . $definition['text'] . "\n"; } } } }
function objectsIntoArray($arrObjData, $arrSkipIndices = array()) { $arrData = array(); if (is_object($arrObjData)) { $arrObjData = get_object_vars($arrObjData); } if (is_array($arrObjData)) { foreach ($arrObjData as $index => $value) { if (is_object($value) || is_array($value)) { $value = objectsIntoArray($value, $arrSkipIndices); } if (in_array($index, $arrSkipIndices)) { continue; } $arrData[$index] = $value; } } return $arrData; }
function objectsIntoArray($arrObjData, $arrSkipIndices = array()) { $arrData = array(); // if input is object, convert into array if (is_object($arrObjData)) { $arrObjData = get_object_vars($arrObjData); } if (is_array($arrObjData)) { foreach ($arrObjData as $index => $value) { if (is_object($value) || is_array($value)) { $value = objectsIntoArray($value, $arrSkipIndices); // recursive call } if (in_array($index, $arrSkipIndices)) { continue; } $arrData[$index] = $value; } } return $arrData; }
function process($data, $config) { $myTransactionData = $this->set_array($data, $config); $xmlRequest = "<ewaygateway>"; foreach ($myTransactionData as $key => $value) { $xmlRequest .= "<{$key}>{$value}</{$key}>"; } $xmlRequest .= "</ewaygateway>"; $xmlResponse = $this->sendTransactionToEway($xmlRequest, $config['x_test_request']); if ($xmlResponse != "") { $responseFields = simplexml_load_string($xmlResponse); $responseArray = objectsIntoArray($responseFields); } if (trim($responseArray['ewayTrxnStatus']) != "True") { $trans = array('error' => $responseArray['ewayTrxnError']); } else { $details = array("Method" => "eWay", "Approval Code" => $responseArray['ewayAuthCode'], "Transaction ID" => $responseArray['ewayTrxnNumber'], "Transaction Info" => $responseArray['ewayTrxnError']); // Return the trans details $trans = array('status' => 3, 'transaction_id' => $responseArray['ewayTrxnNumber'], 'payment_type' => 'eWay', 'amount' => $data["order_total"], 'details' => serialize($details), 'approval' => $responseArray['ewayTrxnStatus']); } return $trans; }
function process($data, $config) { $myTransactionData = $this->set_array($data, $config); $xmlRequest = "<Order>"; foreach ($myTransactionData as $key => $value) { $xmlRequest .= "<{$key}>{$value}</{$key}>"; } $xmlRequest .= "</Order>"; $xmlResponse = $this->sendTransactionToPSI($xmlRequest, $config); if ($xmlResponse != "") { $responseFields = simplexml_load_string($xmlResponse); $responseArray = objectsIntoArray($responseFields); } if (trim($responseArray['Approved']) != "APPROVED") { $trans = array('error' => 'An error occurred while processing your transaction: ' . $responseArray['ErrMsg']); } else { $details = array("Method" => "PSIGate", "Approval Code" => $responseArray['CardAuthNumber'], "Transaction Info" => $responseArray['TransRefNumber']); // Return the trans details $trans = array('status' => 3, 'transaction_id' => $responseArray['OrderID'], 'payment_type' => 'PSIGate', 'amount' => $responseArray["FullTotal"], 'details' => serialize($details), 'approval' => $responseArray['Approved']); } return $trans; }
function process($data, $config) { $timestamp = strftime("%Y%m%d%H%M%S"); $orderid = $timestamp . mt_rand(1, 999); $email = $this->EE->session->userdata["email"]; $args = "&Username="******"&Password="******"&TransType=Sale"; // Review guide for transaction types $args .= "&NameOnCard=" . $data['payleap_cc_name']; $args .= "&CardNum=" . $data['payleap_cc_num']; $args .= "&ExpDate=" . $data['payleap_cc_month_exp'] . $data['payleap_cc_year_exp']; //MMYY Format $args .= "&CVNum=" . $data['payleap_cc_cv2']; $args .= "&Amount=" . $data['order_total']; $args .= "&ExtData=<TrainingMode>" . substr($config['test_mode'], 0, 1) . "</TrainingMode>\n \t\t\t\t<Invoice>\n \t\t\t\t\t<InvNum>" . $orderid . "</InvNum>\n \t\t\t\t\t<BillTo>\n \t\t\t\t\t\t<Name>" . $data['br_billing_fname'] . " " . $data['br_billing_lname'] . "</Name>\n \t\t\t\t\t\t<Address>\n \t\t\t\t\t\t\t<Street>" . $data['br_billing_address1'] . "</Street>\n \t\t\t\t\t\t\t<City>" . $data['br_billing_city'] . "</City>\n\t\t\t\t\t\t\t\t<State>" . $data['br_billing_state'] . "</State>\n\t\t\t\t\t\t\t\t<Zip>" . $data['br_billing_zip'] . "</Zip>\n\t\t\t\t\t\t\t\t<Country>" . $data['br_billing_country'] . "</Country>\n\t\t\t\t\t\t\t</Address>\n\t\t\t\t\t\t\t<Email>" . $email . "</Email>\n\t\t\t\t\t\t\t<Phone>" . $data['br_billing_phone'] . "</Phone>\n\t\t\t\t\t\t</BillTo>\n\t\t\t\t\t\t<Description>" . $config['order_description'] . "</Description>\n\t\t\t\t\t</Invoice>"; $args .= "&PNRef="; $args .= "&MagData="; if ($config['test_mode'] == "TRUE") { $host = "https://uat.payleap.com/TransactServices.svc/ProcessCreditCard"; } else { $host = "https://secure1.payleap.com/TransactServices.svc/ProcessCreditCard"; } $result = $this->payleap_send($args, $host); if ($result != "") { $responseFields = simplexml_load_string($result); $responseArray = objectsIntoArray($responseFields); } if (trim($responseArray['Result']) != "0") { $trans = array('error' => '<b>Gateway Error:</b> ' . $responseArray['RespMSG']); } else { $details = array("Method" => "PayLeap", "Approval Code" => $responseArray['PNRef']); // Return the trans details $trans = array('status' => 3, 'transaction_id' => $responseArray['AuthCode'], 'payment_type' => 'PayLeap', 'amount' => $data["order_total"], 'details' => serialize($details), 'approval' => $responseArray['Message']); } return $trans; }
function getAllBingUrls($local_word) { $url = "http://IP/search?q=" . urlencode($local_word) . "&go=&qb=1&format=rss"; $content = file_get_contents($url); $arXml = objectsIntoArray(simplexml_load_string($content)); if (!empty($arXml["channel"]["item"])) { foreach ($arXml["channel"]["item"] as $value) { $arUrl[] = $value["link"]; } $arUrls["url"] = $arUrl; } if (empty($arUrls["url"])) { echo "<h1>After BING RSS</h1>"; echo $bing_url = "http://IP/search?q=" . urlencode($local_word) . "&mkt=en-in&go=&qs=n&sk=&form=QBLH&filt=all&cc=in"; $data = file_get_contents($bing_url); $arUrls = $arUrl = array(); $arUrls["content"] = $data; if (preg_match_all("~class=\"sb_meta\"><cite>(.+)</cite>~Usi", $data, $matches)) { foreach ($matches[1] as $url) { $url = strip_tags($url); $arUrl[] = "http://" . $url; } $arUrls["url"] = $arUrl; } } return $arUrls; }
function GetUnitList() { $vDir = 'farmville-xml'; if (!file_exists($vDir)) { mkdir($vDir); } $time_limit = 7 * 24 * 60 * 60; // number of seconds to 'keep' the log DAYSxHOURSxMINSxSECS if ($df = opendir($vDir)) { while (false !== ($file = readdir($df))) { if ($file != "." && $file != "..") { $file1 = $vDir . '/' . $file; $last_modified = filemtime($file1); if (time() - $last_modified > $time_limit) { unlink($file1); } } } closedir($df); } $vDir = 'farmville-sqlite'; if (!file_exists($vDir)) { mkdir($vDir); } $time_limit = 7 * 24 * 60 * 60; // number of seconds to 'keep' the log DAYSxHOURSxMINSxSECS if ($df = opendir($vDir)) { while (false !== ($file = readdir($df))) { if ($file != "." && $file != "..") { $file1 = $vDir . '/' . $file; $last_modified = filemtime($file1); if (time() - $last_modified > $time_limit) { unlink($file1); } } } closedir($df); } $sqlite_update = 0; //if 1 we are going to download new xml from server // check settings table if (@$_SESSION['vDataStoreDB']->querySingle('SELECT * FROM settings limit 1') === false) { $vSQL = 'CREATE TABLE settings ( settings_name CHAR(25) PRIMARY KEY, settings_value CHAR(25) )'; $_SESSION['vDataStoreDB']->exec($vSQL); } // check datastore table if (@$_SESSION['vDataStoreDB']->querySingle('SELECT * FROM datastore limit 1') === false) { $vSQL = 'CREATE TABLE datastore ( userid CHAR(25), storetype CHAR(25), content BLOB, PRIMARY KEY (userid, storetype) )'; $_SESSION['vDataStoreDB']->exec($vSQL); } // check datastore table if (@$_SESSION['vRewardStoreDB']->querySingle('SELECT * FROM rewardstore limit 1') === false) { $vSQL = 'CREATE TABLE rewardstore ( userid CHAR(25), storetype CHAR(25), content BLOB, PRIMARY KEY (userid, storetype) )'; $_SESSION['vRewardStoreDB']->exec($vSQL); } // check userids table if (@$_SESSION['vDataStoreDB']->querySingle('SELECT * FROM userids limit 1') === false) { $vSQL = 'CREATE TABLE userids ( userid CHAR(25) PRIMARY KEY, username CHAR(25) )'; $_SESSION['vDataStoreDB']->exec($vSQL); } if (@$_SESSION['vDataStoreDB']->querySingle('SELECT * FROM neighbors limit 1') === false) { $vSQL = 'CREATE TABLE neighbors ( neighborid CHAR(25) PRIMARY KEY, fullname CHAR(50), profilepic TEXT )'; $_SESSION['vDataStoreDB']->exec($vSQL); } // check units table if (@$_SESSION['vDataDB']->querySingle('SELECT * FROM units limit 1') === false) { $vSQL = 'CREATE TABLE units ( name CHAR(25), field CHAR(25), content CHAR(250) )'; $_SESSION['vDataDB']->exec($vSQL); $_SESSION['vDataDB']->exec('CREATE INDEX units_idx_1 ON units(name,field)'); $_SESSION['vDataDB']->exec('CREATE INDEX units_idx_2 ON units(field,content)'); $sqlite_update = 1; } // check achievements table if (@$_SESSION['vDataDB']->querySingle('SELECT * FROM achievements limit 1') === false) { $vSQL = 'CREATE TABLE achievements ( name CHAR(25), field CHAR(25), content CHAR(250) )'; $_SESSION['vDataDB']->exec($vSQL); $_SESSION['vDataDB']->exec('CREATE INDEX achievements_idx_1 ON achievements(name,field)'); $_SESSION['vDataDB']->exec('CREATE INDEX achievements_idx_2 ON achievements(field,content)'); $sqlite_update = 1; } // check collectables table if (@$_SESSION['vDataDB']->querySingle('SELECT * FROM collectables limit 1') === false) { $vSQL = 'CREATE TABLE collectables ( name CHAR(25), field CHAR(25), content CHAR(250) )'; $_SESSION['vDataDB']->exec($vSQL); $_SESSION['vDataDB']->exec('CREATE INDEX collectables_idx_1 ON collectables(name,field)'); $_SESSION['vDataDB']->exec('CREATE INDEX collectables_idx_2 ON collectables(field,content)'); $sqlite_update = 1; } // check storage table if (@$_SESSION['vDataDB']->query('SELECT * FROM storage limit 1') === false) { $vSQL = 'CREATE TABLE storage ( name CHAR(25), field CHAR(25), content CHAR(250) )'; $_SESSION['vDataDB']->exec($vSQL); $_SESSION['vDataDB']->exec('CREATE INDEX storage_idx_1 ON storage(name,field)'); $_SESSION['vDataDB']->exec('CREATE INDEX storage_idx_2 ON storage(field,content)'); $sqlite_update = 1; } // check crafting table if (@$_SESSION['vDataDB']->query('SELECT * FROM crafting limit 1') === false) { $vSQL = 'CREATE TABLE crafting ( name CHAR(25), field CHAR(25), content CHAR(250) )'; $_SESSION['vDataDB']->query($vSQL); $_SESSION['vDataDB']->query('CREATE INDEX crafting_idx_1 ON crafting(name,field)'); $_SESSION['vDataDB']->query('CREATE INDEX crafting_idx_2 ON crafting(field,content)'); $sqlite_update = 1; } // check quests table if (@$_SESSION['vDataDB']->query('SELECT * FROM quests limit 1') === false) { $vSQL = 'CREATE TABLE quests ( name CHAR(25), field CHAR(50), content CHAR(250) )'; $_SESSION['vDataDB']->query($vSQL); $_SESSION['vDataDB']->query('CREATE INDEX quests_idx_1 ON quests(name,field)'); $_SESSION['vDataDB']->query('CREATE INDEX quests_idx_2 ON quests(field,content)'); $sqlite_update = 1; } // Force download when key files are missing if (!file_exists('units.txt')) { $sqlite_update = 1; } if (!file_exists('collectable_info.txt')) { $sqlite_update = 1; } if (!file_exists('achievement_info.txt')) { $sqlite_update = 1; } $flashVars = parse_flashvars(); $vGameSetting = 'farmville-xml/' . $_SESSION['flashRevision'] . '_gameSettings.xml'; if (!file_exists($vGameSetting)) { $xml_units = ''; if (!$xml_units) { AddLog2($flashVars['game_config_url']); AddLog2('DL: v' . $_SESSION['flashRevision'] . ' settings file.'); //$geturl = 'http://static-facebook.farmville.com/v' . $_SESSION['flashRevision'] . '/gameSettings.xml.gz'; $geturl = $flashVars['game_config_url']; $xml_units = gzuncompress(proxy_GET($geturl)); } if (!$xml_units) { AddLog2('Couldn\'t find a settings xml...'); } else { AddLog2('Download completed.'); file_put_contents($vGameSetting, $xml_units); $sqlite_update = 1; } unset($xml_units); } $vItemsSetting = 'farmville-xml/' . $_SESSION['flashRevision'] . '_items.xml'; if (!file_exists($vItemsSetting)) { $xml_items = ''; if (!$xml_items) { AddLog2($flashVars['items_url']); AddLog2('DL: v' . $_SESSION['flashRevision'] . ' items xml.'); //$geturl = 'http://static-facebook.farmville.com/v' . $_SESSION['flashRevision'] . '/items.xml.gz'; $geturl = $flashVars['items_url']; $xml_items = gzuncompress(proxy_GET($geturl)); } if (!$xml_items) { AddLog2('Couldn\'t find a items xml...'); } else { AddLog2('Download completed.'); file_put_contents($vItemsSetting, $xml_items); $sqlite_update = 1; } unset($xml_items); } $vStorageConfig = 'farmville-xml/' . $_SESSION['flashRevision'] . '_StorageConfig.xml'; if (!file_exists($vStorageConfig)) { $xml_storage = ''; AddLog2('DL: v' . $_SESSION['flashRevision'] . ' storageconfig xml'); if (isset($flashVars['xml_url']) && !empty($flashVars['xml_url'])) { $geturl = $flashVars['xml_url'] . 'StorageConfig.xml.gz'; } else { $geturl = $flashVars['app_url'] . 'v' . $_SESSION['flashRevision'] . '/StorageConfig.xml.gz'; } $xml_storage = gzuncompress(proxy_GET($geturl)); if (!$xml_storage) { AddLog2('Couldn\'t find a storageconfig xml...'); } else { AddLog2('Download completed.'); file_put_contents($vStorageConfig, $xml_storage); $sqlite_update = 1; } unset($xml_storage); } $vQuestsConfig = 'farmville-xml/' . $_SESSION['flashRevision'] . '_Quests.xml'; if (!file_exists($vQuestsConfig)) { $xml_quests = ''; $geturl = $flashVars['social_quest_url']; AddLog2('DL: v' . $_SESSION['flashRevision'] . ' quests xml'); //$geturl = 'http://static-facebook.farmville.com/v' . $_SESSION['flashRevision'] . '/quests.xml'; $xml_quests = gzuncompress(proxy_GET($geturl)); if (!$xml_quests) { AddLog2('Couldn\'t find a quests xml...'); } else { AddLog2('Download completed.'); file_put_contents($vQuestsConfig, $xml_quests); $sqlite_update = 1; } unset($xml_quests); } $vCraftingConfig = 'farmville-xml/' . $_SESSION['flashRevision'] . '_Crafting.xml'; if (!file_exists($vCraftingConfig)) { $xml_crafting = ''; AddLog2('DL: v' . $_SESSION['flashRevision'] . ' crafting xml'); if (isset($flashVars['xml_url']) && !empty($flashVars['xml_url'])) { $geturl = $flashVars['xml_url'] . 'crafting.xml.gz'; } else { $geturl = $flashVars['app_url'] . 'v' . $_SESSION['flashRevision'] . '/crafting.xml.gz'; } $xml_crafting = gzuncompress(proxy_GET($geturl)); if (!$xml_crafting) { AddLog2('Couldn\'t find a crafting xml...'); } else { AddLog2('Download completed.'); file_put_contents($vCraftingConfig, $xml_crafting); $sqlite_update = 1; } unset($xml_crafting); } if ($sqlite_update == 1) { $_SESSION['vDataDB']->exec('BEGIN TRANSACTION'); $_SESSION['vDataDB']->exec('delete from units'); $_SESSION['vDataDB']->exec('delete from achievements'); $_SESSION['vDataDB']->exec('delete from collectables'); $_SESSION['vDataDB']->exec('delete from storage'); $_SESSION['vDataDB']->exec('delete from crafting'); $_SESSION['vDataDB']->exec('delete from quests'); $_SESSION['vDataDB']->exec('COMMIT TRANSACTION'); $_SESSION['vDataDB']->exec('vacuum'); $_SESSION['vDataDB']->exec('BEGIN TRANSACTION'); $xmlDoc = simplexml_load_file($vItemsSetting); $itemsarray = objectsIntoArray($xmlDoc); //file_put_contents('testarray.txt', print_r($array,true)); foreach ($itemsarray['items']['item'] as $item) { $itemName = $item['@attributes']['name']; foreach ($item as $key => $field) { if ($key == '@attributes') { foreach ($field as $key1 => $attr) { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $itemName . '","' . $key1 . '","' . $attr . '");'); } continue; } if ($key == 'image') { foreach ($field as $key1 => $attr) { if ($attr['name'] == 'icon') { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $itemName . '","iconurl","' . $attr['url'] . '");'); break; } if ($attr['@attributes']['name'] == 'icon') { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $itemName . '","iconurl","' . $attr['@attributes']['url'] . '");'); break; } } continue; } if ($key == 'masteryLevel') { foreach ($field as $key1 => $attr) { if (isset($attr['@attributes']['gift'])) { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $itemName . '","masterymax","' . $attr['@attributes']['count'] . '");'); break; } if (isset($attr['gift'])) { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $itemName . '","masterymax","' . $attr['count'] . '");'); break; } } continue; } if (is_array($field)) { $_SESSION['vDataDB']->exec("insert into units(name,field,content) values('" . $itemName . "','" . $key . "','" . serialize($field) . "');"); } else { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $itemName . '","' . $key . '","' . $field . '");'); } } } $xmlDoc = simplexml_load_file($vGameSetting); foreach ($xmlDoc->farming as $vItem) { foreach ($vItem->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("_farming","' . $vField . '","' . $vContent . '");'); } } foreach ($xmlDoc->collections->collection as $vItem) { $vItemName = (string) $vItem['name']; if (strlen($vItemName) > 0) { foreach ($vItem->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vItemName . '","' . $vField . '","' . $vContent . '");'); } foreach ($vItem->children() as $vSubName => $vSubElement) { if ($vSubName == 'collectable') { $_SESSION['vDataDB']->query('insert into collectables(name,field,content) values("' . $vItemName . '","collectable","' . $vSubElement['code'] . '");'); if (isset($vSubElement['chance'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vSubElement['code'] . '","chance","' . $vSubElement['chance'] . '");'); } if (isset($vSubElement['rarity'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vSubElement['code'] . '","rarity","' . $vSubElement['rarity'] . '");'); } if (isset($vSubElement['source'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vSubElement['code'] . '","source","' . $vSubElement['source'] . '");'); } if (isset($vSubElement['numneeded'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vSubElement['code'] . '","numneeded","' . $vSubElement['numneeded'] . '");'); } } if ($vSubName == 'tradeInReward') { if (isset($vSubElement['xp'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vItemName . '","tradeInReward_xp","' . $vSubElement['xp'] . '");'); } if (isset($vSubElement['coins'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vItemName . '","tradeInReward_coins","' . $vSubElement['coins'] . '");'); } if (isset($vSubElement['gift'])) { $_SESSION['vDataDB']->exec('insert into collectables(name,field,content) values("' . $vItemName . '","tradeInReward_gift","' . $vSubElement['gift'] . '");'); } } } } } foreach ($xmlDoc->achievements->achievement as $vItem) { $vItemName = (string) $vItem['name']; $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $vItemName . '","type","achieve");'); if (strlen($vItemName) > 0) { foreach ($vItem->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->exec('insert into achievements(name,field,content) values("' . $vItemName . '","' . $vField . '","' . $vContent . '");'); $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $vItemName . '","' . $vField . '","' . $vContent . '");'); } foreach ($vItem->children() as $vSubName => $vSubElement) { if ($vSubName == 'image') { if ($vSubElement['name'] == 'icon_48') { $_SESSION['vDataDB']->exec('insert into achievements(name,field,content) values("' . $vItemName . '","iconurl","' . $vSubElement['url'] . '");'); $_SESSION['vDataDB']->exec('insert into units(name,field,content) values("' . $vItemName . '","iconurl","' . $vSubElement['url'] . '");'); } } elseif ($vSubName = 'level') { $_SESSION['vDataDB']->exec('insert into achievements(name,field,content) values("' . $vItemName . '","count","' . $vSubElement['count'] . '");'); $_SESSION['vDataDB']->exec('insert into achievements(name,field,content) values("' . $vItemName . '","xp","' . $vSubElement['xp'] . '");'); $_SESSION['vDataDB']->exec('insert into achievements(name,field,content) values("' . $vItemName . '","coins","' . $vSubElement['coins'] . '");'); } } } } unset($xmlDoc); //$xmlDoc = simplexml_load_file($vStorageConfig); $XML_string = file_get_contents($vStorageConfig); $obj = new xml2array($XML_string); $itemsarray = $obj->getResult(); foreach ($itemsarray['storage']['StorageBuilding'] as $item) { $itemName = $item['name']; unset($item['metadata'], $item['#comment']); foreach ($item as $key => $value) { if (is_array($value) && count($value) == 1) { $_SESSION['vDataDB']->exec('insert into storage(name,field,content) values("' . $itemName . '","' . $key . '","' . implode('', $value) . '");'); } elseif (is_string($value)) { $_SESSION['vDataDB']->exec('insert into storage(name,field,content) values("' . $itemName . '","' . $key . '","' . $value . '");'); } else { $_SESSION['vDataDB']->exec("insert into storage(name,field,content) values('" . $itemName . "','" . $key . "','" . serialize($value) . "');"); } } } foreach ($itemsarray['storage']['FeatureCreditStorage'] as $item) { $itemName = $item['name']; unset($item['metadata'], $item['#comment']); foreach ($item as $key => $value) { if (is_array($value) && count($value) == 1) { $_SESSION['vDataDB']->exec('insert into storage(name,field,content) values("' . $itemName . '","' . $key . '","' . implode('', $value) . '");'); } elseif (is_string($value)) { $_SESSION['vDataDB']->exec('insert into storage(name,field,content) values("' . $itemName . '","' . $key . '","' . $value . '");'); } else { $_SESSION['vDataDB']->exec("insert into storage(name,field,content) values('" . $itemName . "','" . $key . "','" . serialize($value) . "');"); } } } $xmlDoc = simplexml_load_file($vCraftingConfig); foreach ($xmlDoc->recipes->CraftingRecipe as $vRecipe) { $vRecipeID = (string) $vRecipe['id']; if (strlen($vRecipeID) > 0) { $vRecipeName = ''; foreach ($vRecipe->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->query('insert into crafting(name,field,content) values("' . $vRecipeID . '","' . $vField . '","' . $vContent . '");'); } foreach ($vRecipe->children() as $vSubName => $vSubElement) { if ($vSubName == 'name') { $vRecipeName = (string) $vSubElement; } if ($vSubName == 'image') { if ($vSubElement['name'] == 'icon') { $_SESSION['vDataDB']->exec('insert into crafting(name,field,content) values("' . $vRecipeID . '","iconurl","' . $vSubElement['url'] . '");'); } } elseif ($vSubName == 'Reward') { foreach ($vSubElement->children() as $vSubSubName => $vSubSubElement) { foreach ($vSubSubElement->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->exec('insert into crafting(name,field,content) values("' . $vRecipeID . '","reward_' . $vSubSubName . '_' . $vField . '","' . (string) $vContent . '");'); } } } elseif ($vSubName == 'Ingredients') { foreach ($vSubElement->children() as $vSubSubName => $vSubSubElement) { $_SESSION['vDataDB']->exec('insert into crafting(name,field,content) values("' . $vRecipeID . '","Ingredient_itemCode","' . $vSubSubElement['itemCode'] . '");'); $_SESSION['vDataDB']->exec('insert into crafting(name,field,content) values("' . $vRecipeID . '","Ingredient_quantityRequired_' . $vSubSubElement['itemCode'] . '","' . $vSubSubElement['quantityRequired'] . '");'); } } else { $_SESSION['vDataDB']->exec('insert into crafting(name,field,content) values("' . $vRecipeID . '","' . $vSubName . '","' . (string) $vSubElement . '");'); } } if (strlen($vRecipeName) > 0) { $_SESSION['vDataDB']->exec('update crafting set name="' . $vRecipeName . '" where name="' . $vRecipeID . '"'); } } } unset($xmlDoc); $xmlDoc = simplexml_load_file($vQuestsConfig); foreach ($xmlDoc->quest as $vQuest) { $vQuestID = (string) $vQuest['id']; if (strlen($vQuestID) > 0) { foreach ($vQuest->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","' . $vField . '","' . $vContent . '");'); } foreach ($vQuest->children() as $vSubName => $vSubElement) { if ($vSubName == 'text') { foreach ($vSubElement->attributes() as $vField => $vContent) { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","' . $vField . '","' . (string) $vContent . '");'); } } elseif ($vSubName == 'icon') { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","iconurl","' . $vSubElement['url'] . '");'); } elseif ($vSubName == 'questGiverImage') { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","questGiverImage","' . $vSubElement['url'] . '");'); } elseif ($vSubName == 'completionRequirements') { $vCompleteName = $vSubElement['name']; $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","completionRequirements_' . $vCompleteName . '","' . $vCompleteName . '");'); $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","completionRequirements_' . $vCompleteName . '_timeLimit","' . $vSubElement['timeLimit'] . '");'); foreach ($vSubElement->children() as $vSubSubName => $vSubSubElement) { if ($vSubSubName == 'requirement') { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","completionRequirements_' . $vCompleteName . '_' . (string) $vSubSubElement['action'] . '_' . (string) $vSubSubElement['type'] . '","' . (string) $vSubSubElement['many'] . '");'); } if ($vSubSubName == 'reward') { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","completionRequirements_' . $vCompleteName . '_reward_coins","' . (string) $vSubSubElement['coins'] . '");'); $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","completionRequirements_' . $vCompleteName . '_reward_experience","' . (string) $vSubSubElement['experience'] . '");'); } } } else { $_SESSION['vDataDB']->exec('insert into quests(name,field,content) values("' . $vQuestID . '","' . $vSubName . '","' . (string) $vSubElement . '");'); } } } } unset($xmlDoc); $_SESSION['vDataDB']->query('COMMIT TRANSACTION'); $vCollectable = array(); // create collectable_info.txt $vSQL = 'select * from collectables where field="code"'; $vResult = $_SESSION['vDataDB']->query($vSQL); while ($vRow = $vResult->fetchArray(SQLITE3_ASSOC)) { $vCollectable[$vRow['content']]['name'] = $vRow['name']; $vCollectable[$vRow['content']]['code'] = $vRow['content']; $vSQL2 = 'select content from collectables where name="' . $vRow['name'] . '" and field="tradeInReward_xp"'; $vCollectable[$vRow['content']]['tradeInReward'] = $_SESSION['vDataDB']->querySingle($vSQL2); $vSQL2 = 'select content from collectables where name="' . $vRow['name'] . '" and field="realname"'; $vCollectable[$vRow['content']]['realname'] = $_SESSION['vDataDB']->querySingle($vSQL2); $vSQL2 = 'select content from collectables where name="' . $vRow['name'] . '" and field="collectable"'; $vResult2 = $_SESSION['vDataDB']->query($vSQL2); while ($vRow2 = $vResult2->fetchArray(SQLITE3_ASSOC)) { $vCollectable[$vRow['content']]['collectable'][] = $vRow2['content']; } } file_put_contents('collectable_info.txt', serialize($vCollectable)); unset($vCollectable); $vAchievements = array(); $vSQL = 'select * from achievements where field="code"'; $vResult = $_SESSION['vDataDB']->query($vSQL); while ($vRow = $vResult->fetchArray(SQLITE3_ASSOC)) { $vAchievements[$vRow['content']]['name'] = $vRow['name']; $vAchievements[$vRow['content']]['code'] = $vRow['content']; $vSQL2 = 'select content from achievements where name="' . $vRow['name'] . '" and field="iconurl"'; $vAchievements[$vRow['content']]['iconurl'] = $_SESSION['vDataDB']->querySingle($vSQL2); $vSQL2 = 'select content from achievements where name="' . $vRow['name'] . '" and field="realname"'; $vAchievements[$vRow['content']]['realname'] = $_SESSION['vDataDB']->querySingle($vSQL2); $vSQL2 = 'select content from achievements where name="' . $vRow['name'] . '" and field="desc"'; $vAchievements[$vRow['content']]['desc'] = $_SESSION['vDataDB']->querySingle($vSQL2); $vSQL2 = 'select content from achievements where name="' . $vRow['name'] . '" and field="count" order by field'; $vResult2 = $_SESSION['vDataDB']->query($vSQL2); while ($vRow2 = $vResult2->fetchArray(SQLITE3_ASSOC)) { $vAchievements[$vRow['content']]['level'][] = $vRow2['content']; } } file_put_contents('achievement_info.txt', serialize($vAchievements)); unset($vAchievements); file_put_contents('units.txt', serialize(Units_GetAll())); file_put_contents('sqlite_check.txt', $_SESSION['flashRevision']); } EchoData('OK'); }
/** * 刷单标记发货:一号店 */ function shipping_sync_14($order_info) { include '../admin/yhd/YhdClient.php'; include '../admin/yhd/sk.php'; include '../admin/yhd/request/order/OrderLogisticsPushRequest.php'; include '../admin/yhd/request/logistics/LogisticsOrderShipmentsUpdateRequest.php'; $auth = (include '../admin/yhd/config.php'); $req = new LogisticsOrderShipmentsUpdateRequest(); // 应用级参数 $req->setOrderCode($order_info['order_sn']); $req->setExpressNbr($tracking_sn); $sql_select = 'SELECT 1mall_code FROM ' . $GLOBALS['ecs']->table('shipping') . " WHERE shipping_id={$order_info['shipping_id']}"; $req->setDeliverySupplierId($GLOBALS['db']->getOne($sql_select)); $yhdClient = new YhdClient(); // 系统级参数 $yhdClient->appkey = $auth['appkey']; $yhdClient->secretKey = $auth['secretKey']; $yhdClient->format = 'json'; $result = $yhdClient->execute($req, $sk['accessToken']); $result = objectsIntoArray($result); if ($result['response']['errInfoList']) { $req = new OrderDetailGetRequest(); $req->setOrderCode($order_info['order_sn']); $yhdClient = new YhdClient(); // 系统级参数 $yhdClient->appkey = $auth['appkey']; $yhdClient->secretKey = $auth['secretKey']; $yhdClient->format = 'json'; $express = $yhdClient->execute($req, $sk['accessToken']); $express = json_decode($express, true); if (isset($express['response']['orderInfo']['orderDetail']['merchantExpressNbr']) && $express['response']['orderInfo']['orderDetail']['merchantExpressNbr'] == $tracking_sn) { } elseif (isset($express['response']['orderInfo']['orderDetail']['merchantExpressNbr']) && $express['response']['orderInfo']['orderDetail']['merchantExpressNbr'] != $tracking_sn) { $res['message'] = '该订单已经在一号店标记发货,所使用的运单号为【' . $express['response']['orderInfo']['orderDetail']['merchantExpressNbr'] . '】'; } else { $res['message'] = $result['response']['errInfoList']['errDetailInfo'][0]['errorDes']; $res['tracking_sn'] = $order_info['tracking_sn']; } } }
function rtomatoes_details($cons) { global $rkey; global $remain_movie; global $word; global $spell_checked_word; $check_title = $spell_checked_word; global $snn; // $check_title = $mov_name; global $title_tm, $rating_tm, $synop_tm, $casting_tm, $year_tm; $rotten_return = ''; $rating = array(); $content_jsn = json_decode($cons); $content_jsn = objectsIntoArray($content_jsn); //print_r($content_jsn); if (isset($content_jsn['total']) && $content_jsn['total'] != 0 && $content_jsn['total'] != NULL) { $total_results = trim($content_jsn['total']); } foreach ($content_jsn['movies'] as $distinct) { //print_r($distinct); $snn[] = $distinct; } //print_r($snn); foreach ($snn as $key => $data) { if (isset($data['title']) && $data['title'] != NULL) { $title_tm[$key] = trim($data['title']); } if (isset($data['id']) && $data['id'] != NULL) { $id_tm[$key] = trim($data['id']); } foreach ($data['ratings'] as $kn => $rnt) { if (isset($rnt) && $rnt != NULL) { $rating_tm[$key][$kn] = trim($rnt) / 10; } } if (isset($data['year']) && $data['year'] != NULL) { $year_tm[$key] = trim($data['year']); } if (isset($data['synopsis']) && $data['synopsis'] != NULL) { $synop_tm[$key] = trim($data['synopsis']); } //$runtime[$key]= trim($data['runtime']); //print_r($release = trim($content_jsn['movies'][0]['synopsis'])); $i = 0; foreach ($data['abridged_cast'] as $cst) { //var_dump($cst); if (isset($cst['name']) && $cst['name'] != NULL) { $casting_tm[$key][$i][0] = trim($cst['name']); } if (isset($cst['characters'][0]) && $cst['characters'][0] != NULL) { $casting_tm[$key][$i][1] = trim($cst['characters'][0]); } $i = $i + 1; } } $fkey = 100; $prevyear = 1111; $rkey = 0; if (isset($total_results)) { for ($i = 0; $i < $total_results; $i++) { if (!isset($title_tm[$i])) { continue; } $dist_title = $title_tm[$i]; $lev_arry[$i] = levenshtein($dist_title, $check_title); } foreach ($lev_arry as $id => $val) { if ($val <= $fkey) { if ($val == $fkey) { if ($prevyear < $year_tm[$id]) { $rkey = $id; $fkey = $val; $prevyear = $year_tm[$id]; } } else { $rkey = $id; $fkey = $val; $prevyear = $year_tm[$id]; } } } // asort($lev_arry); // // $temp = each($lev_arry); // echo "Key--" . $rkey = $temp["key"]; // echo "Value--" . $rtitle = $temp["value"]; $rotten_return = get_movie_details($rkey); //unset ($title_tm[$rkey]); if (isset($title_tm)) { //echo "INN"; print_r($remain_movie = $title_tm); } } //$rotten_return = get_movie_details(0); if (!empty($rotten_return)) { $result = array("movie" => true, "type" => "rotten", "id" => $id_tm[$rkey], "title" => $title_tm[$rkey], "value" => $rotten_return); } else { $result = false; } return $result; }
public function addFromXml($releaseID, $xml) { $xmlObj = @simplexml_load_string($xml); $arrXml = objectsIntoArray($xmlObj); $containerformat = ""; $overallbitrate = ""; if (isset($arrXml["File"]) && isset($arrXml["File"]["track"])) { foreach ($arrXml["File"]["track"] as $track) { if (isset($track["@attributes"]) && isset($track["@attributes"]["type"])) { if ($track["@attributes"]["type"] == "General") { if (isset($track["Format"])) { $containerformat = $track["Format"]; } if (isset($track["Overall_bit_rate"])) { $overallbitrate = $track["Overall_bit_rate"]; } $gendata = $track; } elseif ($track["@attributes"]["type"] == "Video") { $videoduration = ""; $videoformat = ""; $videocodec = ""; $videowidth = ""; $videoheight = ""; $videoaspect = ""; $videoframerate = ""; $videolibrary = ""; $gendata = ""; $viddata = ""; $audiodata = ""; if (isset($track["Duration"])) { $videoduration = $track["Duration"]; } if (isset($track["Format"])) { $videoformat = $track["Format"]; } if (isset($track["Codec_ID"])) { $videocodec = $track["Codec_ID"]; } if (isset($track["Width"])) { $videowidth = preg_replace("/[^0-9]/", '', $track["Width"]); } if (isset($track["Height"])) { $videoheight = preg_replace("/[^0-9]/", '', $track["Height"]); } if (isset($track["Display_aspect_ratio"])) { $videoaspect = $track["Display_aspect_ratio"]; } if (isset($track["Frame_rate"])) { $videoframerate = str_replace(" fps", "", $track["Frame_rate"]); } if (isset($track["Writing_library"])) { $videolibrary = $track["Writing_library"]; } $viddata = $track; $this->addVideo($releaseID, $containerformat, $overallbitrate, $videoduration, $videoformat, $videocodec, $videowidth, $videoheight, $videoaspect, $videoframerate, $videolibrary); } elseif ($track["@attributes"]["type"] == "Audio") { $audioID = 1; $audioformat = ""; $audiomode = ""; $audiobitratemode = ""; $audiobitrate = ""; $audiochannels = ""; $audiosamplerate = ""; $audiolibrary = ""; $audiolanguage = ""; $audiotitle = ""; if (isset($track["@attributes"]["streamid"])) { $audioID = $track["@attributes"]["streamid"]; } if (isset($track["Format"])) { $audioformat = $track["Format"]; } if (isset($track["Mode"])) { $audiomode = $track["Mode"]; } if (isset($track["Bit_rate_mode"])) { $audiobitratemode = $track["Bit_rate_mode"]; } if (isset($track["Bit_rate"])) { $audiobitrate = $track["Bit_rate"]; } if (isset($track["Channel_s_"])) { $audiochannels = $track["Channel_s_"]; } if (isset($track["Sampling_rate"])) { $audiosamplerate = $track["Sampling_rate"]; } if (isset($track["Writing_library"])) { $audiolibrary = $track["Writing_library"]; } if (isset($track["Language"])) { $audiolanguage = $track["Language"]; } if (isset($track["Title"])) { $audiotitle = $track["Title"]; } $audiodata = $track; $this->addAudio($releaseID, $audioID, $audioformat, $audiomode, $audiobitratemode, $audiobitrate, $audiochannels, $audiosamplerate, $audiolibrary, $audiolanguage, $audiotitle); } elseif ($track["@attributes"]["type"] == "Text") { $subsID = 1; $subslanguage = "Unknown"; if (isset($track["@attributes"]["streamid"])) { $subsID = $track["@attributes"]["streamid"]; } if (isset($track["Language"])) { $subslanguage = $track["Language"]; } $this->addSubs($releaseID, $subsID, $subslanguage); } } } } }
public function getEpisodeInfo($rageid, $series, $episode) { $result = array('title' => '', 'airdate' => ''); $series = str_ireplace("s", "", $series); $episode = str_ireplace("e", "", $episode); $lookupUrl = $this->xmlEpisodeInfoUrl . "&sid=" . $rageid . "&ep=" . $series . "x" . $episode; $xml = $this->fetchCache($lookupUrl); if ($xml === false) { $xml = Utility::getUrl(['url' => $lookupUrl, 'verifycert' => false]); } if ($xml !== false) { $this->storeCache($lookupUrl, $xml); if (preg_match('/no show found/i', $xml)) { return false; } $xmlObj = @simplexml_load_string($xml); $arrXml = objectsIntoArray($xmlObj); if (is_array($arrXml)) { if (isset($arrXml['episode']['airdate']) && $arrXml['episode']['airdate'] != '0000-00-00') { $result['airdate'] = $arrXml['episode']['airdate']; } if (isset($arrXml['episode']['title'])) { $result['title'] = $arrXml['episode']['title']; } return $result; } return false; } return false; }
public function getReleaseNameForReqId($url, $groupname, $reqid, $echooutput = false) { $url = str_ireplace("[GROUP]", urlencode($groupname), $url); $url = str_ireplace("[REQID]", urlencode($reqid), $url); $xml = ""; $arrXml = ""; $xml = getUrl($url); if ($xml === false || preg_match('/no feed/i', $xml)) { return "no feed"; } else { if ($xml != "") { $xmlObj = @simplexml_load_string($xml); $arrXml = objectsIntoArray($xmlObj); if (isset($arrXml["item"]) && is_array($arrXml["item"]) && is_array($arrXml["item"]["@attributes"])) { if ($echooutput) { echo "found title for reqid " . $reqid . " - " . $arrXml["item"]["@attributes"]["title"] . "\n"; } return $arrXml["item"]["@attributes"]["title"]; } } } if ($echooutput) { echo "no title found for reqid " . $reqid . "\n"; } return ""; }
function getXMLobj($xmlUrl) { $xmlStr = file_get_contents($xmlUrl); $xmlObj = simplexml_load_string($xmlStr); return objectsIntoArray($xmlObj); }
/** * @param $url * @param $nnid * @param $groupname * @param $reqid * * @return string */ public function getReleaseNameForReqId($url, $nnid, $groupname, $reqid) { if ($reqid == " null " || $reqid == "0" || $reqid == "") { return ""; } $url = str_ireplace("[GROUP]", urlencode($groupname), $url); $url = str_ireplace("[REQID]", urlencode($reqid), $url); if ($nnid != "") { $url = $url . "&newznabID=" . $nnid; } $xml = Utility::getUrl([$url]); if ($xml === false || preg_match('/no feed/i', $xml)) { return "no feed"; } else { if ($xml != "") { $xmlObj = @simplexml_load_string($xml); $arrXml = objectsIntoArray($xmlObj); if (isset($arrXml["item"]) && is_array($arrXml["item"])) { foreach ($arrXml["item"] as $item) { $title = array_key_exists("@attributes", $item) ? $item["@attributes"]["title"] : $item["title"]; return $title; } } } } return ""; }
function getAPISportskeda() { global $to_logserver; $tennis_data = apc_fetch('apidata', $success); if (!$tennis_data) { echo "<h2>Inside SPORTSKEEDA API </h2>"; $date_api = date('Y-m-d'); $ttime = microtime(true); $apiurl = "http://api.sportskeeda.com/live/sport/6/{$date_api}/{$date_api}"; $content = file_get_contents($apiurl); $ttime = microtime(true) - $ttime; $log_count = count($to_logserver['urls']); $to_logserver['urls'][$log_count]['sportskeeda']['fetch_time'] = $ttime; $to_logserver['urls'][$log_count]['sportskeeda']['type'] = 'tennis'; $to_logserver['urls'][$log_count]['sportskeeda']['url'] = $apiurl; if (!empty($content)) { $to_logserver['urls'][$log_count]['sportskeeda']['status'] = 1; $xml = objectsIntoArray(simplexml_load_string($content)); $tennis_data = $xml['match']; } else { $to_logserver['urls'][$log_count]['sportskeeda']['status'] = 0; } apc_store('apidata', $tennis_data, 300); } return $tennis_data; }
file_put_contents($cache_file, $xmlStr, LOCK_EX); } if ($xmlStr == false) { echo '<center>ขณะนี้มีผู้ใช้งานระบบมากเกินกว่ากำหนด กรุณาลองใหม่ในภายหลัง</center>'; } else { $xmlObj = json_decode($xmlStr); $arrXml = objectsIntoArray($xmlObj); } $i = 0; $y = 0; $z = 0; while ($i < 25) { echo '<tr>'; for ($y = 0; $y < 8; $y++) { $temp1 = json_decode($arrXml['Channels'][$z]); $temp1 = objectsIntoArray($temp1); //print_r($temp1); echo '<th><a href="javascript:void();" onclick="loadVideo(\'' . htmlspecialchars($temp1['url']) . '\');"><img src="' . $temp1['thumb'] . '" width="50" height="50"> <br><a href="' . htmlspecialchars($temp1['url']) . '">Play VLC</a></th>'; $z++; } echo "</tr>"; $i++; } ?> </table> <hr> </div> <!-- End M1 Tab-->
if (preg_match("~__ttt__(\\d)_(\\d{9})~", $req, $match)) { $difc = $match[1]; $next_move = $match[2]; } else { if (preg_match("~__ttt__err__(\\d)_(\\d{9})~", $req, $match)) { $err = "The box is already marked. Please select unmarked one.\n"; $difc = $match[1]; $next_move = $match[2]; } } } } if ($next_move) { $url = "http://IP/tictactoe/index.php?tw_subkey=play&game_mode={$difc}&move_next={$next_move}"; $resp = file_get_contents($url); $resp_ar = objectsIntoArray(simplexml_load_string($resp)); $total_return = $err . $resp_ar['response']; if ($resp_ar['status'] == 0) { $list = array(); $options_list = array(); $moves = str_split($resp_ar['next_move']); for ($i = 0; $i < 9; $i++) { if ($moves[$i] == 0) { $tmp = $moves; $tmp[$i] = 1; $list[] = array("content" => "__ttt__{$difc}" . "_" . implode('', $tmp)); } else { $list[] = array("content" => "__ttt__err__{$difc}" . "_{$next_move}"); } } } else {
function catalog_import_offers() { $xml = file_get_contents("import/import_offers.xml.xml"); $xmlObj = simplexml_load_string($xml); $arrXml = objectsIntoArray($xmlObj); echo "<pre>"; $offers = $arrXml['ПакетПредложений']['Предложения']['Предложение']; // print_r($offers); foreach ($offers as $offer) { $title = $offer['Наименование']; $price = $offer['Цены']['Цена']['ЦенаЗаЕдиницу']; $count = $offer['Количество']; $articul = $offer['Артикул']; echo "{$title}<br>Articul: {$articul}<br>Price: {$price}<br>Count: {$count}<br>"; $catalog_id = db_result(db_query("SELECT id FROM catalog WHERE articul='%s' LIMIT 1", $articul)); if ($catalog_id) { db_query("UPDATE catalog SET count=%d, price='%s' WHERE id=%d", $count, $price, $catalog_id); } else { echo "Товар не найден по артикулу '{$articul}'"; } } }
<?php //date_default_timezone_set("Asia/Calcutta"); //include 'functions.php'; $url = 'http://xml.premierleague.com/dynamicxml/matchlive/ScoresRoundUp_1.xml'; $xml_in = file_get_contents($url); $xml = objectsIntoArray(simplexml_load_string($xml_in)); //print_r($xml); if (isset($xml['competition']['match'][0])) { foreach ($xml['competition']['match'] as $i => $match) { $game[$i]['status'] = $match['@attributes']['statusDescription']; $game[$i]['venue'] = $match['@attributes']['venue']; $ko_IST = strtotime($match['@attributes']['ko'] . " + 5 hours 30 minutes"); if (time() > $ko_IST) { $time = time() - $ko_IST; $mins = floor($time / 60); $secs = $time % 60 < 10 ? "0" . $time % 60 : $time % 60; if ($mins > 45) { if ($mins > 90) { $mins = 90; $secs = '00'; } else { if ($mins > 60) { $mins -= 15; } else { $mins = 45; $secs = '00'; } } } $game[$i]['time'] = "{$mins}:{$secs}";
$site = $s->get(); $nzb = new NZB(); $items = array(); $siteGroups = array(); $missinggroups = array(); $limit = 100; $addmissinggroups = false; $verbose = false; $url = sprintf("%s&newznabID=%s&limit=%d", $site->reqidurl, $site->newznabID, $limit); $url = str_ireplace("[GROUP]", "g", $url); $url = str_ireplace("&reqid=[REQID]", "", $url); $xml = getUrl($url); if ($xml === false || preg_match('/no feed/i', $xml) || $xml == "") { echo "No feed\n"; } else { $arrXml = objectsIntoArray(@simplexml_load_string($xml)); //get all unique items into array keyed on gid if (isset($arrXml["item"]) && is_array($arrXml["item"])) { foreach ($arrXml["item"] as $item) { if (!array_key_exists($item["@attributes"]["reqid"], $items)) { $items[$item["@attributes"]["reqid"]] = $item["@attributes"]; } } } if (count($items) > 0) { // strip out any gids already in db $allgids = array_keys($items); $sql = sprintf("select gid from releases where gid in (%s)", $db->makeStringIn($allgids)); $gidstoget = array_diff($allgids, $db->getDataAsArray($db->query($sql), "gid")); if (count($gidstoget) == 0) { if ($verbose) {
$xmlUrl = "http://allnewservice.serviceseries.com/newversion/series7Service.ashx?"; $postdata = http_build_query(array('type' => 'getall', 'pid' => $page, 'ps' => '20')); $opts = array('http' => array('method' => 'POST', 'header' => 'User-Agent: com.comicfcapp.moviefciphone/3.0 (unknown, iPhone OS 6.1.3, iPod touch, Scale/2.000000)', 'content' => $postdata)); $context = stream_context_create($opts); $cache_file = "cache/m7_index_d_{$page}.cache"; if (file_exists($cache_file) && filemtime($cache_file) > time() - 60 * 60 * 5) { $xmlStr = file_get_contents($cache_file); } else { $xmlStr = file_get_contents($xmlUrl, false, $context); file_put_contents($cache_file, $xmlStr, LOCK_EX); } if ($xmlStr == false) { echo '<center>ขณะนี้มีผู้ใช้งานระบบมากเกินกว่ากำหนด กรุณาลองใหม่ในภายหลัง</center>'; } else { $xmlObj = json_decode($xmlStr); $arrXml = objectsIntoArray($xmlObj); $i = 0; $y = 0; $z = 0; while ($i < 3) { echo '<tr>'; for ($y = 0; $y < 4; $y++) { echo '<th><a href="#" data-toggle="modal" data-target="#ViewM1_' . $z . '" ><img src="getpostermv_m7.php?id=' . $arrXml[$z]['PictureName'] . ' " width="200" height="200"></br>' . $arrXml[$z]['EnTitle'] . '</a></th>'; $z++; } echo "</tr>"; $i++; } ?> </table>
$quArr = explode(' ', trim($query)); echo "<br>After Explode"; var_dump($quArr); $gid = $_GET['gid']; $sm = $_GET['sm']; $direct = isset($_GET['direct']) && ($_GET['direct'] == 'true' || $_GET['direct'] == 1) ? true : false; $mwiki = new Mediawiki($gid, $sm); echo $query . '<br>'; print_r($mwiki->get_data($query)); if (isset($_GET['debug'])) { echo "</pre>"; ob_end_flush(); } else { ob_end_clean(); } $infoArr1 = objectsIntoArray($mwiki->infobox); var_dump($infoArr1); echo "<h1>image</h1>"; echo $mwiki->infobox['image']; foreach ($infoArr1 as $id1 => $val) { $id = preg_replace("~ies\$~", "y", $id1); $id = preg_replace("~e?s\$~", "", $id); $infoArr[$id] = preg_replace('~<ref(.+)</ref>~Ui', '', $infoArr1[$id1]); $infoArr[$id] = strip_tags($infoArr[$id]); $infoArr[$id] = preg_replace('~\\{\\{(.+)\\[\\[~Ui', '', $infoArr[$id]); $infoArr[$id] = preg_replace('~\\{\\{~Usi', '', $infoArr[$id]); $infoArr[$id] = preg_replace('~\\}\\}~Ui', '', $infoArr[$id]); $infoArr[$id] = str_replace(']] | [[', ',', $infoArr[$id]); $infoArr[$id] = str_replace(' ', ',', $infoArr[$id]); $infoArr[$id] = str_replace('| [[', ',', $infoArr[$id]); $infoArr[$id] = preg_replace('~\\|(.+)\\]\\]~Ui', '', $infoArr[$id]);
public function getRageMatch($showInfo) { $title = $showInfo['cleanname']; $xml = getUrl($this->xmlFullSearchUrl . urlencode(strtolower($title))); //full search gives us the akas if ($xml !== false) { $xmlObj = simplexml_load_string($xml); $arrXml = objectsIntoArray($xmlObj); if (isset($arrXml['show']) && is_array($arrXml['show'])) { // we got a valid xml response $titleMatches = array(); $urlMatches = array(); $akaMatches = array(); if (isset($arrXml['show']['showid'])) { // we got exactly 1 match so lets convert it to an array so we can use it in the logic below $newArr = array(); $newArr[] = $arrXml['show']; unset($arrXml); $arrXml['show'] = $newArr; } foreach ($arrXml['show'] as $arr) { $titlepct = $urlpct = $akapct = 0; // get a match percentage based on our name and the name returned from tvr $titlepct = $this->checkMatch($title, $arr['name']); if ($titlepct !== false) { $titleMatches[$titlepct][] = array('title' => $arr['name'], 'showid' => $arr['showid'], 'country' => $arr['country'], 'genres' => $arr['genres'], 'tvr' => $arr); } // get a match percentage based on our name and the url returned from tvr if (isset($arr['link']) && preg_match('/tvrage\\.com\\/((?!shows)[^\\/]*)$/i', $arr['link'], $tvrlink)) { $urltitle = str_replace('_', ' ', $tvrlink[1]); $urlpct = $this->checkMatch($title, $urltitle); if ($urlpct !== false) { $urlMatches[$urlpct][] = array('title' => $urltitle, 'showid' => $arr['showid'], 'country' => $arr['country'], 'genres' => $arr['genres'], 'tvr' => $arr); } } // check if there are any akas for this result and get a match percentage for them too if (isset($arr['akas'])) { if (is_array($arr['akas']['aka'])) { // multuple akas foreach ($arr['akas']['aka'] as $aka) { $akapct = $this->checkMatch($title, $aka); if ($akapct !== false) { $akaMatches[$akapct][] = array('title' => $aka, 'showid' => $arr['showid'], 'country' => $arr['country'], 'genres' => $arr['genres'], 'tvr' => $arr); } } } else { // one aka $akapct = $this->checkMatch($title, $arr['akas']['aka']); if ($akapct !== false) { $akaMatches[$akapct][] = array('title' => $arr['akas']['aka'], 'showid' => $arr['showid'], 'country' => $arr['country'], 'genres' => $arr['genres'], 'tvr' => $arr); } } } } // reverse sort our matches so highest matches are first krsort($titleMatches); krsort($urlMatches); krsort($akaMatches); //print_r($titleMatches); //print_r($urlMatches); //print_r($akaMatches) // look for 100% title matches first if (isset($titleMatches[100])) { if ($this->echooutput) { echo '-found 100% match: "' . $titleMatches[100][0]['title'] . '"' . "\n"; } return $titleMatches[100][0]; } // look for 100% url matches next if (isset($urlMatches[100])) { if ($this->echooutput) { echo '-found 100% url match: "' . $urlMatches[100][0]['title'] . '"' . "\n"; } return $urlMatches[100][0]; } // look for 100% aka matches next if (isset($akaMatches[100])) { if ($this->echooutput) { echo '-found 100% aka match: "' . $akaMatches[100][0]['title'] . '"' . "\n"; } return $akaMatches[100][0]; } // no 100% matches, loop through what we got and if our next closest match is more than TvRage::MATCH_PROBABILITY % of the title lets take it foreach ($titleMatches as $mk => $mv) { // since its not 100 match if we have country info lets use that to make sure we get the right show if (isset($showInfo['country']) && !empty($showInfo['country']) && !empty($mv[0]['country'])) { if (strtolower($showInfo['country']) != strtolower($mv[0]['country'])) { continue; } } if ($this->echooutput) { echo '-found ' . $mk . '% match: "' . $titleMatches[$mk][0]['title'] . '"' . "\n"; } return $titleMatches[$mk][0]; } // same as above but for akas foreach ($akaMatches as $ak => $av) { if (isset($showInfo['country']) && !empty($showInfo['country']) && !empty($av[0]['country'])) { if (strtolower($showInfo['country']) != strtolower($av[0]['country'])) { continue; } } if ($this->echooutput) { echo '-found ' . $ak . '% aka match: "' . $akaMatches[$ak][0]['title'] . '"' . "\n"; } return $akaMatches[$ak][0]; } if ($this->echooutput) { echo '-no match found online' . "\n"; } return false; } else { if ($this->echooutput) { echo '-nothing returned from tvrage' . "\n"; } return false; } } else { if ($this->echooutput) { echo '-error connecting to tvrage' . "\n"; } return -1; } if ($this->echooutput) { echo '-no match found online' . "\n"; } return false; }
<?php $search = urlencode($word); $url = "API"; $feed = file_get_contents($url); $xmlObj = simplexml_load_string($feed); $maxresults = 5; $i = 0; foreach ($xmlObj->entry as $entry) { $ent = objectsIntoArray($entry); $id = $entry->id; preg_match("~/videos/(.+)~", $id, $match); echo $id = $match[1]; echo '<br>'; $title = $ent['title']; $description = $entry->content; $link = $entry->link; $attr = $link->attributes(); $options_list[] = strlen($title) > 60 ? substr($title, 0, 60) : $title; $list[] = array("content" => "video_id {$id}"); $videosearch_return = "Search results:"; //echo "$id<h4><a href='" . $attr['href'] . "'>$title</a></h4>$description<br>"; $i++; if ($i == $maxresults) { break; } }
echo "<a class='btn' href='search_m3.php?page={$page3}&keyword={$keyword}'> <i class='icon-arrow-left'></i> Back</a> <a class='btn btn-primary' href='search_m3.php?keyword={$keyword}'> <i class='icon-home'></i> Home</a> <a class='btn' href='search_m3.php?page={$page2}&keyword={$keyword}'>Next <i class='icon-arrow-right'></i></a>"; } else { echo "<a class='btn btn-primary' href='search_m4.php?keyword={$keyword}'> <i class='icon-home'></i> Home</a> <a class='btn' href='search_m3.php?page={$page2}&keyword={$keyword}'>Next <i class='icon-arrow-right'></i></a>"; } ?> </p> <table class="table table-bordered"> <?php $xmlUrl = "http://allnewservice.serviceseries.com//newversion/SitcomFcService.ashx?"; $postdata = http_build_query(array('type' => 'getall', 'keyword' => $keyword, 'SeriesType' => 'Name', 'pid' => $page, 'ps' => 20)); $opts = array('http' => array('method' => 'POST', 'header' => 'User-Agent: com.nsmsoftservice.series8iphone/3.1 (unknown, iPhone OS 6.1.3, iPod touch, Scale/2.000000)' . 'Content-type: application/x-www-form-urlencoded', 'content' => $postdata)); $context = stream_context_create($opts); $xmlStr = file_get_contents($xmlUrl, false, $context); $obj = json_decode($xmlStr); // สร้างเป็น xml object $arrXml = objectsIntoArray($obj); // แปลงค่า xml object เป็นตัวแปร array ใน php $i = 0; $y = 0; $z = 0; while ($i < 3) { echo '<tr>'; for ($y = 0; $y < 4; $y++) { echo '<th><a href="#" data-toggle="modal" data-target="#ViewM1_' . $z . '" ><img src="getpostermv_m9.php?id=' . $arrXml[$z]['PictureName'] . ' " width="200" height="200"></br>' . $arrXml[$z]['EnTitle'] . '</a></th>'; $z++; } echo "</tr>"; $i++; } ?>
<?php if (preg_match("~\\b(price|grocery price)\\b(.+)~", $spell_checked, $match) && !preg_match("~\\b(apple i phone|apple 4s|apple iphone|apple 3g|apple 5s|apple ipad|appleipad|apple (.+))\\b~", $spell_checked)) { echo $spell_checked; echo $query = $match[1]; if (isset($match[2])) { $query = $match[2]; } $query = remwords($query); $query = trim($query); $url = "http://IP/solr/db/select/?version=2.2&start=0&rows=10&indent=on&q=" . urlencode($query) . ""; $content = file_get_contents($url); $arXml = objectsIntoArray(simplexml_load_string($content)); if (!empty($arXml["result"]["doc"])) { foreach ($arXml["result"]["doc"] as $doc => $arDocs) { var_dump($arDocs); echo $doc; if (is_numeric($doc)) { foreach ($arDocs as $res => $arDoc) { // echo $res . "\n"; if ($res == "str") { $vegname[] = $arDoc[1]; $vegurl[] = $arDoc[3]; // $url[] = $arDoc[3]; } } } else { $vegname = $arDocs[1]; $vegurl = $arDocs[3]; $content = file_get_contents($vegurl); if (preg_match("~<span id=\"our_price_display\">(.+)</span>~Usi", $content, $match)) {