Jump to content

crautcher

User
  • Posts

    95
  • Joined

  • Last visited

crautcher's Achievements

Explorer

Explorer (1/14)

-6

Reputation

  1. есть класс небольшой для перевода : <? class google_translator_exception extends Exception {} class gtranslate { private $_user_agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"; private $_sleep = 0; private $_lang_s = ''; private $_lang_t = ''; private $_sources = array(); function set_sleep($s) { $this->_sleep = $s; return $this; } function set_langs($from, $to) { $this->_lang_s = $from; $this->_lang_t = $to; return $this; } function set_text($src) { $this->_sources = is_array($src) ? $src : array($src); return $this; } function translate($text = false) { $is_array = is_array($text); $text = ($text === false) ? $this->_sources : (is_array($text) ? $text : array($text)); $result = array(); $url = "http://translate.google.ru/translate_a/t?client=t&text=%s&hl={$this->_lang_t}&sl={$this->_lang_s}&tl={$this->_lang_t}&multires=1&otf=2&ssel=4&tsel=0&sc=1"; $ch = curl_init(); $Headers = array( "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3", "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7" ); curl_setopt($ch, CURLOPT_HTTPHEADER, $Headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, $this->_user_agent); foreach ($text as $k => $t) { $t = urlencode($t); $ref = "http://translate.google.ru/#{$this->_lang_s}|{$this->_lang_t}|{$t}" ; curl_setopt($ch, CURLOPT_REFERER, $ref); curl_setopt($ch, CURLOPT_URL, sprintf($url, $t)); $body = curl_exec($ch); if (CURLE_OK != curl_errno($ch)) { throw new google_translator_exception (curl_error($ch)); } $body = iconv('KOI8-R', 'UTF-8', substr($body,2)); $result[$k] = preg_replace('@^\[\"(.*)\",\".*$@Uu', '$1', $body); if ($this->_sleep) sleep($this->_sleep); } curl_close($ch); return $is_array ? $result : array_pop($result); } } если подаю английский язык <?php echo $gt->set_langs('en', 'ru')->set_text('i\'m testing')->translate() ; "Я тестирую" всё норм , но если другой язык: <? echo $gt->set_langs('de', 'ru')->set_text('mutter')->translate() ; получаю ответ в таком виде: \u043C\u0430\u0442\u044C я так понимаю что это "мать" , как преобразовать , что это за символы такие , или может что-то в класе подправить надо ?
  2. var isLg= $("#Tlangs option[value=" + Lg + "]").length; var isCt= $("#Tlangs option[value=" + Country.toLowerCase() + "]").length; if (isLg > 0) { } else { if (isCt > 0) { } } а как выбрать нужный ? всё нашел
  3. есть селект с языками : <select name='Tlangs'> <option value="af">Afrikaans</option> <option value="sq">Albanian</option> <option value="ar">Arabic</option> ... далее есть функиця где подаётся индекс языка и страны : function somefunction(Lg , Country) { ... }как можно средствами jquery проверить { если в этом списке есть индекс поданного языка то выставить его } иначе { если есть индекс страны , выставить его }
  4. $count = intval(file_get_contents('counter.dat')); file_put_contents('counter.dat' , ++$count);
  5. в базу сохраните или в файл и будет вам счетчик
  6. на сессиях даже проще <? session_start(); if (isset($_POST['pass']) && $_POST['pass'] == 'myzuppapw') $_SESSION['admin'] = true; if (!isset($_SESSION['admin'])) { ?> <form method="post"> <p><input type="text" name="pass" id="name"></p> <p><input name="submit" type="submit" id="submit" value="go"></p> </form> <?}else{?> kontent admina ! <?}?>
  7. ну в вашей ссылке показывается что intval куда быстрее , а просто (int) еще быстрее escape_string time: 0.697912931442 intval time: 0.349272966385 int time: 0.16778588295
  8. спросил сперва на другом форуме , там мне ниче так никто и не ответил : нужно сделать таблицы для сервиса поиска синонимов , слов будет много , как лучше организовать таблицы чтобы слова не повторялись и можно было легко выбрать связку синонимов для введенного слова ?
  9. да дейтвительно sum не нужна , но все равно проблема была не в этом , нельзя алиас юзать в условии рабочий : select fbID , PMWallpost + MorningWallpost + UrlLogin as zahod from FacebookUserLoginActivity where PMWallpost + MorningWallpost + UrlLogin >= ( select PMWallpost + MorningWallpost + UrlLogin as zahod from FacebookUserLoginActivity where fbID = 'someid' ) GROUP BY fbID ORDER by zahod DESC ;
  10. написанно же , sum(PMWallpost + MorningWallpost + UrlLogin) as zahod , алиас суммы трех полей
  11. да нет же , вот рабочий запрос: select fbID , sum(PMWallpost + MorningWallpost + UrlLogin) as zahod from FacebookUserLoginActivity GROUP BY fbID ORDER by zahod DESC limit 20; это запрос вернет например так fbID zahod "какойто айди" , "215" из полей : fbID PMWallpost MorningWallpost UrlLogin "какойто айди" , "200", "10" , "5" а как сделать условие чтоб ток те где алиас заход был выше захода нного йзуера ?
  12. crautcher

    $_POST

    на не совсем empty сперва проверяет есть ли переменная и если такая есть тогда проверяет на пустоту , поэтому юзать isset и empty в одном условии нет смысла
  13. что не так , хочу вынуть заход (сумму полей) и айдишники кому они пренадлежат там где заход юзера выше захода конкретного айдишника select fbID , sum(PMWallpost + MorningWallpost + UrlLogin) as zahod from FacebookUserLoginActivity where zahod >= ( select sum(PMWallpost + MorningWallpost + UrlLogin) as zahod from FacebookUserLoginActivity where fbID = '100003708141393' ) GROUP BY fbID ORDER by zahod DESC ;
  14. crautcher

    static function

    а зачем мне обявлять статичному методу переменную в классе ? он и работает быстрее из за того что он не обращается к свойствам класса
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy