Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Доработка формы PHP "переводчик"

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
romanln2016
Отправлено: 10 Января, 2017 - 16:16:18
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Янв. 2017  


Помог: 0 раз(а)




Здравствуйте гуру пхп программирования!
очень нужна ваша помощь


1. Добавить возможность загружать текст для перевода из файла с расширением txt не более 1000 символов
2. Добавить возможность сохранять перевод в файл с расширением txt

PHP:
скопировать код в буфер обмена
  1. <head>
  2. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  3. </head>
  4. <body>
  5.  
  6. <form method="post">
  7.     <div>
  8.         <select name="direction">
  9.             <option value="en-ru" <?PHP if (isset($_REQUEST['direction']) && $_REQUEST['direction'] == 'en-ru') { echo 'selected'; }?> >С английского на русский</option>
  10.             <option value="ru-en" <?PHP if (isset($_REQUEST['direction']) && $_REQUEST['direction'] == 'ru-en') { echo 'selected'; }?> >С русского на английский</option>
  11.         </select>
  12.     </div>
  13.     <div>
  14.         <textarea name="text" id="" cols="30" rows="10"><?PHP if (isset($_REQUEST['text'])) { echo $_REQUEST['text']; }?></textarea>    
  15.     </div>
  16.     <div>
  17.         <input type="submit" value="Перевести">
  18.     </div>
  19. </form>
  20.  
  21. <?PHP if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  22.   $text = $_REQUEST['text'];
  23.   $direction = $_REQUEST['direction'];
  24.   $translate = translate($text, $direction);  
  25. } ?>
  26.  
  27. <div>
  28.   <textarea id="" cols="30" rows="10"><?PHP if (isset($translate)) { echo $translate; }?></textarea>
  29. </div>
  30.  
  31.  
  32. <?
  33.  
  34.  
  35. function translate($_str, $_direction) {
  36.  
  37.         $curlHandle = curl_init();
  38.         // options
  39.         $postData=array();
  40.        
  41.         $postData['text']= $_str;
  42.                
  43.         $key = 'trnsl.1.1.20170109T113422Z.790f54c88e4bd95e.5f913e2a67ced8f0ffab11c920d21725d2bc9d40';
  44.                
  45.         curl_setopt($curlHandle, CURLOPT_URL, "https://translate.yandex.net/api/v1.5/tr.json/translate?lang=$_direction&key=$key");
  46.         curl_setopt($curlHandle, CURLOPT_HTTPHEADER, array(
  47.             'User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4',
  48.             'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  49.             'Accept-Language: ru,en-us;q=0.7,en;q=0.3',
  50.             'Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7',
  51.             'Keep-Alive: 300',
  52.             'Connection: keep-alive'
  53.         ));
  54.         curl_setopt($curlHandle, CURLOPT_HEADER, 0);
  55.         curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1);
  56.         curl_setopt($curlHandle, CURLOPT_FOLLOWLOCATION, true);
  57.         curl_setopt($curlHandle, CURLOPT_TIMEOUT, 10);
  58.         curl_setopt($curlHandle, CURLOPT_POST, 0);
  59.         if ( $postData!==false ) {
  60.             curl_setopt($curlHandle, CURLOPT_POSTFIELDS, http_build_query($postData));
  61.         }
  62.  
  63.         $content = curl_exec($curlHandle);
  64.        
  65.         curl_close($curlHandle);
  66.         $content = str_replace(',,',',"",',$content);
  67.         $content = str_replace(',,',',"",',$content);
  68.         $result = json_decode($content);
  69.        
  70.         return $result->text[0];
  71. }?>
  72. </body>
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB