Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
1

PHP+$ в динамике

16.10.2014, 13:50. Показов 1174. Ответов 25
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем драсьте!
Вопрос в следующем:
Мне надо "покрасить" кнопку меню в зависимости от события и теперь конкретнее:
1. Форму отправляю сабмитом
2. Форма обрабатывается PHP и евсли все гуд (там куча пеерменных и пр), то открываем сессию, например $_SESSION[]=true;
3. Затем (или не затем... может это и есть решение) Jquery (файл подключен includ'ом) берет div меню и если в числе прочего $_SESSION[]=true, то "красим" кнопку.
В чем затык:
Кнопка "перекрашивается" только после обновления страницы, т.е. после сабмита ниче не происходит. Сабмит постом отправляет на файл-обработчик запроса. Там же пробовал скрипт $ запихнуть в функцию PHP и вызвать сразу после присвоения значения сессии - тоже не выходит.
Вот сижу и не могу придумать как сделать. Наверняка, все просто.
Я понимаю, что кнопку можно покрасить по событию клик + условие в $, но мне надо бы через PHP, чтобы не дублировать с $. Есть варианты? AJjax выручит? Я пробовал постить аяксом запросы - сессия все равно в динамике не обновляется
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.10.2014, 13:50
Ответы с готовыми решениями:

Задача по Динамике
Здравствуйте, помогите пожалуйста решит следующий задачу Дрезина массы m = 500 кг движется по...

Отчет по динамике
Добрый день. Подскажите как лучше сделать отчет по динамике показателей от недели к недели? Это...

Задача по динамике
Как решать эту задачу?

PaintBox в динамике 2
Здравствуйте, уважаемые жители форума. Некоторое время назад мною был заданы вопросы по теме...

25
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 14:49 2
CplplNoob, получай от PHP запроса JSON ответ.
И если всё ок то через JS закрашивай кнопку любым удобным методом.
0
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 15:15  [ТС] 3
Дайте, пжлст, небольшой пример, как получить значение конкретной переменной через JSON. (синтаксис не нужен - я знаком). У меня не получается принять значение сессии. Напишите, пжлст, фрагмент кода на стороне сервера для понимания сути передачи данных. У меня php файл большой и при получении в функцию данных выводится все содержимое файла, а не точечно значение переменной.
Интересен именно код после isset(POST[]) .
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 16:01 4
CplplNoob, в целом это выглядит примерно так на стороне сервера:
пример упрощён как ты можешь предположить(и окажешься прав)
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// ключ массива который проверяем.
$key = 'index';
 
if ( isset($_POST[$key])  )
{
    $result = [];
    // назначаем переменную с результатом вывода, по умолчанию тру
    // т.к. чаще всего она должна быть именно тру
    $success = true;
    $errCode = 0;
    $errCodeDescription = 'Всё чётко';
 
    if ( (int) $_POST[$key] > 0 )
    {
        // выполняем какой то код...
        // в результате которого олучаем рузультат выполнения кода..
        $result = [
            'data' => 'bla bla lba',
            'html' => '<div> 123123123 </div>'
        ];
        // понимаем: всё ОК или не ок...
        // и если ОШИБКА то собираем инфо об ошибке
        if ( $result == false )
        {
            $success = false;
            $errCode = 1;
            $errCodeDescription = 'и тут: что то пошло не так...';
        }
    }
    else
    {
        // и если ОШИБКА то собираем инфо об ошибке
        $success = false;
        $errCode = 2;
        $errCodeDescription = $key . ' должен быть больше нуля...';
    }
 
    $resp = [
        'data'      => $result,
        'success'   => $success,
        'errCode'   => $errCode,
        'errCodeDescription' => $errCodeDescription
    ];
 
    print( json_encode($resp, true) );
}
сейчас на стороне JS сделаю код

Добавлено через 7 минут
Вот так примерно всё выглядит на стороне клиента...
тоже простой кодик...
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
$('#some_elem').click(
    function()
    {
        $.ajax({
            url : 'some/url.php',
            data : {
                'index' : 10,
                'type'  : 'addSomeTextVar'
            },
            type : 'POST',
            dataType: "josn",
            success : function(resp)
            {
                if ( resp.success )
                {
                    $('#target').html(resp.data.html);
                    alert(resp.data.data);
                }
                else
                {
                    var str = 'Ошибка #' + resp.errCode + '\n';
                        str+= resp.errCodeDescription;
                    alert( str );
                }
            },
            error : function(resp)
            {
                alert('Непредвиденная ошибка');
            }
        })
    }
);
1
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 16:30  [ТС] 5
Спасибо! С кодом все ясно. Теперь заключительный вопрос:
Кнопка, которая красится, принадлежит главному меню. Красится, если закрашены все пункты второстепенного (при выполеннии условий - анкета заполнена верно - закрасили и т.д.) Все эти подпункты так же висят на сессиях. Т.е. кнопка главного красится, если сессия тру, сессия 2 тру и т.д. Получается, что кнопка главного меню красится вместе с последним заполенным пунктом подменю (подменю могут красится в неопределенном порядке). Сейчас я смотрю, если все сессии подменю - тру, то красим кнопку раздела. Затык может быть в том, что $ обработает запрос по клику сабмита, но сессия последней кнопки подменю не успеет стать тру(т.е. мы получим в аяксе одну сессию фальш) или по сабмиту данные улетят быстрее, чем к ним обратиться $ через post? Предугатдать какая кнопка подменю будет посленей не выйдет.
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 17:05 6
CplplNoob, как так...
У тебя же проверка сессий идёт в PHP
значит в PHP уже будет ясно закрашивать или нет...
и если закрашивать то возвращает какой нибудь ключ оповещающий что надо закрасить...
и в JS проверяешь ответ из PHP в котором говорится закрасить или нет....
0
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 17:20  [ТС] 7
Ну да
PHP
1
2
if ($_SESSION['knoparik_green'][6]!=false && $_SESSION['knoparik_green'][7]!=false && $_SESSION['knoparik_green'][8]!=false)    
{$_SESSION['knop_green'][5]="cred";} else {$_SESSION['knop_green'][5]='false';}
Вот по сабмиту мы отрабатываем это условие. Затем в $ я получаю ключ в котором будет стоять маркер события (типа все - khop-green присвоено значение cred). Вопрос в какой момент я получу ключ (сабмит нажат). Получается через each надо обращаться а не через click. А не будет проблемой, то, что файл с $ инклюдится раньше условия с сессиями? Я вот немного не догоняю пока в таких простых деталях...
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 17:24 8
Блин тут рисовать наверное надо что бы Вы поняли механику...
0
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 17:26  [ТС] 9
Да, наверное прежде всего проблема в этом... код и синтаксис - не так проблематично - языки схожи во многом, а вот насчет взаимодействия и приоритета и последовательности выполнения - до конца не понимаю.
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 18:09 10
CplplNoob,
В общем сперва идёт PHP обработка данных...
далее идёт HTML отображение контента

ajax:
из AJAX объекта >>> идёт запрос в >>> PHP
PHP возвращает ответ в объект AJAX в функцию success
0
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 18:16  [ТС] 11
Так и думал. Значит все таки, если мы вешаем на сабмит $ событие, то сначала отработает событие, потом уйдет PHP, а потом результат на экран. Таким образом кнопка по клику не перекрасится, т.к. еще php не записал последнюю сессию по сабмиту. Так? Если так, то надо, кнопку не трогать в $, а пропустить поиск и покраску через each. Кстати, в Вашем коде ошибка возвращается при отправке поста. Не могу пока понять почему (json уже правильно написал). Т.е. до обработки php дело не доходит.
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 18:33 12
Цитата Сообщение от CplplNoob Посмотреть сообщение
сначала отработает событие, потом уйдет PHP, а потом результат на экран
верно...

Цитата Сообщение от CplplNoob Посмотреть сообщение
Кстати, в Вашем коде ошибка
никто не идеален.... пишу ведь с работы (на скорую руку)

моя задача показать логику а не написать весь код за АТ.
1
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 18:36  [ТС] 13
Нет, это я не к тому, что вот- ошибка А к тому, что пока не могу протестировать, но уже начал выправлять... Это не в коде ошибка - это я неверно сделал. В общем, спасибо, за помощь - немного разобрался.
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 18:43 14
CplplNoob, рад быть полезным!
0
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
16.10.2014, 18:57  [ТС] 15
Прошу прощения, но все же пока не могу отстать... Совсем немного еще уделите мне, пдлст, внимания.

Вот код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
if (isset($_POST['index']))
{    
 
    $success = true;
    $errCode = 0;
    $errCodeDescription = 'Всё чётко';
 
    if ( intval($_POST['index']) > 0 )
    {   
        if ($_SESSION['knop_green'][5]==="cred")
        {$result = array( array('data' => 'cred'));
        
        if ( $result == false )
        {
            $success = false;
            $errCode = 1;
            $errCodeDescription = 'и тут: что то пошло не так...';
        }}
    
    else
    {
        // и если ОШИБКА то собираем инфо об ошибке
        $success = false;
        $errCode = 2;
        $errCodeDescription = 'index должен быть больше нуля...';
    }
 
    $resp = array(array(
        'data'      => $result,
        'success'   => $success,
        'errCode'   => $errCode,
        'errCodeDescription' => $errCodeDescription
    ));
 }
    print( json_encode($resp, true) );
 
}
Возвращается мне в алерт Ошибка undefined т.е. в массив ничего не передается, либо он не читается...

JS тоже немного адаптировал

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$(function () {
$('input').click(function()
    {
      
             $.ajax({
            type: 'POST',
            url: "new.php",
            dataType: 'json',
            data: {index: 9},
            success: function(resp) {
                if ( resp.success )
                {
                     alert(resp.data.data);
                }
                else
                {
                    var str = 'Ошибка #' + resp.errCode + '\n';
                        str+= resp.errCodeDescription;
                    alert( str );
                }
            },
            error : function(resp)
            {
                alert('Непредвиденная ошибка');
            }
        })
    }
);
})
Посмотрите, пжлст, что не так? Ошибка видимо из-за того, что сессия пустая, но в передаче данных сбой - невозможно прочесть.
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
16.10.2014, 21:19 16
Лучший ответ Сообщение было отмечено CplplNoob как решение

Решение

Почему у тебя возвращается массив в массиве...?
так надо?

Добавлено через 20 секунд
PHP
1
2
3
4
5
6
7
8
$resp = array(
   array(
        'data'      => $result,
        'success'   => $success,
        'errCode'   => $errCode,
        'errCodeDescription' => $errCodeDescription
    )
);
Добавлено через 27 секунд
ваще это не правильно =)

Добавлено через 35 минут
Вот мой пример тебе: http://example.andy87.ru/40/form.php

порядок в котором кликать указал в цыфрах:
Посать запрос 1 3 5
Создать knop_green 2
Добавить в knop_green [5]== cred 4

код JS и HTML в браузере увидешь, а PHP вот:
PHP
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
 
if ( !session_id() ) session_start();
 
if ( isset($_POST['method']) )
{
    if ( $_POST['method'] == 'create' ) $_SESSION['knop_green'] = [];
    if ( $_POST['method'] == 'add' ) $_SESSION['knop_green'] = [ 5 => "cred" ];
}
 
if ( isset($_SESSION['knop_green']) )
{
    $success = true;
    $errCode = 0;
    $errCodeDescription = 'всё чётко';
 
    if ($_SESSION['knop_green'][5]==="cred")
    {
        $result = array( 'data' => 'cred');
 
        if ( $result == false )
        {
            $success = false;
            $errCode = 1;
            $errCodeDescription = 'и тут: что то пошло не так...';
        }
    }
    else
    {
        // и если ОШИБКА то собираем инфо об ошибке
        $success = false;
        $errCode = 2;
        $errCodeDescription = 'knop_green[5] не равен cred';
    }
}
else
{
    // и если ОШИБКА то собираем инфо об ошибке
    $success = false;
    $errCode = 2;
    $errCodeDescription = '$_SESSION[knop_green] не существует';
}
 
$resp = array(
        'data'      => $result,
        'success'   => $success,
        'errCode'   => $errCode,
        'errCodeDescription' => $errCodeDescription
);
 
print( json_encode($resp, true) );


Добавлено через 7 минут
2я версия PHP
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
if ( !session_id() ) session_start();
 
 
if ( isset($_POST['method']) )
{
    if ( $_POST['method'] == 'create' ) $_SESSION['knop_green'] = [];
    if ( $_POST['method'] == 'add' ) $_SESSION['knop_green'] = [ 5 => "cred" ];
 
    $success = false;
    $errCode = 0;
 
    if (  $_POST['method'] == 'send' )
    {
        if ( isset($_SESSION['knop_green']) )
        {
            $success = true;
            $errCode = 0;
            $errCodeDescription = 'всё чётко';
 
            if ($_SESSION['knop_green'][5]==="cred")
            {
                $result = array( 'data' => 'cred');
 
                if ( $result == false )
                {
                    $success = false;
                    $errCode = 1;
                    $errCodeDescription = 'и тут: что то пошло не так...';
                }
            }
            else
            {
                // и если ОШИБКА то собираем инфо об ошибке
                $success = false;
                $errCode = 2;
                $errCodeDescription = 'knop_green[5] не равен cred';
            }
        }
        else
        {
            // и если ОШИБКА то собираем инфо об ошибке
            $success = false;
            $errCode = 2;
            $errCodeDescription = '$_SESSION[knop_green] не существует';
        }
    }
 
}
 
$resp = array(
        'data'      => $result,
        'success'   => $success,
        'errCode'   => $errCode,
        'errCodeDescription' => $errCodeDescription
);
 
print( json_encode($resp, true) );
1
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
17.10.2014, 13:39  [ТС] 17
Все получилось! Спасибо. Остался заключительный аккорд:

Меню состоит из 9 пунктов. На примере мы отработали один из них.
Теперь я немного переделал код, но честно скажу, что не знаю как быть дальше и решил пойти по легкому пути (спросить у Вас как сделать), нежели снова рыть инет и тыкаться вслепую.
Результат: надо чтобы кнопки красились по всему меню.
Что имеем:
PHP
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#заведем массив данных по маркерам кнопок
        $marker =   array ( 1   =>  'ob_i',         
                            2   =>  'bala', 
                            3   =>  'opiu', 
                            4   =>  'cash', 
                            5   =>  'cred', 
                            6   =>  'obes', 
                            7   =>  'kach', 
                            8   =>  'mana',
                            9   =>  'kont');
                            
            
        
       if ( isset($_SESSION['knop_green']) )
        {
            for ($e=1;$e<=9;$e++)           
            {if ($_SESSION['knop_green'][$e]===$marker[$e])
            {$success = true;
             $result[$e] = array( 'data' => $marker[$e]);}
                    
             else
            {   //если раздел заполнен не весь
                $success = false;
                $nomarker[$e] = 1;
                
            }
        $resp[$e] = array(
        'data'      => $result[$e],
        'success'   => $success[$e],
        'nomarker'   => $nomarker[$e]);
 
print( json_encode($resp[$e], true) );}}
Вся соль в правилах передачи массивов через JSON и получения данных из него в JS

JS (пока только для работы на одном пункте, т.е. не оптимизированный под вышеуказанный PHP
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
$(document).ready(function(){
 
          $.ajax({
            type: 'POST',
            url: "ajax.php",
            data : {
                method : 'send'
            },
            dataType: 'json',
            success: function(resp)
            { 
                if ( resp.success )
                {
                    /*функция красит кнопки главного меню*/
                                    $.each($(".menu_main.blue li a"),function(){   
                                        var url22= window.location.href.slice(window.location.href.indexOf('=')+1,window.location.href.indexOf('=')+5); 
                                        var link22 = this.href.slice(this.href.indexOf('=')+1, this.href.indexOf('=')+5);
                                            
                                            if(link22==resp.data.data && url22==link22){
                                            
                                            $(this).parent().addClass('greenactiveLink');
                                            };
                                                                            });
                }
                else
                {
                    if ( resp.nomarker > 0 )
                    {
                           /*функция возвращает серый цвет кнопки*/
                            $.each($(".menu_main.blue li a"),function(){   
                                        var url22= window.location.href.slice(window.location.href.indexOf('=')+1,window.location.href.indexOf('=')+5); 
                                        var link22 = this.href.slice(this.href.indexOf('=')+1, this.href.indexOf('=')+5);
                                            
                                            if(link22!=resp.data.data && url22==link22){
                                            
                                            $(this).parent().removeClass('greenactiveLink');
                                                $(this).parent().addClass('activeLink');};
                                                                            });
                    }
                }
            },
            error : function(resp)
            {
                alert('Непредвиденная ошибка');
            }
        });
    
  
})
Подскажите,пжлст, как сделать дальше в $. Я хочу не скопировать, а понять. Кстати, верен ли PHP?

Сейчас JSON выдает

{"data":{"data":"ob_i"},"success":null,"nomarker":null}{"data":null,"success":nu ll,"nomarker":null}{"data":null,"success":null,"nomarker":null}{"data":null,"suc cess":null,"nomarker":null}{"data":{"data":"cred"},"success":null,"nomarker":nul l}{"data":null,"success":null,"nomarker":null}{"data":null,"success":null,"nomar ker":null}{"data":null,"success":null,"nomarker":null}{"data":null,"success":nul l,"nomarker":null}

Добавлено через 6 минут
немного подправил код
JSON

{"data":{"data":"ob_i"},"success":null,"nomarker":null}{"data":null,"success":nu ll,"nomarker":1}{"data":null,"success":null,"nomarker":1}{"data":null,"success": null,"nomarker":1}{"data":{"data":"cred"},"success":null,"nomarker":null}{"data" :null,"success":null,"nomarker":1}{"data":null,"success":null,"nomarker":1}{"dat a":null,"success":null,"nomarker":1}{"data":null,"success":null,"nomarker":1}
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
17.10.2014, 13:48 18
Лучший ответ Сообщение было отмечено CplplNoob как решение

Решение

Как видно на скрине...
Кликните здесь для просмотра всего текста

строка 36 у Вас print происходит несколько раз... что ни есть хорошо...
отсюда у вас и...
{"data":{"data":"ob_i"},"success":null,"nomarker":null}{"data":null,"success":nu ll,"nomarker":null}{"data":null,"success":null,"nomarker":null}{"data":null,"suc cess":null,"nomarker":null}{"data":{"data":"cred"},"success":null,"nomarker":nul l}{"data":null,"success":null,"nomarker":null}{"data":null,"success":null,"nomar ker":null}{"data":null,"success":null,"nomarker":null}{"data":null,"success":nul l,"nomarker":null}
print должен быть 1 раз. и после цикла
Кликните здесь для просмотра всего текста

тогда вы получите объект множества объектов... и тогда в функцио боработчик "success" надо будет перебирать ответ "resp"... (тут я не совсем понял вам ответ должен придти с одним объектом или смножеством)

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
success: function(resp)
{
   $(resp).each(function(index, obj){
     // obj - текущий объект из перебираемых
     // index - порядковый номер текущего объекта из перебора(начиная с нуля)
     alert(obj.data.data); // выведет к примеру: ob_i
     alert(resp[index].data.data); // выведет так же: ob_i
      // если надо перебирать все объекты то тут и должен быть
      if ( obj.success )
      {
          // code
      }
   });
}
Добавлено через 1 минуту
выше код JS перебор объекта содержащего много других объектов
1
0 / 0 / 2
Регистрация: 10.02.2013
Сообщений: 66
17.10.2014, 13:50  [ТС] 19
А как будет лучше (я про множество объектов). Собирался в $ перебрать объекты циклом. А если одним объектом?
0
Develo0per
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 94
17.10.2014, 13:52 20
Лучший ответ Сообщение было отмечено CplplNoob как решение

Решение

CplplNoob, лучше всегда чем меньше информации передавать и обрабатывать тем быстрее всё происходит...
но всё зависит от условий и логики проекта...
1
17.10.2014, 13:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.10.2014, 13:52
Помогаю со студенческими работами здесь

Обьект в динамике
Всем привет ! Скажите пожалуйста , есть ли необходимость перем. х класса Miva ложить в...

Задача по динамике
Доброго дня, Сижу ломаю голову с задачей, не знаю как и с чего начать (в динамике плыву очень...

PaintBox в динамике
Привет всем! Изучая компонент Paintbox, возник вопрос - как можно применить ему следующие моменты:...

Задача по динамике
Помогите, пожалуйста, с решением этой задачи. Я с таким сталкиваюсь впервые. Думал, что можно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru