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 :: u0415u0435u0435u0435u0435 вместо русских букв

 PHP.SU

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


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

> Описание: Ошибка кодировки при загрузке файла
Ник Бондарчук
Отправлено: 28 Марта, 2017 - 12:35:57
Post Id



Новичок


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


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




Здравствуйте, я новый на форуме и не очень разбираюсь в php.
Я недавно купил скрипт, а при загрузке файла на русском получается что-то типо:
u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
Разработчик игнорит, поэтому обращаюсь к вам!
Вот я нашёл файл который походу отвечает по загрузке:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3.         function tpl($tpl = '',$vars=array(),$each = false){
  4.                 $replace = array();
  5.                 $template = $tpl;
  6.                 $code = '';
  7.                 $eached_code='';
  8.                 if(is_file($template) AND $code = file_get_contents($template)){
  9.                         if($each){
  10.                                 if(count($vars)){
  11.                                         foreach($vars as $row){
  12.                                                 if(is_array($row) AND count($row)){
  13.                                                         $eached_code .= tpl($tpl,$row);
  14.                                                 }
  15.                                         }
  16.                                 }
  17.                         }else{
  18.                                 if(count($vars)){
  19.                                         foreach($vars as $k=>$v){
  20.                                                 $replace['{{'.$k.'}}'] = $v;
  21.                                         }
  22.                                         $code = str_replace(array_keys($replace),array_values($vars),$code);
  23.                                 }
  24.                         }
  25.                 }
  26.                 return $each?$eached_code:$code;
  27.         }
  28.  
  29.         function escaper_mysql($source){
  30.                
  31.                 global $dbConnect;
  32.                 return mysqli_real_escape_string( $dbConnect , $source);
  33.                
  34.         }
  35.  
  36.         function escaper_html( $source ){
  37.                 return htmlspecialchars( stripslashes( $source ) );
  38.         }
  39.  
  40.         function seconds2times($time) {
  41.                
  42.                 if($time > 3599) $hour = floor($time/3600); else $hour = 0;
  43.                 if($time > 59) $minute = floor(($time - (3600 * $hour))/60); else $minute = 0;
  44.                 $second = $time - (3600 * $hour) - (60 * $minute);
  45.                 if(strlen($second) == 1) $second = '0'.$second;
  46.                
  47.                 if($time > 0) {
  48.                                 if($time > 3599) return $hour.':'.$minute.':'.$second;
  49.                                 else {
  50.                                         if($time > 59) return $minute.':'.$second;
  51.                                         else return '0:'.$second;
  52.                                 }
  53.                 }
  54.         }
  55.  
  56.         function birth_to_age( $birth ) {
  57.                
  58.                 $year_arr = explode('-', $birth );
  59.                
  60.                 if( $year_arr[1] - date('n') > 0 ) $year_res = date('Y') - $year_arr[2] - 1;
  61.                 else {
  62.                         if( $year_arr[1] - date('n') < 0 ) $year_res = date('Y') - $year_arr[2];
  63.                         else {
  64.                                 if( $year_arr[0] - date('j') > 0 ) $year_res = date('Y') - $year_arr[2] - 1;
  65.                                 else $year_res = date('Y') - $year_arr[2];
  66.                         }
  67.                 }
  68.                
  69.                 return $year_res;
  70.                
  71.         }
  72.  
  73.         function img_resize_save( $target, $newcopy, $w, $h, $ext, $direc ) {
  74.                 list($w_orig, $h_orig) = getimagesize($target);
  75.                
  76.                 if($w_orig > $w || $h_orig > $h){
  77.                        
  78.                         $scale_ratio = $w_orig / $h_orig;
  79.                         if (($w / $h) > $scale_ratio) $w = $h * $scale_ratio;
  80.                         else $h = $w / $scale_ratio;
  81.                        
  82.                         $img = "";
  83.                         $ext = strtolower($ext);
  84.                         if ($ext == "gif") $img = imagecreatefromgif($target);
  85.                         else {
  86.                                 if($ext =="png") $img = imagecreatefrompng($target);
  87.                                 else $img = imagecreatefromjpeg($target);
  88.                         }
  89.                        
  90.                         $tci = imagecreatetruecolor($w, $h);
  91.                         $white = imagecolorallocate($tci, 255, 255, 255);
  92.                         imagefill($tci, 0, 0, $white);
  93.                         imagecopyresampled($tci, $img, 0, 0, 0, 0, $w, $h, $w_orig, $h_orig);
  94.                         imagejpeg($tci, $newcopy, 80);
  95.                
  96.                 }       else {
  97.                        
  98.                         $img = "";
  99.                         $ext = strtolower($ext);
  100.                         if ($ext == "gif") $img = imagecreatefromgif($target);
  101.                         else {
  102.                                 if($ext =="png") $img = imagecreatefrompng($target);
  103.                                 else $img = imagecreatefromjpeg($target);
  104.                         }
  105.                        
  106.                         $tci = imagecreatetruecolor($w_orig, $h_orig);
  107.                         $white = imagecolorallocate($tci, 255, 255, 255);
  108.                         imagefill($tci, 0, 0, $white);
  109.                         imagecopyresampled($tci, $img, 0, 0, 0, 0, $w_orig, $h_orig, $w_orig, $h_orig);
  110.                         imagejpeg($tci, $newcopy, 80);
  111.                        
  112.                 }
  113.         }
  114.  
  115.         function get_link( $link ) {
  116.                
  117.                 require_once dirname(__FILE__).'/../libs/Curler/curler.class.php';
  118.                 require_once dirname(__FILE__).'/../libs/Meta Parser/meta_parser.class.php';
  119.  
  120.                 $curler = ( new Curler() );
  121.                 $url = $link;
  122.                 $body = $curler->get($url);
  123.                 $parser = ( new MetaParser( $body, $url ) );
  124.                 $link_data = $parser->getDetails();
  125.                        
  126.                 $array = array(
  127.                         'host' => $link_data['url'],
  128.                         'title' => $link_data['title'],
  129.                         'favicon' => $link_data['favicon']
  130.                 );
  131.                
  132.                 return $array ;
  133.  
  134.         }
  135.  
  136.         function gen_name( $length ) {
  137.                 $chars = 'abdefhiknrstyzABDEFGHKNQRSTYZ23456789';
  138.                 $numChars = strlen($chars);
  139.                 $string = '';
  140.                 for ($i = 0; $i < $length; $i++) {
  141.                         $string .= substr($chars, rand(1, $numChars) - 1, 1);
  142.                 }
  143.                 return $string;
  144.         }
  145.  
  146.         function check_array( $string , $id , $dir = 0 ) {
  147.                
  148.                 $array = explode( ',' , $string );
  149.                
  150.                 switch( $dir ) {
  151.                         case 0:
  152.                                 if( in_array( $id, $array ) ) array_splice( $array , array_search( $id , $array ) , 1 );
  153.                                 else array_unshift( $array , $id );
  154.                         break;
  155.                         case 1:
  156.                                 array_unshift( $array , $id );
  157.                         break;
  158.                         case 2:
  159.                                 array_splice( $array , array_search( $id , $array ) , 1 );
  160.                         break;
  161.                 }
  162.                
  163.                 if( end( $array ) == '' ) array_splice( $array , count( $array ) - 1, 1 );
  164.                 $result = implode(',', $array);
  165.                
  166.                 return $result;
  167.  
  168.         }
  169.  
  170.         function search( $needle , $haystack ) {
  171.                 $needle = mb_strtolower(preg_replace('/ {2,}/',' ',$needle));
  172.                 $haystack = mb_strtolower(preg_replace('/ {2,}/',' ',$haystack));
  173.                
  174.                 $needle_array = explode(' ', $needle);
  175.                 $needle_length = count( $needle_array );
  176.                 $haystack_array = explode(' ', $haystack);
  177.                 $haystack_length = count( $haystack_array );
  178.                
  179.                 for( $i = 0 ; $i < $needle_length ; $i++ ) {
  180.                         $check = false;
  181.                         for( $j = 0; $j < $haystack_length ; $j++ ) {
  182.                                
  183.                                         if( $needle_array[$i] == mb_substr($haystack_array[$j],0,strlen($needle_array[$i])) )
  184.                                                 $check = true;
  185.                                
  186.                         }
  187.                         if( !$check ) return 0;
  188.                 }
  189.                
  190.                 return 1;
  191.         }
  192.  
  193.         function matrix_compare( $v1 , $v2 ) {
  194.                 if( $v1['time'] == $v2['time'] ) return 0;
  195.                 return ( $v1['time'] > $v2['time'] )? -1 : 1;
  196.         }
  197.  
  198.         function matrix_compare_fr( $v1 , $v2 ) {
  199.                 if( $v1[1] == $v2[1] ) return 0;
  200.                 return ( $v1[1] > $v2[1] )? -1 : 1;
  201.         }
  202.  
  203.         function unix2date( $time ) {
  204.                 $day = floor( ( ( time() - $time ) / ( 3600 * 24 ) ) );
  205.                 $hour = floor( ( ( time() - $time - ( 24 * 3600 * $day ) ) / 3600 ) );
  206.                 $minute = floor( ( ( time() - $time - ( 24 * 3600 * $day ) - ( 3600 * $hour ) ) / 60 ) );
  207.                
  208.                 return [ 0 => $day , 1 => $hour , 2 => $minute , 'day' => $day , 'hour' => $hour , 'minute' => $minute ];
  209.         }
  210.  
  211.         function in_array_matrix( $needle , $array , $index , $search = false ) {
  212.                 foreach( $array as $key => $val )
  213.                         if( $val[$index] == $needle ) return $search ? ++$key : true;
  214.                 return false;
  215.         }
  216.  
  217.         function human_date( $date ) {
  218.                
  219.                 $real = explode( '.' , $date );
  220.                 switch( $real[1] ) {
  221.                         case '0': $real[1] = 'Jan'; break;
  222.                         case '1': $real[1] = 'Feb'; break;
  223.                         case '2': $real[1] = 'March'; break;
  224.                         case '3': $real[1] = 'Apr'; break;
  225.                         case '4': $real[1] = 'May'; break;
  226.                         case '5': $real[1] = 'June'; break;
  227.                         case '6': $real[1] = 'July'; break;
  228.                         case '7': $real[1] = 'Aug'; break;
  229.                         case '8': $real[1] = 'Sep'; break;
  230.                         case '9': $real[1] = 'Oct'; break;
  231.                         case '10': $real[1] = 'Nov'; break;
  232.                         case '11': $real[1] = 'Dec'; break;            
  233.                 }
  234.                
  235.                 return $real[0] . ' ' . $real[1] . ' ' . $real[2];
  236.         }
  237.        
  238.         function number_search( $needle , $haystack ) {
  239.                
  240.                 if( $needle > $haystack ) return false;
  241.                 if( !$haystack ) return true;
  242.                
  243.                 while( $haystack ) {
  244.                         if( $haystack == $needle ) return true;
  245.                         if( $haystack < $needle ) return false;
  246.                         $haystack = ( $haystack - $haystack%10 ) / 10;
  247.                 }
  248.                
  249.                 return false;
  250.                
  251.         }
  252.        
  253.         function renderString( $string, array $parameters ) {
  254.                
  255.                 $replacer = function ($match) use ($parameters) {
  256.                         return isset($parameters[$match[1]]) ? $parameters[$match[1]] : $match[0];
  257.                 };
  258.  
  259.                 return preg_replace_callback('/{{\s*(.+?)\s*}}/', $replacer, $string);
  260.                
  261.         }
  262.        
  263.         function getGif( $key ) {
  264.  
  265.                 $tag = '@gif ';
  266.                 preg_match( '/'.$tag.'(.+)/' , $key , $matches );
  267.                
  268.                 if( !empty( $matches ) ) {
  269.                         $origKey = $key;
  270.                         $query = $matches[0];
  271.                         $query = substr( $query , strlen( $tag ) , strlen( $query ) - strlen( $tag ) );
  272.                        
  273.                         $query = preg_replace( '/\s/' , "%20" , $query );
  274.                         $url = 'http://api.giphy.com/v1/gifs/translate?api_key=dc6zaTOxFJmzC&s=' . $query;
  275.                        
  276.                         $string = file_get_contents( $url );
  277.                         $json = json_decode( $string , 1 );
  278.                        
  279.                         $key = preg_replace( '/'.$matches[0].'/' , "" , $key );
  280.                         $gif = $json['data']['images']['fixed_height']['url'];
  281.                        
  282.                         if( strlen( str_replace( " ", "", $gif ) ) ) return [ $key , $gif ];
  283.                         else return [ $origKey , '' ];
  284.                        
  285.                 } else return [ $key , '' ];
  286.                
  287.         }
  288.        
  289. ?>


Если нет, то скажите в чём может быть проблема?
Зарание благодарю!
(Добавление)
Я решил выбрать этот файл из-за этих строк, когда я пишу алфавит, то буквы пропадают:
CODE (htmlphp):
скопировать код в буфер обмена
  1.         }
  2.  
  3.         function gen_name( $length ) {
  4.                 $chars = 'abdefhiknrstyzABDEFGHKNQRSTYZ23456789';
  5.                 $numChars = strlen($chars);
  6.                 $string = '';
  7.                 for ($i = 0; $i < $length; $i++) {
  8.                         $string .= substr($chars, rand(1, $numChars) - 1, 1);
  9.                 }
  10.                 return $string;
  11.         }
  12.  
 
 Top
Строитель Модератор
Отправлено: 28 Марта, 2017 - 13:35:06
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




Ник Бондарчук пишет:
когда я пишу алфавит, то буквы пропадают
Эта функция (я про gen_name()) предназначена для генерации строки, состоящей из случайных буквенно-цифровых символов. На её вход в качестве принимаемого нею параметра, нужно передавать желаемую длину строки в виде целого числа (например 5), а не текст.
 
 Top
quad
Отправлено: 28 Марта, 2017 - 15:30:36
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




Ник Бондарчук пишет:
Здравствуйте, я новый на форуме и не очень разбираюсь в php.
Я недавно купил скрипт, а при загрузке файла на русском получается что-то типо:
u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
Разработчик игнорит, поэтому обращаюсь к вам!

У тебя проблема в кодировке скорее всего файл не с кодировкой utf-8 сохранен!
как затычка чтобы расшифровать! (Отобразить)
 
 Top
Ник Бондарчук
Отправлено: 28 Марта, 2017 - 20:03:30
Post Id



Новичок


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


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




Благодарю, что ответили!
(Добавление)
quad пишет:
Ник Бондарчук пишет:
Здравствуйте, я новый на форуме и не очень разбираюсь в php.
Я недавно купил скрипт, а при загрузке файла на русском получается что-то типо:
u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
Разработчик игнорит, поэтому обращаюсь к вам!

У тебя проблема в кодировке скорее всего файл не с кодировкой utf-8 сохранен!
как затычка чтобы расшифровать! (Отобразить)

Спасибо! Только куда я не сую перекодировку сайт не работает Огорчение
Извините, но можете подсказать куда "сувать" затычку?

(Отредактировано автором: 28 Марта, 2017 - 20:05:37)

 
 Top
quad
Отправлено: 28 Марта, 2017 - 20:49:59
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




у тебя вся станица так отображается?Или ответ сервера?
 
 Top
Ник Бондарчук
Отправлено: 29 Марта, 2017 - 10:38:39
Post Id



Новичок


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


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




quad пишет:
у тебя вся станица так отображается?Или ответ сервера?

С кодировкой на самом сайте всё нормально, но когда я загружаю файл и указываю на сервере название из русских букв появляется что-то типо: u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
P.S. На сайте когда загружаешь файл, его имя надо выбрать на самом сайте.
 
 Top
quad
Отправлено: 29 Марта, 2017 - 11:07:30
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




Ник Бондарчук пишет:
quad пишет:
у тебя вся станица так отображается?Или ответ сервера?

С кодировкой на самом сайте всё нормально, но когда я загружаю файл и указываю на сервере название из русских букв появляется что-то типо: u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
P.S. На сайте когда загружаешь файл, его имя надо выбрать на самом сайте.

Ты файлы грузишь через ajax или получаешь ответ через json?
 
 Top
Ник Бондарчук
Отправлено: 29 Марта, 2017 - 11:35:49
Post Id



Новичок


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


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




quad пишет:
Ник Бондарчук пишет:
quad пишет:
у тебя вся станица так отображается?Или ответ сервера?

С кодировкой на самом сайте всё нормально, но когда я загружаю файл и указываю на сервере название из русских букв появляется что-то типо: u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
P.S. На сайте когда загружаешь файл, его имя надо выбрать на самом сайте.

Ты файлы грузишь через ajax или получаешь ответ через json?

Я вам скинул gif
Прикреплено изображение (Нажмите для увеличения)
php_su.gif

(Отредактировано автором: 29 Марта, 2017 - 11:42:42)

 
 Top
quad
Отправлено: 29 Марта, 2017 - 11:59:01
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




Ник Бондарчук пишет:
quad пишет:
Ник Бондарчук пишет:
quad пишет:
у тебя вся станица так отображается?Или ответ сервера?

С кодировкой на самом сайте всё нормально, но когда я загружаю файл и указываю на сервере название из русских букв появляется что-то типо: u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
P.S. На сайте когда загружаешь файл, его имя надо выбрать на самом сайте.

Ты файлы грузишь через ajax или получаешь ответ через json?

Я вам скинул gif
Данные получаемые с помощью ajax запроса не преобразованные в utf-8 ссылку дай где это используешь посмотрю как данные получаются
 
 Top
Ник Бондарчук
Отправлено: 29 Марта, 2017 - 12:00:48
Post Id



Новичок


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


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




quad пишет:
Ник Бондарчук пишет:
quad пишет:
Ник Бондарчук пишет:
quad пишет:
у тебя вся станица так отображается?Или ответ сервера?

С кодировкой на самом сайте всё нормально, но когда я загружаю файл и указываю на сервере название из русских букв появляется что-то типо: u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!
P.S. На сайте когда загружаешь файл, его имя надо выбрать на самом сайте.

Ты файлы грузишь через ajax или получаешь ответ через json?

Я вам скинул gif
Данные получаемые с помощью ajax запроса не преобразованные в utf-8 ссылку дай где это используешь посмотрю как данные получаются

shrk.ga
 
 Top
quad
Отправлено: 29 Марта, 2017 - 12:25:26
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




вот так тебе отвечает php_requests/search.php

{"music":[{"name":"content\/1\/14906932589DQfRz43.mp3","description":"u0415u0435u0435u0435u0435 u043fu043eu043bu0443u0447u0438u043bu043eu0441u044c!","id":"21","isset":true,"added":false}],"end":true,"tpl":"\n{{#music}} у тебя кодированные данные не правильно скинь файл search.php
 
 Top
Ник Бондарчук
Отправлено: 29 Марта, 2017 - 12:29:04
Post Id



Новичок


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


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




Вот:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.  
  3.         include_once dirname(__FILE__).'/../php_main/lock.php';
  4.         include_once dirname(__FILE__).'/../php_main/connect_user.php';
  5.         include_once dirname(__FILE__).'/../php_main/functions.php';
  6.         include_once 'content_functions.php';
  7.        
  8.         if( isset( $_POST['length'] ) ) $length = escaper_mysql( $_POST['length'] );
  9.         if( isset( $_POST['last_id'] ) ) $last_id = escaper_mysql( $_POST['last_id'] );
  10.        
  11.         switch( $_POST['type'] ) {
  12.        
  13.                 case 'people':
  14.                         $name = escaper_mysql( $_POST['name'] );
  15.                         $country = escaper_mysql( $_POST['country'] );
  16.                         $city = escaper_mysql( $_POST['city'] );
  17.                         $year_f = escaper_mysql( $_POST['year-from'] );
  18.                         $year_t = escaper_mysql( $_POST['year-to'] );
  19.                         $gender = escaper_mysql( $_POST['gender'] );
  20.                        
  21.                         $resArr = array();
  22.                        
  23.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  24.                        
  25.                         $people_row = mysqli_query( $dbConnect, "SELECT * FROM network ".$query." ORDER BY id DESC LIMIT $length" );
  26.                        
  27.                         for( $i = 0 ; $i < $length ; ) {
  28.                                 if( $people = mysqli_fetch_array( $people_row , MYSQLI_ASSOC ) ) {
  29.                                         if(
  30.                                                         search( $name , $people['name'] ) && search( $country , $people['country'] ) && search( $city , $people['city'] )
  31.                                                         && ( $year_f <= birth_to_age( $people['birth'] ) && $year_t >= birth_to_age( $people['birth'] ) )
  32.                                                         && ( ( $people['gender'] == $gender ) || $gender == -1 ) && ( ( $people['online'] > time() - 60 ) || !isset( $_POST['online'] ) )
  33.                                                         && ( ( $people['secret'] == $_POST['opened-profile'] ) || !isset( $_POST['opened-profile'] ) )
  34.                                         )       {
  35.                                                 $resArr[$i] = get_user( $people['id'] , 0 , 0);
  36.                                                 $i++;
  37.                                         }
  38.                                 } else break;
  39.                         }
  40.                        
  41.                         $dataArr = array( 'friend' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  42.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../'.( _mobile_ ? 'tpl_app' : 'themes/'._theme_.'/tpl' ).'/content.tpl');
  43.                        
  44.                 break;
  45.                 case 'clubs':
  46.                         $name = escaper_mysql( $_POST['name'] );
  47.                         $about = escaper_mysql( $_POST['descr'] );
  48.                        
  49.                         $resArr = array();
  50.                        
  51.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  52.                        
  53.                         $clubs_row = mysqli_query( $dbConnect, "SELECT * FROM clubs ".$query." ORDER BY id DESC LIMIT $length" );
  54.                        
  55.                         for( $i = 0 ; $i < $length ; ) {
  56.                                 if( $club = mysqli_fetch_array( $clubs_row , MYSQLI_ASSOC ) ) {
  57.                                         if( search( $name , $club['name'] ) && search( $about , $club['description'] ) )        {
  58.                                                 $resArr[$i] = get_club( $club['id'] , 0 , 1 );
  59.                                                 $i++;
  60.                                         }
  61.                                 } else break;
  62.                         }
  63.                        
  64.                         $dataArr = array( 'club' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  65.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../'.( _mobile_ ? 'tpl_app' : 'themes/'._theme_.'/tpl' ).'/content.tpl');
  66.                        
  67.                 break;
  68.                 case 'videos':
  69.                         $name = escaper_mysql( $_POST['name'] );
  70.                        
  71.                         $resArr = array();
  72.                         $i = 0;
  73.                        
  74.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  75.                        
  76.                         $post_row = mysqli_query( $dbConnect, "SELECT * FROM videos ".$query." ORDER BY id DESC LIMIT $length " );
  77.                        
  78.                         for( $i = 0 ; $i < $length ; ) {
  79.                                 if( $post = mysqli_fetch_array( $post_row , MYSQLI_ASSOC ) ) {
  80.                                         $video_name = json_decode( $post['video'], true);
  81.                                         if( search( $name , $video_name['name'] ) || search( $name , $video_name['description'] ) ) {  
  82.                                                 $resArr[$i] = get_video( $post['id'] , NULL );
  83.                                                 $i++;
  84.                                         }
  85.                                 } else break;
  86.                         }
  87.                        
  88.                         $dataArr = array( 'video' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  89.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../'.( _mobile_ ? 'tpl_app' : 'themes/'._theme_.'/tpl' ).'/content.tpl');
  90.                        
  91.                 break;
  92.                 case 'audios':
  93.                         $name = escaper_mysql( $_POST['name'] );
  94.                        
  95.                         $resArr = array();
  96.                        
  97.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  98.                        
  99.                         $audio_row = mysqli_query( $dbConnect, "SELECT * FROM audios ".$query." ORDER BY id DESC LIMIT $length " );
  100.                        
  101.                         for( $i = 0 ; $i < $length ; ) {
  102.                                 if( $get = mysqli_fetch_array( $audio_row , MYSQLI_ASSOC ) ) {
  103.                                         $audio = json_decode( $get['audio'], true);
  104.                                         if( search( $name , $audio['description'] ) )   {
  105.                                                 $resArr[$i] = get_music( $get['id'] , 0 , 1);
  106.                                                 $i++;
  107.                                         }
  108.                                 } else break;
  109.                         }
  110.                        
  111.                         $dataArr = array( 'music' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  112.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../themes/'._theme_.'/tpl/audio.tpl');
  113.                        
  114.                 break;
  115.                 case 'tag':
  116.                         if( !isset( $_POST['dont'] ) && $_POST['dont'] != 1 ) {
  117.                                 $name = mb_strtolower( preg_replace( '/ {2,}/',' ', escaper_mysql( $_POST['name'] ) ) );
  118.                                 $hash_array = explode(' ', escaper_mysql( $_POST['name'] ) );
  119.                                
  120.                                 $query = '';
  121.                                
  122.                                 foreach( $hash_array as $val ) {
  123.                                         if( substr( $val , 0 , 1 ) != '#' ) $val = '#'.$val;
  124.                                         if( $query != '' ) $query .= " AND ( text LIKE '% ".$val."%' OR text LIKE '".$val."%' )";
  125.                                         else $query .= "( text LIKE '% ".$val."%' OR text LIKE '".$val."%' )";
  126.                                 }
  127.                                
  128.                                 if( $query != '' ) $query .= $last_id != 'NULL' ? " AND id < '$last_id' " : "" ;
  129.                                 else $query = $last_id != 'NULL' ? " id < '$last_id' " : "" ;
  130.  
  131.                                 $resArr = array();
  132.                                 $i = 0;
  133.                                
  134.                                 $news_row = mysqli_query( $dbConnect, "SELECT * FROM news WHERE ".$query." ORDER BY id DESC limit $length" );
  135.                                 while( $news = mysqli_fetch_array( $news_row , MYSQLI_ASSOC ) )
  136.                                         $resArr[$i++] = get_news( $news['id'] );
  137.                                
  138.                                
  139.                                 $dataArr = array( 'news' => $resArr , 'end' => ( mysqli_num_rows( $news_row ) < $length ) ? true : false );
  140.                                 $dataArr['tpl'] = tpl(dirname(__FILE__).'/../themes/'._theme_.'/tpl/news.tpl');
  141.                         }
  142.                 break;
  143.         }
  144.        
  145.         if( !isset( $dataArr ) ) $dataArr = array();
  146.        
  147.         $dataArr['langs'] = $langs;
  148.         $dataArr['main_set'] = $global;
  149.         $dataArr['main_set']['root'] = _root_;
  150.        
  151.         echo json_encode( $dataArr );
  152.        
  153. ?>
 
 Top
quad
Отправлено: 29 Марта, 2017 - 12:38:04
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




Ник Бондарчук пишет:
Вот:
Спойлер (Отобразить)
у тебя база данных в какой кодировке?
 
 Top
Ник Бондарчук
Отправлено: 29 Марта, 2017 - 12:40:50
Post Id



Новичок


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


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




quad пишет:
Ник Бондарчук пишет:
Вот:
Спойлер (Отобразить)
у тебя база данных в какой кодировке?

utf-8
 
 Top
quad
Отправлено: 29 Марта, 2017 - 13:02:07
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


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




CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.  
  3.         include_once dirname(__FILE__).'/../php_main/lock.php';
  4.         include_once dirname(__FILE__).'/../php_main/connect_user.php';
  5.         include_once dirname(__FILE__).'/../php_main/functions.php';
  6.         include_once 'content_functions.php';
  7.        
  8.         if( isset( $_POST['length'] ) ) $length = escaper_mysql( $_POST['length'] );
  9.         if( isset( $_POST['last_id'] ) ) $last_id = escaper_mysql( $_POST['last_id'] );
  10.        
  11.         switch( $_POST['type'] ) {
  12.        
  13.                 case 'people':
  14.                         $name = escaper_mysql( $_POST['name'] );
  15.                         $country = escaper_mysql( $_POST['country'] );
  16.                         $city = escaper_mysql( $_POST['city'] );
  17.                         $year_f = escaper_mysql( $_POST['year-from'] );
  18.                         $year_t = escaper_mysql( $_POST['year-to'] );
  19.                         $gender = escaper_mysql( $_POST['gender'] );
  20.                        
  21.                         $resArr = array();
  22.                        
  23.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  24.                        
  25.                         $people_row = mysqli_query( $dbConnect, "SELECT * FROM network ".$query." ORDER BY id DESC LIMIT $length" );
  26.                        
  27.                         for( $i = 0 ; $i < $length ; ) {
  28.                                 if( $people = mysqli_fetch_array( $people_row , MYSQLI_ASSOC ) ) {
  29.                                         if(
  30.                                                         search( $name , $people['name'] ) && search( $country , $people['country'] ) && search( $city , $people['city'] )
  31.                                                         && ( $year_f <= birth_to_age( $people['birth'] ) && $year_t >= birth_to_age( $people['birth'] ) )
  32.                                                         && ( ( $people['gender'] == $gender ) || $gender == -1 ) && ( ( $people['online'] > time() - 60 ) || !isset( $_POST['online'] ) )
  33.                                                         && ( ( $people['secret'] == $_POST['opened-profile'] ) || !isset( $_POST['opened-profile'] ) )
  34.                                         )       {
  35.                                                 $resArr[$i] = get_user( $people['id'] , 0 , 0);
  36.                                                 $i++;
  37.                                         }
  38.                                 } else break;
  39.                         }
  40.                        
  41.                         $dataArr = array( 'friend' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  42.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../'.( _mobile_ ? 'tpl_app' : 'themes/'._theme_.'/tpl' ).'/content.tpl');
  43.                        
  44.                 break;
  45.                 case 'clubs':
  46.                         $name = escaper_mysql( $_POST['name'] );
  47.                         $about = escaper_mysql( $_POST['descr'] );
  48.                        
  49.                         $resArr = array();
  50.                        
  51.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  52.                        
  53.                         $clubs_row = mysqli_query( $dbConnect, "SELECT * FROM clubs ".$query." ORDER BY id DESC LIMIT $length" );
  54.                        
  55.                         for( $i = 0 ; $i < $length ; ) {
  56.                                 if( $club = mysqli_fetch_array( $clubs_row , MYSQLI_ASSOC ) ) {
  57.                                         if( search( $name , $club['name'] ) && search( $about , $club['description'] ) )        {
  58.                                                 $resArr[$i] = get_club( $club['id'] , 0 , 1 );
  59.                                                 $i++;
  60.                                         }
  61.                                 } else break;
  62.                         }
  63.                        
  64.                         $dataArr = array( 'club' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  65.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../'.( _mobile_ ? 'tpl_app' : 'themes/'._theme_.'/tpl' ).'/content.tpl');
  66.                        
  67.                 break;
  68.                 case 'videos':
  69.                         $name = escaper_mysql( $_POST['name'] );
  70.                        
  71.                         $resArr = array();
  72.                         $i = 0;
  73.                        
  74.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  75.                        
  76.                         $post_row = mysqli_query( $dbConnect, "SELECT * FROM videos ".$query." ORDER BY id DESC LIMIT $length " );
  77.                        
  78.                         for( $i = 0 ; $i < $length ; ) {
  79.                                 if( $post = mysqli_fetch_array( $post_row , MYSQLI_ASSOC ) ) {
  80.                                         $video_name = json_decode( $post['video'], true);
  81.                                         if( search( $name , $video_name['name'] ) || search( $name , $video_name['description'] ) ) {  
  82.                                                 $resArr[$i] = get_video( $post['id'] , NULL );
  83.                                                 $i++;
  84.                                         }
  85.                                 } else break;
  86.                         }
  87.                        
  88.                         $dataArr = array( 'video' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  89.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../'.( _mobile_ ? 'tpl_app' : 'themes/'._theme_.'/tpl' ).'/content.tpl');
  90.                        
  91.                 break;
  92.                 case 'audios':
  93.                         $name = escaper_mysql( $_POST['name'] );
  94.                        
  95.                         $resArr = array();
  96.                        
  97.                         $query = $last_id != 'NULL' ? " WHERE id < '$last_id' " : "";
  98.                        
  99.                         $audio_row = mysqli_query( $dbConnect, "SELECT * FROM audios ".$query." ORDER BY id DESC LIMIT $length " );
  100.                        
  101.                         for( $i = 0 ; $i < $length ; ) {
  102.                                 if( $get = mysqli_fetch_array( $audio_row , MYSQLI_ASSOC ) ) {
  103.                                         $audio = json_decode( $get['audio'], true);
  104.                                         if( search( $name , $audio['description'] ) )   {
  105.                                                 $resArr[$i] = get_music( $get['id'] , 0 , 1);
  106.                                                 $i++;
  107.                                         }
  108.                                 } else break;
  109.                         }
  110.                        
  111.                         $dataArr = array( 'music' => $resArr , 'end' => ( $i < $length - 1 ? true : false ) );
  112.                         $dataArr['tpl'] = tpl(dirname(__FILE__).'/../themes/'._theme_.'/tpl/audio.tpl');
  113.                        
  114.                 break;
  115.                 case 'tag':
  116.                         if( !isset( $_POST['dont'] ) && $_POST['dont'] != 1 ) {
  117.                                 $name = mb_strtolower( preg_replace( '/ {2,}/',' ', escaper_mysql( $_POST['name'] ) ) );
  118.                                 $hash_array = explode(' ', escaper_mysql( $_POST['name'] ) );
  119.                                
  120.                                 $query = '';
  121.                                
  122.                                 foreach( $hash_array as $val ) {
  123.                                         if( substr( $val , 0 , 1 ) != '#' ) $val = '#'.$val;
  124.                                         if( $query != '' ) $query .= " AND ( text LIKE '% ".$val."%' OR text LIKE '".$val."%' )";
  125.                                         else $query .= "( text LIKE '% ".$val."%' OR text LIKE '".$val."%' )";
  126.                                 }
  127.                                
  128.                                 if( $query != '' ) $query .= $last_id != 'NULL' ? " AND id < '$last_id' " : "" ;
  129.                                 else $query = $last_id != 'NULL' ? " id < '$last_id' " : "" ;
  130.  
  131.                                 $resArr = array();
  132.                                 $i = 0;
  133.                                
  134.                                 $news_row = mysqli_query( $dbConnect, "SELECT * FROM news WHERE ".$query." ORDER BY id DESC limit $length" );
  135.                                 while( $news = mysqli_fetch_array( $news_row , MYSQLI_ASSOC ) )
  136.                                         $resArr[$i++] = get_news( $news['id'] );
  137.                                
  138.                                
  139.                                 $dataArr = array( 'news' => $resArr , 'end' => ( mysqli_num_rows( $news_row ) < $length ) ? true : false );
  140.                                 $dataArr['tpl'] = tpl(dirname(__FILE__).'/../themes/'._theme_.'/tpl/news.tpl');
  141.                         }
  142.                 break;
  143.         }
  144.        
  145.         if( !isset( $dataArr ) ) $dataArr = array();
  146.        
  147.         $dataArr['langs'] = $langs;
  148.         $dataArr['main_set'] = $global;
  149.         $dataArr['main_set']['root'] = _root_;
  150.  
  151. function win1251toutf($string_a) {
  152. $str_b = strtoupper ($string_a);
  153. return strtr($str_b, array("U0430"=>"а", "U0431"=>"б", "U0432"=>"в",
  154. "U0433"=>"г", "U0434"=>"д", "U0435"=>"е", "U0451"=>"ё", "U0436"=>"ж", "U0437"=>"з", "U0438"=>"и",
  155. "U0439"=>"й", "U043A"=>"к", "U043B"=>"л", "U043C"=>"м", "U043D"=>"н", "U043E"=>"о", "U043F"=>"п",
  156. "U0440"=>"р", "U0441"=>"с", "U0442"=>"т", "U0443"=>"у", "U0444"=>"ф", "U0445"=>"х", "U0446"=>"ц",
  157. "U0447"=>"ч", "U0448"=>"ш", "U0449"=>"щ", "U044A"=>"ъ", "U044B"=>"ы", "U044C"=>"ь", "U044D"=>"э",
  158. "U044E"=>"ю", "U044F"=>"я", "U0410"=>"А", "U0411"=>"Б", "U0412"=>"В", "U0413"=>"Г", "U0414"=>"Д",
  159. "U0415"=>"Е", "U0401"=>"Ё", "U0416"=>"Ж", "U0417"=>"З", "U0418"=>"И", "U0419"=>"Й", "U041A"=>"К",
  160. "U041B"=>"Л", "U041C"=>"М", "U041D"=>"Н", "U041E"=>"О", "U041F"=>"П", "U0420"=>"Р", "U0421"=>"С",
  161. "U0422"=>"Т", "U0423"=>"У", "U0424"=>"Ф", "U0425"=>"Х", "U0426"=>"Ц", "U0427"=>"Ч", "U0428"=>"Ш",
  162. "U0429"=>"Щ", "U042A"=>"Ъ", "U042B"=>"Ы", "U042C"=>"Ь", "U042D"=>"Э", "U042E"=>"Ю", "U042F"=>"Я"));
  163. }
  164.         echo json_encode(win1251toutf($dataArr));
  165.        
  166. ?>
[/quote]Попробуй так посмотрим что измениется

(Отредактировано автором: 29 Марта, 2017 - 13:04:12)

 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB