Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279

Получить файл pdf

07.07.2023, 02:50. Показов 2264. Ответов 47
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет ребят.
Задача такая, есть сервер который принимает http запросы на c# и 1с. Принимает запрос с параметром в ответ отдает путь до файла.

Сам пхп и сайт расположен на другом компутере но в одном домене.

при нажатии на кнопку пользователь должен получить файл пдф.
Файл пдф загружается но он пустой, будто путь не найден.
Но если укажу в конце

PHP
1
//echo "1231231";
Приходит файл пдф открываю через VS там так и написано 1231231
Задача возможно и простая, но Мне не понятная. Подскажите пожалуйста что не так.
1с или Шарп путь точно правильный отдают

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
58
59
60
61
62
63
<?php if (!isset($SITEROOT)) exit;
 
$title = "Паспорт качества";     
 
if ($_POST['sbm']>0 && $_POST['nakladnaya']) {
    
    $nakladnaya = $db->real_escape_string($_POST['nakladnaya']);
    $json = file_get_contents("http://$http_host/json.php?z=pasport&nakladnaya=".$nakladnaya);
    
 
    //var_dump($json); exit;
 
    
    $data = new DateTime('', $timezone); $data_add_log = $data->format('Y-m-d H:i:s');
    $db->query("INSERT INTO users_nnk_log (user_id, razdel, opis, date) VALUES ('{$com_id}','pasport','Запрос Паспорта Качества. Ж/Д накладная: {$nakladnaya}','{$data_add_log}') ");
 
    if($json) {
    $array = json_decode($json, true);
 
        foreach($array as $arEl) {
        $fileName = end(explode('\\', $arEl['ПаспортКачестваПуть']));
        $content = file_get_contents('/var/www/html/pdf/'.$fileName);
        
        header('Content-Type: application/pdf');
        header('Content-Disposition: attachment;filename="'.$fileName.'"');
        //header('Contet-Trasfer-Encoding: binary');
        header('Cache-Control: max-age=0');
        // If you're serving to IE 9, then the following may be needed
        header('Cache-Control: max-age=1');
 
            // If you're serving to IE over SSL, then the following may be needed
        header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); // always modified
        header('Cache-Control: cache, must-revalidate'); // HTTP/1.1
        header('Pragma: public'); // HTTP/1.0
        //echo "1231231";   
            echo $content;
            exit;
 
        }
    }
}
 
include $_SERVER['DOCUMENT_ROOT']."/strukt/top.php";
?>
<div class="passport-page"> 
    <h1><?=$title?></h1>    
    <p>Для получения паспорта качества для <?=$com_name?>, заполните одно из полей ниже и нажмите кнопку "Получить"</p>
    <form method='POST' action='/pasport/' name='month_form'>
        <div class="flex">
            <input name="nakladnaya" type="text" placeholder="Номер железнодорожной накладной">
        </div>
        <input name="sbm" value="1" hidden="hidden">
        <button><i>Получить паспорт</i><span></span></button>
    </form>
    <br>
    <?if($link):?>
        <?=$link?>
echo $link
    <?endif;?>
</div>
 
<?php include $_SERVER['DOCUMENT_ROOT']."/strukt/down.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
<?php
error_reporting(0);
 
require $_SERVER['DOCUMENT_ROOT'] . '/config.php';
 
if(isset($_GET['z']) && !empty($_GET['z'])) {
    $auth = base64_encode($jsonLogin.":".$jsonPass);
        $context = stream_context_create([
            "http" => [
               "header" => "Authorization: Basic $auth",
            "timeout" => 40,
            ]
        ]);
 
 
    switch ($_GET['z']) {
        case 'day':
            $dtQuery = new DateTime($_GET['date']);
            if($develop) {
                $ourData = file_get_contents($dayRemoteFileName);
            } else {    
                $ourData = file_get_contents($dayRemoteFileName.(int)$_GET['cl_kod'].'/'.$dtQuery->format('Ymd'), false, $context); 
fp($ourData);
            }
            echo $ourData;
            exit;
            break;
        case 'month':
            if($develop) {
                $ourData = file_get_contents($monthRemoteFileName);
            } else {
                $ourData = file_get_contents($monthRemoteFileName.(int)$_GET['cl_kod'].'/'.$_GET['date'].'01', false, $context);
            }
            echo $ourData;
            exit;
            break;
        case 'pasport':
            if($develop) {
                $ourData = file_get_contents($pasportRemoteFileName);
            } else {        
              $ourData = file_get_contents($pasportRemoteFileName.urlencode($_GET['nakladnaya']), false, $context);
            }
            echo $ourData;
            break;
    }
}
Миниатюры
Получить файл pdf  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.07.2023, 02:50
Ответы с готовыми решениями:

Как создать PDF файл с именем ZAKAZ_(дата сегодня).pdf
Как создать из &quot;Excel таблицы&quot; - PDF файл с именем ZAKAZ_(дата сегодня).pdf при помощи макроса? Есть такой макрос: Sub...

Не могу открыть в PDF читалке в форме PDF файл имя которого хранится в БД Access
в приложении есть поиск он ищет в БД(1 таблица, 2 поля) и если в поисковую строку вводится название проблемы схожее с имеющейся в БД(1...

файл pdf вставка в Html. C Возможностью менять контент сайта в зависимости от прокручевоемой странички PDF
Вобщем то смысл описан в названии. Но тут напишу подробнее чего хочу. Ситуация такова что сейчас изучаю С++... и сейчас столкнулся с...

47
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
12.07.2023, 04:14  [ТС]
Студворк — интернет-сервис помощи студентам
Не могу разобрать json вида во вложении
Вложения
Тип файла: zip ЭЧ277160.zip (809.2 Кб, 5 просмотров)
0
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
13.07.2023, 08:31  [ТС]
Ничего сложного вроде.

PHP
1
2
    $nakladnaya = $db->real_escape_string($_POST['nakladnaya']);
            $json = file_get_contents("http://$http_host/json.php?z=pasport&nakladnaya=".$nakladnaya);
Но не видит вообще, а если записываю просто строку, то все норм
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
13.07.2023, 09:49
Цитата Сообщение от yyyuuu Посмотреть сообщение
Не могу разобрать json вида во вложении
PHP
1
file_put_contents('1.pdf', base64_decode(json_decode(file_get_contents("ЭЧ277160.Json"), true)[0]['ПаспортКачестваПуть']));
0
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
14.07.2023, 04:34  [ТС]
Hmms,
PHP
1
file_put_contents('/var/www/html/pdf/1.pdf',base64_decode(json_decode(file_get_contents("http://$http_host/json.php?z=pasport&nakladnaya=".$nakladnaya), true)[0]['ПаспортКачестваПуть']));
Все ровно не работает, Может Base64 что выгружаю слишком длинный?
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
14.07.2023, 05:45
Сделайте вывод банальный

PHP
1
2
var_dump("http://$http_host/json.php?z=pasport&nakladnaya=".$nakladnaya);
var_dump(file_get_contents("http://$http_host/json.php?z=pasport&nakladnaya=".$nakladnaya));
Добавлено через 45 секунд
Самая простая тактика в программирование: если что - то непонятное, делайте принт. Ну или xdebug подключайте
1
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
14.07.2023, 07:01  [ТС]
К тому же много возвратов каретки, может проблема в этом?
HTML5
1
\r
Добавлено через 2 минуты
Цитата Сообщение от Hmms Посмотреть сообщение
Сделайте вывод банальный
Конечно же Я это делал
PHP
1
string(59) "http://trnh-web-01/json.php?z=pasport&nakladnaya=ЭК190901" string(0) ""
Добавлено через 4 минуты
C#
1
\r\n
- может тут это и лишнее?
Хотя какая разница json все ровно читаться должен
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
14.07.2023, 16:07
Цитата Сообщение от yyyuuu Посмотреть сообщение
Конечно же Я это делал
Второй "var_dump(file_get_contents(" отрабатывает как надо?
1
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
17.07.2023, 02:22  [ТС]
Цитата Сообщение от Hmms Посмотреть сообщение
Второй "var_dump(file_get_contents(" отрабатывает как надо?
Нет, там должен быть Мой Json.
Проблема в том что если выгружу просто строку "123123123123123" все ок Я вижу. А если Именно Base64 как строку то проблемы
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
17.07.2023, 04:11
Цитата Сообщение от yyyuuu Посмотреть сообщение
Нет, там должен быть Мой Json.
А если в браузере открыть, вы видите этот JSON ? Если нет. То нажмите F12 и просмотрите код ответа от сервера.
1
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
17.07.2023, 07:54  [ТС]
Я уже все перепробовал, может проблема тут, но тут ничего страшного вроде

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
<?php
error_reporting(0);
 
require $_SERVER['DOCUMENT_ROOT'] . '/config.php';
 
if(isset($_GET['z']) && !empty($_GET['z'])) {
    $auth = base64_encode($jsonLogin.":".$jsonPass);
        $context = stream_context_create([
            "http" => [
               "header" => "Authorization: Basic $auth",
            "timeout" => 40,
            ]
        ]);
 
 
    switch ($_GET['z']) {
        case 'day':
            $dtQuery = new DateTime($_GET['date']);
            if($develop) {
                $ourData = file_get_contents($dayRemoteFileName);
            } else {    
                $ourData = file_get_contents($dayRemoteFileName.(int)$_GET['cl_kod'].'/'.$dtQuery->format('Ymd'), false, $context); 
fp($ourData);
            }
            echo $ourData;
            exit;
            break;
        case 'month':
            if($develop) {
                $ourData = file_get_contents($monthRemoteFileName);
            } else {
                $ourData = file_get_contents($monthRemoteFileName.(int)$_GET['cl_kod'].'/'.$_GET['date'].'01', false, $context);
            }
            echo $ourData;
            exit;
            break;
        case 'pasport':
            if($develop) {
                $ourData = file_get_contents($pasportRemoteFileName);
            } else {        
              $ourData = file_get_contents($pasportRemoteFileName.urlencode($_GET['nakladnaya']), false, $context);
            }
            echo $ourData;
            break;
    }
}
Добавлено через 1 минуту
Увидел что через каждый 32 символа есть символы переноса каретки, удалил.

Все ровно не читает
PHP
1
file_get_contents("http://$http_host/json.php?z=pasport&nakladnaya=".$nakladnaya)
ы
Цитата Сообщение от Hmms Посмотреть сообщение
А если в браузере открыть, вы видите этот JSON ? Если нет. То нажмите F12 и просмотрите код ответа от сервера.
Делаю прямой запрос http://101.211.341.114/getPass... /XX7277160

Получаю ответ json

Добавлено через 4 минуты
JavaScript
1
2
3
4
Uncaught Error: Syntax error, unrecognized expression: [href=#]
    jQuery 7
    <anonymous> http://trnh-web-01/lib/js/common.js:32
    jQuery 13

Такая появилась ошибка, хотя возможно и была. Но Json все ровно не читает

Добавлено через 14 минут
Проверил, сама кодировка правильная, онлайн сайты pdf дают из base64

Добавлено через 3 минуты
Я уже перепробовал все что можно, понять не могу в чем проблема.

Может он слишком длинный Base64?

Добавлено через 8 минут
Json получаю который с сервера: JSON.docx
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
17.07.2023, 15:06
Цитата Сообщение от yyyuuu Посмотреть сообщение
Такая появилась ошибка, хотя возможно и была. Но Json все ровно не читает
А с чего ради вы вообще это в консоли видите ?

Цитата Сообщение от yyyuuu Посмотреть сообщение
Все ровно не читает
А что читает?

Добавлено через 1 час 13 минут
Цитата Сообщение от yyyuuu Посмотреть сообщение
PHP
1
2
3
4
5
6
7
8
case 'pasport':
 if($develop) {
 $ourData = file_get_contents($pasportRemoteFileName);
 } else { 
 $ourData = file_get_contents($pasportRemoteFileName.urlencode($_GET['nakladnaya']), false, $context);
 }
 echo $ourData;
 break;
У меня сложилось такое чувство, что данный код находиться в общем файле. И после echo надо завершать его посредством exit. А не break

Собственно почему вы не воспользовались данным кодом
https://www.cyberforum.ru/post16966278.html

Мне непонятно.
1
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
18.07.2023, 05:07  [ТС]
Цитата Сообщение от Hmms Посмотреть сообщение
https://www.cyberforum.ru/post16966278.html
Пробовал, не работает вообще тогда ничего даже ексель который формируется на сервере пхп

Добавлено через 40 секунд
Цитата Сообщение от Hmms Посмотреть сообщение
А что читает?
Если передам просто строку "Привет" или как раньше " Путь до файла \\\\чтото\\чтото\\пака" - то все ок

Добавлено через 27 секунд
Цитата Сообщение от Hmms Посмотреть сообщение
У меня сложилось такое чувство, что данный код находиться в общем файле. И после echo надо завершать его посредством exit. А не break
Да все верно, этот код отдельно в файле лежит
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
18.07.2023, 08:23
В общем, скидывайте демку. Иначе никто не поможет.
1
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
18.07.2023, 10:50  [ТС]
Цитата Сообщение от Hmms Посмотреть сообщение
В общем, скидывайте демку. Иначе никто не поможет.
С тестового сервака
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
18.07.2023, 11:00
Ещё бд
1
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
18.07.2023, 11:05  [ТС]
Json text

Добавлено через 5 минут
Цитата Сообщение от Hmms Посмотреть сообщение
Ещё бд
BD test lc
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
18.07.2023, 11:14
Это не является БД. В общем, если отрезать к БД данные, взяв только основные переменные из файла config.php

Warning: file_get_contents(http://10.1.41.111/pasport.json): Failed to open stream: Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера in \html\json.php on line 68

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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
 
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
 
//require $_SERVER['DOCUMENT_ROOT'] . '/config.php';
 
$pasportRemoteFileName = "http://10.1.41.111/pasport.json";
$develop = false;
$jsonLogin = 'REPORT_PHP';
$jsonPass = '123';
 
//var_dump($cl_kod);
 
if(isset($_GET['z']) && !empty($_GET['z'])) {
    $auth = base64_encode($jsonLogin.":".$jsonPass);
        $context = stream_context_create([
            "http" => [
               "header" => "Authorization: Basic $auth",
            "timeout" => 40,
            ]
        ]);
 
 
    switch ($_GET['z']) {
        case 'day':
            $dtQuery = new DateTime($_GET['date']);
            if($develop) {
 
                $ourData = file_get_contents($dayRemoteFileName);
        //$ourData = file_get_contents('/var/www/html/day.json');
            } else {    
//fp($dayRemoteFileName.(int)$_GET['cl_kod'].'/'.$dtQuery->format('Ymd'));
                $ourData = file_get_contents($dayRemoteFileName.(int)$_GET['cl_kod'].'/'.$dtQuery->format('Ymd'), false, $context); 
                //$ourData = file_get_contents('http://10.1.3.4/NNK/hs/report/get_report_shipment_per_day/6107/20210322', false, $context);
 
fp($ourData);
            }
 
            echo $ourData;
            exit;
 
            break;
 
        case 'month':
            if($develop) {
                $ourData = file_get_contents($monthRemoteFileName);
 
 
 
 
            } else {
                $ourData = file_get_contents($monthRemoteFileName.(int)$_GET['cl_kod'].'/'.$_GET['date'].'01', false, $context);
            }
 
            echo $ourData;
            exit;
 
            break;
 
        case 'pasport':
            if($develop) {
                $ourData = file_get_contents($pasportRemoteFileName);
 
            } else {        
        //var_dump($pasportRemoteFileName.urlencode($_GET['nakladnaya']), false, $context); exit;
              $ourData = file_get_contents($pasportRemoteFileName.urlencode($_GET['nakladnaya']), false, $context);
//var_dump($ourData); exit;
//var_dump($ourData);
 
 
        //$ourData = file_get_contents('http://10.1.3.4/NNK/hs/report/get_invoice/ЭЧ277160', false, $context);
//fp(error_get_last());
            }
            echo $ourData;
            //break;
    }
}
Добавлено через 51 секунду
В общем в файле config.php прописан путь до http://10.1.41.111/pasport.json у меня доступа к 10.1.41.111 нету

Добавлено через 7 минут
Все ошибки в принципе подавлены наглухо. По этому вы и получали белую страницу. В случае если у вас тоже нету доступа к URL

PHP
1
2
3
4
5
6
7
8
9
10
if($develop) {
    $dayRemoteFileName = "http://10.1.41.111/day.json";
    $monthRemoteFileName = "http://10.1.41.111/month.json";
    $pasportRemoteFileName = "http://10.1.41.111/pasport.json";
 
} else {
    $dayRemoteFileName = "http://trnh-db-04/NNK/hs/report/get_report_shipment_per_day/";
    $monthRemoteFileName = "http://trnh-db-04/NNK/hs/report/get_report_shipment_per_month/";
    $pasportRemoteFileName = "http://trnh-db-04/NNK/hs/report/get_invoice/";
}
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
18.07.2023, 11:17
Проверьте
Вложения
Тип файла: txt json.php.txt (2.0 Кб, 4 просмотров)
Тип файла: txt config.php.txt (3.5 Кб, 4 просмотров)
0
7 / 2 / 0
Регистрация: 19.10.2014
Сообщений: 279
18.07.2023, 11:28  [ТС]
Ну эти доступы впринцепи и не нужны по
$pasportRemoteFileName = "http://10.1.41.111/pasport.json"; Я получаю Json который прикрепил
0
89 / 74 / 24
Регистрация: 16.05.2023
Сообщений: 268
18.07.2023, 11:30
Цитата Сообщение от yyyuuu Посмотреть сообщение
Ну эти доступы впринцепи и не нужны по
Подгрузи файлики выше к себе. На данный момент такое

PHP
1
2
3
4
5
6
        case 'pasport':
            $ourData = file_get_contents('.json', false, $context);
            echo $ourData;
            break;
    }
}
Отрабатывает вполне удачно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.07.2023, 11:30

Нужна java-программа для чтения электронных книг в формате PDF. Или как можно переделать PDF книгу в вордовский файл?
Нужна java- программа для чтения электронных книг в формате PDF. Нужна очень срочно прошу помощи завтра экзамен просто нада успеть. Или...

Получить картинки из файла pdf
Нашел решение http://keriat.ru/2010/09/03/pdf-to-png-transform/ , но что я только не делал, ответ один - Fatal error: Class 'imagick' not...

Получить автора файла pdf
Суть: из VBA генерятся файлики pdf, у которых прописан автор. Нужно батником получить текст, прописанный в свойстве файла...

Получить картинки из файла pdf
Меня интересует, есть ли такая возможность в Шарпе? Я Студию не ставил и попросил знакомого это проверить у которого она установлена....

Как получить гиперссылки в pdf документе
Добрый день! Я работаю с библиотекой IText7. Мне нужно получить все гиперссылки pdf документа. В интернете я не нашел примера, как это...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru