Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
1 / 1 / 0
Регистрация: 28.06.2010
Сообщений: 17

Сохранение данных ВО ВРЕМЯ работы сайта

08.07.2010, 11:23. Показов 4042. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!
Есть такая проблема: Как сохранять данные ВО ВРЕМЯ того, как человек находится на сайте?
Поясню более конкретно.
Пользователь заходит на сайт и видит картинку, которую сгенерировал РНР-код. Побочные результаты (Координаты некоторых точек) необходимо сохранить для последующих генераций картинки. Пользователь продолжает сидеть на сайте. Через интервал времени (пусть это будет 10 секунд) происходит перегенерация картинки основанная на текущих и на предыдущих данных. Ещё через 10 секунд картинка снова обновится основываясь на текущих, предыдущих и предпредыдущих данных. И так до тех пор, пока пользователь не уйдёт с этой страницы.
Как сохранять этот массив? (я работаю под виндой) Как сделать, чтобы для каждого пользователя был "свой" массив? И как сделать так, чтобы когда пользователь уйдёт, и его массив удалился?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.07.2010, 11:23
Ответы с готовыми решениями:

Сохранение в базу данных. Спустя время изменения пропадают
исполнителиTableAdapter.Update(база_данных_музыки_в_стили_репDataSet); ...

Как сделать, чтобы скрипт работал во время всей работы сайта, а не единожды?
Допустим, у нас есть калькулятор и нам надо выводить значение нажатой пользователем кнопки и, чтобы при каджом следующем нажатии это...

Сохранение данных с сайта на компьютере клиента
Здравствуйте. Помогите пожалуйста. Задача такая. Имеется сайт, откуда необходимо сохранить информацию, доступ к которой только после...

4
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
08.07.2010, 11:30
MoZart.Element, для этого Вам нужно использовать либо файлы, либо БД и перед генерацией картинки их считывать, а после генерации записывать в них новые данные.
0
1 / 1 / 0
Регистрация: 28.06.2010
Сообщений: 17
08.07.2010, 11:44  [ТС]
А как сделать идентификацию данных конкретному пользователю? Авторизации на сайте нет.
0
45 / 45 / 12
Регистрация: 04.01.2010
Сообщений: 223
08.07.2010, 14:09
Данные можешь записывать пользователю в COOKIE. Прочти эту статью, для начала
пойдёт!
Статья
Что такое cookies?

Дело в том, что в процессе развития www-технологий и внедрения языков программирования в Интернет, перед разработчиками программ возникла очень серьезная проблема - как сохранять результаты выполнения алгоритма для каждого конкретно взятого пользователя на долгое время? Сам по себе протокол HTTP не имеет возможности фиксирования результатов программных процессов. Использование сессий также не является решением проблемы, так как их действие прекращается сразу после разрыва соединения с сервером.

Проблема разрешилась с внедрением механизма cookies (то есть, в переводе с английского, - "печенье"). Cookies обладают замечательным свойством - они сохраняются на винчестере пользователя и могут храниться там практически неограниченное время.

По своей сути cookies - это обычные текстовые файлы, хранящиеся в специальной директории, используемой броузером (обычно эта папка называется Temporary Internet Files), и вы можете увидеть их, зайдя в эту директорию (быстрый доступ к ней для броузера IE осуществляется через пункты меню Сервис -> Свойства обозревателя -> Временные файлы Интернета -> Настройка -> Просмотр файлов).

Реализация механизма cookies в PHP.

Реализация механизма cookies представлена единственной функцией setcookie(). Как и в случае с HTTP заголовками, эта функция должна быть вызвана до отправки каких-либо данных удаленному клиенту, не допускаются даже "пустые" символы, то есть пробел, символы перевода строки и так далее.

Функция имеет следующий синтаксис:

setcookie(имя куки, значение, срок годности, информация о пути, домен, защищенность)
Все параметры, кроме имени cookie, являются необязательными. Если cookie посылается только с этим параметром, то она сразу же уничтожается удаленным клиентом, поэтому сам по себе этот параметр не несет информационной нагрузки. Полнофункциональной cookie делают два следующих параметра: значение, заложенное в куке, и время, до которого эта cookie может быть использована.

Значением, которое несет cookie, может быть любая строка ASCII символов. Например, можно установить cookie с именем и фамилией посетителя, которые он до этого ввел в поле формы.

$data = $name."||".$surname;
setcookie("username", $data);
Заметьте, что отсылаемые данные должны быть оформлены в виде строки, попытка прочитать отосланный ранее массив значений ни к чему не приведет.

Cookie, установленная в вышеуказанном примере, будет уничтожена сразу после закрытия броузера пользователем, так как по умолчанию срок жизни cookie устанавливается в ноль. Чтобы изменить этот порядок, необходимо указать третий параметр expire. Определение этого параметра можно произвести двуми способами:

Задать отностительный срок действия с помощью функции time(), к которой прибавляется время в секундах для хранения cookie. Например, чтобы определить cookie на два часа необходимо написать:
setcookie("test 1", "это тестовая куки", time() + 3600 * 2); // 3600 - количество секунд в часе
Второй способ - задание абсолютного срока истечения годности cookie. Он устанавливается с помощью функции mktime(), которая возвращает конкретную дату удаления куки. Если необходимо задать срок жизни cookie до полуночи 1 сентября 2003 года, то следует определить cookie так:
setcooikie("test 2", "куки с абсолютной датой удаления", mktime(0, 0, 0, 9, 1, 2003);
Необязательный параметр пути ограничивает область действия cookie в пределах определенных директорий. Причем в эту область входят все пути, начинающиеся со значения в этом параметре. Например:

setcookie("test 3, "", 0, "/mus");
Мы установили куку, пропустив параметры значения и времени и определив область действия всеми путями, начинающимися со строки "/mus", то есть сюда входят и директория "/music/", и "/museums/". Чтобы однозначно определить путь, необходимо завершить путь слешем. То есть для ограничения действия куки каталогом "/mus", необходимо было написать в параметре "/mus/".

Следующим опциональным параметром является параметр определения действия cookie в пределах указанного домена. Причем значению этого параметра "someserver.com" соответствует только сайт с адресом http://someserver.com, а значению ".someserver.com" соответствуют уже и http://someserver.com, и http://mail.someserver.com, и http://my-someserver.com, то есть все домены, кончающиеся данной строкой.

Последний параметр функции setcookie() указывает на то, что данная cookie должна быть послана через защищенное соединение (HTTPS). Этот параметр необходим при установке cookie с конфеденциальными данными.

setcookie("my_cookie", $value, time() + 3600 * 24 * 5, "/", ".myphp.dem.ru", 1);
Чтение cookie.

Обращение к установленной cookie идет через ее имя. Например, продолжая пример выше, прочесть cookie можно следующим образом:

echo "У вас сохранены следующие данные:<br>";
echo $my_cookie;
Обращение к данным, сохраненным в cookie, также может происходить через массив $HTTP_COOKIE_VARS. Он схож с другими подобными массивами, такими как $HTTP_POST_VARS и другими, и содержит все значения, прочтенные из cookie.

Удаление cookie.

Удаление cookie производится отправкой новой cookie с именем удаляемой без каких-либо дополнительных параметров.

Например:

$data = $my_cookie;
setcookie("my_cookie");
echo "Следующие данные были удалены:<br>" . $data;
На этом закончим сегодняшний урок. До встречи.
http://www.poiu.ru/lessons/index.php-11.htm


Конечно можно сохранять данные и в файлы на сервере. Вот тебе статья на эту тему:
Статья
Работа с файлами

Необходимость в операциях с файлами встает перед программистом очень часто. Если ваши скрипты не используют баз данных, то файлы остаются единственными приемлемыми хранителями информации для скрипта. Применение файлов как хранилищ информации выполнения скрипта позволяет использовать их в самых разнообразных ситуациях. Практически все скрипты-счетчики чего-либо написаны на основании работы с файлами. Также возможно привести кучу других примеров, но пора переходить непосредственно от слов к делу.

Сразу хочу сказать, что работа с файлом должна быть санкционирована. По умолчанию PHP не допускает работу с файлом в целях безопасности. Чтобы снять этот запрет в FTP-менеджере CuteFTP в свойствах файла выставьте все галочки, в других менеджерах должно быть что-то подобное.

file_exists

Прежде, чем производить операции с файлом, часто необходимо убедиться, что указанный файл вообще существует. Этим и занимается функция file_exists. Эта функция может возвращать только два значения, как вы сами понимаете, TRUE (если указанный файл существует) и FALSE. Обычно использование данной функции выглядит так:

if ( !file_exists("somefile.txt") ) exit("Указанный файл не существует");

Заметьте, что функция действует только на локальных файлах, то есть если вы возжелаете проверить, обзавелся ли Яндекс файлом robot.txt, то ваши усилия будут тщетны. Но зато возможно проверить любой файл, лежащий на локальном сервере независимо от директории его расположения.

Вот некоторые правила описания пути к файлу.

filename

Просто указание имени файла означает, что он находится в текущей директории.

./files/filename

Файл содержится в папке files, находящейся в текущей директории. Длина цепочки из папок не ограничена.

../filename

Файл лежит в предыдущей директории. Каждый знак ../ расценивается как возврат в родительскую директорию.

../files/filename

Файл находится в папке files, которая лежит в предыдущей директории.

filesize

Как видно из названия, функция определяет размер файла и возвращает его в байтах. Полезно, если вы хотите проверить файл на наличие в нем информации (как вы понимаете, пустой файл содержит 0 байт), а также возможно проверить размер файла на превышения определенного лимита.

file

Эта функция уже непосредственно работает с файлом. Она возвращает содержимое указанного файла, причем делает она это в виде массива, где каждый его элемент является строкой файла. Функция полезна, когда в одном файле необходимо сохранить несколько разных значений, которые не должны пересекаться. Тогда каждое значение сохраняется на отдельной строке и читается функцией file, которая возвращает массив, вследствие чего обращение к заданной переменной происходит с помощью чтения значения элемента массива с индексом, соответствующим строке в файле.

Кроме того, возможно воссоединение всех элементов возвращенного массива в одну переменную. Это делается с помощью функции работы с массивами implode.

$text_file = implode("", file("somefile"));
echo $text_file;

readfile

Как и предыдущая функция, readfile выводит содержание указанного файла, а также возвращает число символов в файле (или количество байт, кому как нравится, так как один символ равен одному байту). Но учтите, что в отличие от file, эта функция не предусматривает присваивание прочитанного содержимого файла переменной. Если вы попытаетесь это сделать, то переменной присвоится только число прочитанных символов.

$bytes = readfile ("somefile");
echo "Итого - ".$bytes." символов";

fopen

Если предыдущая функция самодостаточна и в общем не связана с другими функциями, то последующие функции работы с файлами работают в связке с fopen. Эта функция открывает указанный файл и возвращает идентификатор соединения с файлом, который используется в служебных целях. С содержимым файла эта функция никаким образом не связывается.

Функция fopen имеет несколько режимов работы с файлом. Они указываются после имени файла и представляют из себя следующие обозначения:

"r"
Файл открывается только для чтения его содержимого.

"r+"
Открытие файла как для чтения, так и для записи.

"w"
Файл открывается с целью записи.

"w+"
Открыть файл для чтения и записи.

"a"
Файл открывается для записи в конец файла (дозаписи).

"a+"
Открывается для дозаписи и чтения.

fgets

Функция чтения файла, открытого функцией fopen. Но в отличие от file, эта функция за каждый раз своего выполнения возвращает только одну строку файла, при этом она перемещает внутренний указатель файла на следующую строку, которую она прочитает при следующем обращении к функции. Поэтому, если вам необходимо прочитать файл целиком, необходимо использовать эту функцию в цикле.

Заметьте, что функция fgets использует дополнительный параметр length, который указывает максимальную длину строки файла для чтения. Если объем строки превышает это число, то функция возратит ее в "урезанном" виде объемом в число length байт. По умолчанию этот параметр установлен в 1024 байт, или в один килобайт. Тем более обратите внимание на этот параметр, если вы используете файлы больших размеров, так как при чтении таких файлов может переполниться буфер выполнения PHP (его объем указывается в файле конфигурации), что приведет к зависанию.

$file = fopen ("somefile", "r");
while ($line = fgets($file, 4096) )
{
$line.="\n";
echo $line;
}
следующие команды работы с файлом

Обратите внимание, что в качестве указания файла для чтения необходимо указывать не имя файла, а идентификатор соединения с файлом, возвращенный функцией fopen (в нашем примере это значение переменной $file).

fputs

Функция записи информации в файл, причем делает она это по принципу работы функции fgets, то есть начинает запись с позиции внутреннего файлового указателя. Вообще, эта функции во многом схожа с вышеуказанной: она также использует параметр длины записываемых данных, который также является опциональным.

fclose

Как вы догадались, эта функция закрывает указанный файл. Вообще-то, по завершении выполнения скрипта, PHP сам закрывает все открытые им файлы, но все же лучше это делать вручную. В качестве параметра функции необходимо указать идентификатор соединения с файлом.

Для иллюстрации связки вышеуказанных функций приведем пример создания простого счетчика посещений.

<?
$file = fopen("counter.txt", "r");
$c = fgets ($file, 150);
fclose ($file);
$c++;
$file = fopen("counter.txt", "w");
fputs ($file, $c);
fclose ($file);
echo $c;
?>

Работа с директориями

Тесно связаны с действиями над файлами операции с директориями. Алгоритм работы с ними схож с операциями над файлами: сначала директорию необходимо открыть, выполнить какие-либо действия и, наконец, закрыть ее.

opendir

Эта функция открывает указанную директорию и возвращает служебный идентификатор соединения с директорией. Пути к директории следует указывать следующим образом:

.

Точка означает открытие текущей директории

./files/

Открытие папки files, находящейся в текущей директории

..

Открытие папки на уровень выше текущей

readdir

Функция читает директорию, открытую opendir. За каждый проход она возвращает имя файла или папки, лежащих в указанной директории, и перемещает внутренний указатель на следующий объект директории. Так что для прочтения всей директории ее необходимо использовать в цикле.

Также необходимо заметить, что эта функция возвращает служебные объекты папки . и .., которые можно отсекать при выводе оператором IF.

closedir

Закрываем директорию, указывая в качестве аргумента идентификатор соединения с папкой.

Иногда использование функций работы с директориями очень облегчают жизнь. Например, в разделе Функции вы можете видеть список функций в алфавитном порядке. Представляете, сколько времени нужно было бы потратить, чтобы вручную написать весь этот список с ссылками, да еще и в алфавитном порядке. И вот как раз здесь мне помогли функции работы с директорией. Каждая функция была помещена в отдельный файл с именем, соответствующим названию функции, без каких-либо расширений.

$i = 0;
$handle = opendir ('.');
while($file = readdir($handle))
{
if ($file != '.' && $file != '..')
{
$func[$i] = $file; //формируем массив названий файлов с функциями
$i++;
}
}
sort ($func);
for ($q = 0; $q<sizeof($func); $q++)
{
echo "<a href='index.php?".$func[$q]."'>".$func[$q]."</a><br>\n";
}

Так что, при каждом заходе на страницу вы получаете только что сгенерированный список функций.

На этом все. Встретимся на следующем уроке.
http://www.poiu.ru/lessons/index.php-6.htm


Но в твоём случае лучше в COOKIE сохранять.
1
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
08.07.2010, 17:55
ПАЦАН, в таком случае, я бы лучше использовал сессии. Т.к. куки могут быть отключены( хоть это и мало вероятно, но считаться с этим нужно ), а сессии хранятся на сервере и в куки помещают только идентификатор сессии. Если у пользователя отключены куки, то PHP сам припишет этот идентификатор ко всем ссылкам( если в php.ini это не отключено( по умолчанию эта опция включена ) ), что обеспечивает независимость от настроек клиента

Статья по сессиям
Сессии (сеансы) в PHP
Сессии и cookies предназначены для хранения сведений о пользователях при переходах между несколькими страницами. При использовании сессий данные сохраняются во временных файлах на сервере. Файлы с cookies хранятся на компьютере пользователя, и по запросу отсылаются броузером серверу.

Использование сессий и cookies очень удобно и оправдано в таких приложениях как Интернет-магазины, форумы, доски объявлений, когда, во-первых, необходимо сохранять информацию о пользователях на протяжении нескольких станиц, а, во-вторых, своевременно предоставлять пользователю новую информацию.

Протокол HTTP является протоколом "без сохранения состояния". Это означает, что данный протокол не имеет встроенного способа сохранения состояния между двумя транзакциями. Т. е., когда пользователь открывает сначала одну страницу сайта, а затем переходит на другую страницу этого же сайта, то основываясь только на средствах, предоставляемых протоколом HTTP невозможно установить, что оба запроса относятся к одному пользователю. Т. о. необходим метод, при помощи которого было бы отслеживать информацию о пользователе в течение одного сеанса связи с Web-сайтов. Одним из таких методов является управление сеансами при помощи предназначенных для этого функций. Для нас важно то, что сеанс по сути, представляет собой группу переменных, которые, в отличие от обычных переменных, сохраняются и после завершения выполнения PHP-сценария.

При работе с сессиями различают следующие этапы:

открытие сессии
регистрация переменных сессии и их использование
закрытие сессии

Открытие сессии

Самый простой способ открытия сессии заключается в использовании функции session_start, которая вызывается в начале PHP-сценария:

session_start
Синтаксис:
session_start();
Эта функция проверяет, существует ли идентификатор сессии, и, если нет, то создает его. Если идентификатор текущей сессии уже существует, то загружаются зарегистрированные переменные сессии.

Регистрация переменных сессии

После инициализации сессии появляется возможность сохранять информацию в су-перглобальном массиве $_SESSION. Пусть имеется файл index.php в котором в массив $_SESSION сохраняется переменная и массив.


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
<?php
 
  // Инициируем сессию
 
  session_start();
 
 
 
  // Помещаем значение в сессию
 
  $_SESSION['name'] = "value";
 
 
 
  // Помещаем массив в сессию
 
  $arr = array("first", "second", "third");
 
  $_SESSION['arr'] = $arr;
 
 
 
  // Выводим ссылку на другую страницу
 
  echo "<a href='other.php'>другая страница</a>";
 
?>
На страницах, где происходит вызов функции session_start(), значения данных переменных можно извлечь из суперглобального массива [COLOR="rgb(65, 105, 225)"]$_SESSION[/COLOR]. В следующем листинге приводится содержимое страницы other.php, где извлекаются данные, ранее помещенные на странице index.php.


PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
 
  // Инициируем сессию
 
  session_start();
 
  // Выводим содержимое суперглобального массива $_SESSION
 
  echo "<pre>";
 
  print_r($_SESSION);
 
  echo "</pre>";
 
?>
Результат работы скрипта выглядит следующим образом:


Array

(

[name] => value

[arr] => Array

(

[0] => first

[1] => second

[2] => third

)



)
Закрытие сессии

После завершения работы с сессией сначала нужно разрегистрировать все переменные сессии, а затем вызвать функцию unset():

Синтаксис:
PHP
1
 unset($_SESSION["username"]);
Пример простой сессии
Рассмотрим пример простой сессии, работающей с тремя страницами. При посещении пользователем первой страницы открывается сессия и регистрируется переменная $username. Соответствующий код реализации приведен в листинге:


PHP
1
2
3
4
5
6
7
8
9
<?
 
  session_start();
 
  $_SESSION['username'] = "maksim";
 
  echo 'Привет, '.$_SESSION['username']."<br>";
 
?>
HTML5
1
<a href="page2.php">На следующую страницу </a>
Результат работы этого сценария показан на рис:


После этого, пользователь maksim нажимает на ссылку и попадает на страницу page2.php, код которой приведен в листинге:


PHP
1
2
3
4
5
6
7
8
9
<?
 
  session_start();
 
  echo $_SESSION['username'].' , ты пришел на другую страницу этого сайта!';
 
  echo("<br>");
 
?>
HTML5
1
<a href="page3.php">На следующую страницу </a>
Результат работы этого скрипта показан на рис:


При нажатии на ссылку, пользователь попадает на страницу page3.php, при этом происходит разрегистрация сеансовой переменной и уничтожение сессии. Соответствующий код реализации приведен в листинге:


PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
 
  session_start();
 
  unset($_SESSION['username']); // разрегистрировали переменную
 
  echo 'Привет, '.$_SESSION['username'];
 
  /* теперь имя пользователя уже не выводится */
 
  session_destroy(); // разрушаем сессию
 
?>
Как видно из рисунка, после разрегистрации сеансовой переменной значение массива $_SESSION['username'] уже недоступно:

Ссылка на источник: http://www.softtime.ru/bookphp/gl8_1.php
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.07.2010, 17:55
Помогаю со студенческими работами здесь

Фрейм, сохранение данных относительно другого сайта
Если страничка подгружается через фрем, как сохранить localStorage или теже куки относительно того сайта на котором расположен этот самый...

Время освоение работы с базами данных с C++
Нашёл для себя неплохую вакансию - разработчик ПО, требуются там знания MS SQL, MySQL, C++, MS Visual Studio. По поводу C++ и студии...

Смена типов данных во время работы программы
Люди я еще новичок и не знаю всех ф-ций, так что подскажите пожалуйста, как можно менять типы данных в паскале, в самом процессе...

Сохранение данных приложения при закрытии для последующей работы с ними
Здравтсвуйте, у меня установлена программа visual Basic 2005, уже есть приложение, когда я его запускаю и добавляю данные, они...

Выбор типа данных пользователем во время работы программы
Работаю с формами, хочется сделать выбор пользователем типа данных во время работы. Собственно вопрос, можно ли сделать так что бы...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru