Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > PHP

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 26.10.2002, 19:49
Wave вне форума Посмотреть профиль Отправить личное сообщение для Wave Посетить домашнюю страницу Wave Найти все сообщения от Wave
  № 11  
Wave
еретик

Регистрация: Jan 2001
Адрес: Харьков, Украина
Сообщений: 919
Цитата:
На компьютере пользователя лежит swf. Пользователь нажимает кнопочку и с сервера запускается php-скрипт, который создает на компьютере пользователя(!) (не важно где) текстовый файл (пусть пустой).
Как реализовать сей финт ушами?
можно. можно сделать все, даже писать в реестр.

для начала давай рассмотрим вариант, который подходит для большинства клиентов.

в файловой системе клиента находится swf где прописано что то вроде getURL("http://server.com/magick/createfile.php")

мы запускает этот свф, который в свою очередь запускает сценарий...

и тут мы наламываемся, потому что сценарий createfile.php выполняется на другой машине, на сервере, компьютере, стоящем на площадке одного из ISP и скрывающемся под именем server.com, и тебе возвращается лишь результат выполнения этого скрипта.

несомненно выполняемый на этом компе скрипт не может взять и создать файл в любом месте на твоей машине, потому что если такое было бы возможным, то ты сам бы офигел от количества возможностей повредить данным в ТВОЕЙ файловой системе.

но...

что такое cookies? куки, это текстовые файлы, сохраняемые в определенном месте, в которых сервер (в том числе и server.com) может сохранить ограниченное количество данных.

это не противоречит твоим требованиям, потому что тебе все равно где, и даже все равно что...

соответственно мы переписываем код в swf в виде getURL("http://server.com/cookies/create.php")

содержимое файла create.php может быть примерно таким

<?php
setcookie ('cookie', 'value');
?>

алееее.... оп. текстовый файл создан.

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

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

для начала необходимо установить ftp-server на машину клиента. каждого клиента, которые хочет что бы кто то извне мог ковыряться в их файловой системе.

после чего мы изменяем swf, прописывая там такую штуку getURL("http://server.com/ftp/create.php")

и тут начинаются сложности.

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

но для этого нам надо знать две... нет, три вещи

1. адрес
2. имя для подключения
3. пароль для подключения

в принципе можно сделать доступ анонимным, но дать всем на свете полный доступ к своей файловой системе не лучшая идея (смотри выше).

возможные проблемы с определением адреса...

клиент может не иметь реального IP адреса. в принципе эта проблема решаема, но это еще более усложняет подготовку клиентской машины.

клиент может прятаться за прокси, и тогда мы скорее всего не узнаем его реального адреса (если такой имеется)

возможные проблемы с передачей пароля и имени пользователя

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

в итоге, в том оченьмаловероятном случае если все прошло успешно, клиент запускает swf, тот вызывает скрипт на сервере, скрипт на сервере выступает в качестве клиента фтп сервера, который запущен на клиентской машине (которая теперь в свою очередь выступает в качестве сервера) и создает таки в твоей файловой системе текстовый файл...


и наконец рассмотрим последний случай ,когда тебе необходимо писать в реестр клиентской машины с удаленного сервера

для этого случая подходит вариант, который я привел выше, с единственной поправкой - тебе придется собственными руками написать сервер, который будет работать с реестром... если тебе все еще хочется работать с реестром...

поправьте меня, если я в чем то не прав....
__________________
These unidentyfied flying objects, that appeared to display unique characteristics, such as the speed, the record maneuverity and so on, must be studied in the interest of mankind

Старый 27.10.2002, 01:40
Anshakov вне форума Посмотреть профиль Отправить личное сообщение для Anshakov Найти все сообщения от Anshakov
  № 12  
Anshakov

Регистрация: Jul 2002
Адрес: Минск
Сообщений: 23
По умолчанию Спасибо

спасибо за ответ :-)
да, мне уже объяснили ньюансы и прислали пример скрипта, который создает пустой файл на c: диске клиентской машины, хотя некоторые умники продолжают утверждать, что это невозможно и отсылают лечиться, хех. идиотизм отрицать факт.

еще раз спасибо,
тема закрыта, вопрос снят :-)

Старый 27.10.2002, 03:17
Wave вне форума Посмотреть профиль Отправить личное сообщение для Wave Посетить домашнюю страницу Wave Найти все сообщения от Wave
  № 13  
Wave
еретик

Регистрация: Jan 2001
Адрес: Харьков, Украина
Сообщений: 919
факты надо подтверждать.

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

может быть ты покажешь его нам?
__________________
These unidentyfied flying objects, that appeared to display unique characteristics, such as the speed, the record maneuverity and so on, must be studied in the interest of mankind

Старый 27.10.2002, 10:27
Crazy вне форума Посмотреть профиль Отправить личное сообщение для Crazy Посетить домашнюю страницу Crazy Найти все сообщения от Crazy
  № 14  
Crazy
[+1 23.05.11]
 
Аватар для Crazy

Регистрация: Dec 2001
Сообщений: 4,159
Wave, ну это же так очевидно: скрипт ему дали без права распространения.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++

Старый 27.10.2002, 10:28
Самурай вне форума Посмотреть профиль Отправить личное сообщение для Самурай Найти все сообщения от Самурай
  № 15  
Самурай
Ветеран форума

Регистрация: Aug 2001
Адрес: /kiev.ua/butuzov
Сообщений: 3,045
Отправить сообщение для Самурай с помощью ICQ
Да, слушай покажи а хочу посмотерть =)
__________________
...

Старый 28.10.2002, 00:23
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 16  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
все, что выходит за границы кук невозможно ни в теории, ни на практике. а скрипт, подаренный буржуями без права распространения - из области научно-популярной фантастики. для подтверждения своего мнения расспросил всех программеров из соответствующего отдела у себя в агенстве. меня чуть за идиота не приняли
__________________
nothing | жежо

Старый 28.10.2002, 23:04
Anshakov вне форума Посмотреть профиль Отправить личное сообщение для Anshakov Найти все сообщения от Anshakov
  № 17  
Anshakov

Регистрация: Jul 2002
Адрес: Минск
Сообщений: 23
Так, ребята, надо все-таки прояснить ситуацию, чтобы не было недомолвок и кривотолков.
Уточню мои требования к созданию файла, а так же прокомментирую пути реализации.
1. Самое главное, что мне до фонаря, где файл будет лежать (т.е. те же самые кукисы мне подходят)
2. Содержание. Аналогично, а точнее мне необходимо сохранить лишь одну переменную.
3. Файл должен создаваться посредством флэш-файла лежащим на стороне юзера.
4. Теперь пресловутый буржуйский крипт, хе-хе. Он есть, и работает и совсем не секретен, распространению подлежит, никто не запрещал :-) Объясняю (думаю, что он не нужен будет после объяснений):
a) скрипт создает сессию. Дальше объяснять не нужно? Самый последний крэй..эээ ёжик поймет; переменную из сессии и использую потом.
b) Теперь о диске с: точнее про файл на нем. «Ватсон, это же элементарно!»
И понятно почему. Вспомним, что файл лежит на стороне пользователя, и вспомним про команду exec. Ну и простенький файлик написанный на том же c++. Хотя, если честно, этим путем не шел, так использовал первый вариант - сессии
Ну, надеюсь, все ясно, даже крэйзи, который не поленился зайти на phpclub, думая, что самый умный, а про то, что я написал, что помогли мне не наши соотечественники его IQ, видать, не позволил уже запомнить.
Извиняюсь за бурю в стакане перед людьми, которые постарались мне помочь, но в силу моих корявых объяснений и не менее корявых «хелпов» со стороны ненужных помощников, пошли по неверному пути.
Спасибо и удачи.

Старый 29.10.2002, 02:27
ihorko вне форума Посмотреть профиль Отправить личное сообщение для ihorko Посетить домашнюю страницу ihorko Найти все сообщения от ihorko
  № 18  
ihorko
Теоретик и Практик
 
Аватар для ihorko

Регистрация: Mar 2001
Адрес: Київ, .NET.UA
Сообщений: 1,173
Отправить сообщение для ihorko с помощью ICQ Отправить сообщение для ihorko с помощью AIM Отправить сообщение для ihorko с помощью Yahoo
ну ты и... тебе ж в одном из первых ответов дали объяснение по поводу сессий и кук. нет, тебе мало было... в результате пришел к тому же
а по поводу с++ программки... какой урод согласится ее себе загрузить? или так: какой брендмауэр его пустит (если не хочешь спрашивать у юзера)??? таким образом можно все загрузить на клиентскую машину а по поводу создания флешем файлов еще можно подискутировать. создавать то он создает. но проблем и вопросов дополнительных там хватает и есть оч даже нормальный способ запретить это делать (опять же со стороны клиента)

вот такие дела, старик. ты чертовски прав, надо четко ставить вопрос, иначе получишь такой же ответ. с процентами

зы: покажи все-таки скрипт, а?
__________________
nothing | жежо

Старый 29.10.2002, 02:59
Wave вне форума Посмотреть профиль Отправить личное сообщение для Wave Посетить домашнюю страницу Wave Найти все сообщения от Wave
  № 19  
Wave
еретик

Регистрация: Jan 2001
Адрес: Харьков, Украина
Сообщений: 919
в условии было сказано, что ты хочешь делать это через ПХП.
ты просто морочишь голову своим словоблудием.
сгинь.
__________________
These unidentyfied flying objects, that appeared to display unique characteristics, such as the speed, the record maneuverity and so on, must be studied in the interest of mankind

Старый 29.10.2002, 04:13
Crazy вне форума Посмотреть профиль Отправить личное сообщение для Crazy Посетить домашнюю страницу Crazy Найти все сообщения от Crazy
  № 20  
Crazy
[+1 23.05.11]
 
Аватар для Crazy

Регистрация: Dec 2001
Сообщений: 4,159
Господину Аншакову выражается публичная благодарность за устроенное им цирковое представление.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++

Создать новую тему   Часовой пояс GMT +4, время: 19:40.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:40.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.