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

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.08.2009, 02:51
LanSelven вне форума Посмотреть профиль Отправить личное сообщение для LanSelven Найти все сообщения от LanSelven
  № 1  
Ответить с цитированием
LanSelven
 
Аватар для LanSelven

Регистрация: Aug 2009
Сообщений: 101
По умолчанию Сохранение из swf (Закрепим)

Здравствуйте все
Многие не раз задавали этот вопрос "как сохранить из swf, скажем в txt" мол, загрузить это ерунда, в рот сохранение никак не получается, и мол надо не на какой-нибудь сервер а на компьютер, рядом с swf, так вот, я тоже не знаю ^_^
Мне уже известно, что swf сам не может, ему нужна скрипт программа.
Так же я впринцепи знаю как написать код отправки, и впринцепи знаю как написать php или perl программку, чтобы она отправляла данные txt документу, но...вот неувязка - нихрена не работает...
я облазил множество тем по этой проблеме, мм, как не печально, нигда она до конца не решена ( ну или работает только у того, кому не нужно, О_о, кароче вот и хочу все сложить воедино)
Вообще, идеально если бы все переменные оправлялись по fscommands на php а тот сохранял в txt, но впринцепи LoadVars() тоже подойдет...
Последнее, во что я воткнулся ,это ошибка, но я уверен что косяков там еще много, кто-нибудь пожалуйста скажите что не так. А еще лучше, может у кого-нибудь есть подобная Работающая темка. Заранее спасибо, а вот собственно мой код:

Код в кнопке, которая лежит на главной рабочей облости:
asd - текстовое поле, пишит мол, как дела с отправкой.
Код AS1/AS2:
 on (release) {
	url = "index.php";
	myLoadVars = new LoadVars();
	myLoadVars.score = score;
	returnedVars = new LoadVars();
	myLoadVars.sendAndLoad(url,returnedVars,"GET");
	asd = "Sending...";
		returnedVars.onLoad = function() {
		asd = "Done."
	}
}
а это Php документ "index.php"
PHP код:
<?php
$file
=fopen("vars.txt",'r');
echo 
fread($file,1000);
fclose($file);
?>
<?php
//=========================
function vars_read() {
  
$file fopen("vars.txt",'r');
  
$str fread($file,1000);
  
fclose($file);
  return 
$str;
}
//=========================
function parse_vars($str) {
  
$pieces explode(";",$str);
//  print_r($pieces);
  
if (!$pieces) {return false;}
  
$pieces explode(" : ",$str);
  if (!
$pieces) {return false;}
  return 
true;
//  $str = str_replace(' : ','__',$str);
//  $str = str_replace(';','___',$str);
//  return (preg_match("/^\w+$/i",$str));
}
//=========================

$str $text $_GET['text'];
//-------проверки
if (substr($str,0,4) != 'txt=') {echo vars_read(); return;}
if (! 
parse_vars(substr($str,4))) {echo vars_read(); return;}

$file_name "vars.txt";
$file fopen($file_name,'w');
fwrite($file,$text);
fclose($file);
echo 
$text;
?>
Вот что за шляпа такая...

Добавлено через 9 минут
Хотел добавить, что Sharedobject не подходит, так как он лиш сохраняет/загружает из/в локальную память, а это шляпа полная, ибо глупо переместив swf из одной папки в другую, все сохранения сотруться, более того, сохранения нельзя "взять в руку" как например сохраненные переменные в txt документе

Старый 26.08.2009, 03:21
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Слов много, но непонятно - что делает весь это код?
Разве для замены текста в файле этого недостаточно:
PHP код:
$file_name "vars.txt"
$file fopen($file_name,'w'); 
fwrite($file,$text); 
fclose($file); 
?

Старый 26.08.2009, 04:14
LanSelven вне форума Посмотреть профиль Отправить личное сообщение для LanSelven Найти все сообщения от LanSelven
  № 3  
Ответить с цитированием
LanSelven
 
Аватар для LanSelven

Регистрация: Aug 2009
Сообщений: 101
Ну, я честно говоря в PHP ну сусы, код писал не я, так что не знаю =)
Однако скажу одно, что мой код, что тот что дал mooncar - ничего не пашед...Флешка говорит done, мол данные отдала, а документ vars.txt как был пустой, так пустым и остался...
Внусу поправку в код AS
Код AS1/AS2:
myLoadVars.sendAndLoad(url,returnedVars,"GET");
я исправил на
Код AS1/AS2:
myLoadVars.sendAndLoad(url,returnedVars,"POST");
и ошибки именно во Flash нету, теперь она говорит что все ок, а на деле нет...
Ну, вот, смотрите сами:
http://*****************/files/38xeid3wj
(Тут на сайте вроде, как-то можно сделать "вложение" т.е файл выложить, но я хз как, так что выложил на депозит, окей?)

Старый 26.08.2009, 05:03
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 4  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Надеюсь, вы не забыли, что когда у вас хостинг на UNIX-системе, что нужно открыть ваш файл для не только для чтения, но и для записи? (CMOD установить в 660).
Цитата:
Сообщение от LanSelven Посмотреть сообщение
Однако скажу одно, что мой код, что тот что дал mooncar - ничего не пашед...
Я ничего не давал, только процитировал кусок из конца вашего кода.
Вот теперь "даю". Допустим, данные приходят через POST. Так обычно делается, когда данные - большая строка, а не просто набор параметров, для которых и GET сойдет. Тем более, когда используется senAndLoad.
Тогда я использую обычно скрипт:
PHP код:
<?php
$str_new 
$_POST['str_new']; //получем из LoadVars строку для замены
$file $_POST['file']; //получаем из LoadVars полное имя файла, включая относительный путь (относительный по отношению к срипту)

$fw fopen($file'w');                    
fwrite($fw$str_new);
fclose($fw);

echo 
"ok";
?>
Вот это
PHP код:
echo "ok"
в конце нужно, чтобы LoadVars в методе onLoad или onData получила хоть что-то, чтобы знать, что скрипт успешно отработался.

Старый 26.08.2009, 12:41
LanSelven вне форума Посмотреть профиль Отправить личное сообщение для LanSelven Найти все сообщения от LanSelven
  № 5  
Ответить с цитированием
LanSelven
 
Аватар для LanSelven

Регистрация: Aug 2009
Сообщений: 101
Ну, как я понял, весь тот php код, который я дал нужно заменить на ваш (или оставить первую часть?) а во флеш нужно добавить полное имя файла куда сохранять данные( не представлю как это) и условие прихода "echo "ok"; " ?
Тогда можете еще в Action Script помочь?

Старый 26.08.2009, 12:49
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 6  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
LanSelven , простите, а вы пытаетесь сохранить txt-файл на сервер или локально на компьютере пользователя? Немного смущает вот это:
Цитата:
Вообще, идеально если бы все переменные оправлялись по fscommands на php а тот сохранял в txt, но впринцепи LoadVars() тоже подойдет...

Старый 26.08.2009, 12:57
LanSelven вне форума Посмотреть профиль Отправить личное сообщение для LanSelven Найти все сообщения от LanSelven
  № 7  
Ответить с цитированием
LanSelven
 
Аватар для LanSelven

Регистрация: Aug 2009
Сообщений: 101
не то, не то.
Я хочу сохранить всё в txt-файл лежащий в той же папке где и php код, и в той же папке где и swf (Все лежит на компьютере, в одной папке). Я делаю одну swf программку, и мне нужно чтобы некоторые переменные сохранялись. А тот самый txt был бы как дата файлом.

Старый 26.08.2009, 12:59
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 8  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Все лежит на компьютере, в одной папке, говорите? И этот компьютер - эммм... сервер с поддержкой пхп? Или же все-таки локальный комп, в смысле просто домашний компьютер?

Старый 26.08.2009, 13:02
Bred45 вне форума Посмотреть профиль Отправить личное сообщение для Bred45 Найти все сообщения от Bred45
  № 9  
Ответить с цитированием
Bred45

Регистрация: Dec 2008
Сообщений: 87
Если Вы работаете с локальной версией, может, проще использоваться zinc?

Старый 26.08.2009, 13:03
LanSelven вне форума Посмотреть профиль Отправить личное сообщение для LanSelven Найти все сообщения от LanSelven
  № 10  
Ответить с цитированием
LanSelven
 
Аватар для LanSelven

Регистрация: Aug 2009
Сообщений: 101
Ну, а какая разница? это не сервер... пред положим просто в папке на рабочем столе, обычного персонального компьютера не подключенного к сети вовсе О_о.

Добавлено через 46 секунд
Цитата:
Сообщение от Bred45 Посмотреть сообщение
Если Вы работаете с локальной версией, может, проще использоваться zinc?
Вот я где-то про это слушал "апликухи" О_о
Без понятия что это, и как это использовать

Добавлено через 4 минуты
air или zink - слышал мол не серверный скрип, интересно...
__________________
Кто к нам с мечом придет, тот появиться на респауне уже без меча.

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

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

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


 


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


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