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

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

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

Регистрация: Aug 2010
Сообщений: 4
По умолчанию ActionScript+PHP отправка и сохранение файла

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

Мой АС скрипт для локалки:
Код AS3:
ploadMsg.visible = false;
var URLrequest:URLRequest = new URLRequest("http://localhost/uploader.php");
var imageTypes:FileFilter = new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg; *.jpeg; *.gif; *.png");
var textTypes:FileFilter = new FileFilter("Text Files (*.txt, *.rtf)", "*.txt; *.rtf");
var allTypes:Array = new Array(imageTypes, textTypes);
var fileRef:FileReference = new FileReference();
fileRef.addEventListener(Event.SELECT, syncVariables);
fileRef.addEventListener(Event.COMPLETE, completeHandler);
fileRef.addEventListener(ProgressEvent.PROGRESS, progressHandler);
browse_btn.addEventListener(MouseEvent.CLICK, browseBox);
upload_btn.addEventListener(MouseEvent.CLICK, uploadVars);
 
function browseBox(event:MouseEvent):void {
fileRef.browse(allTypes);
}
 
function uploadVars(event:MouseEvent):void {
uploadMsg.visible = true;
fileRef.upload(URLrequest);
upload_btn.visible = false;
}
 
function syncVariables(event:Event):void {
fileDisplay_txt.text = "" + fileRef.name;
blocker.visible = false;
upload_btn.visible = true;
progressBar.width = 2;
var variables:URLVariables = new URLVariables();
variables.todayDate = new Date();
URLrequest.method = URLRequestMethod.POST;
URLrequest.data = variables;
 
function ioErrorHandler1(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
}
 
function completeHandler(event:Event):void {
uploadMsg.visible = false;
blocker.visible = true;
status_txt.text = fileRef.name + " успешно загружен.";
fileDisplay_txt.text = "";
 
function ioErrorHandler1(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
}
 
function progressHandler(event:ProgressEvent):void {
progressBar.width = Math.ceil(200*(event.bytesLoaded/event.bytesTotal));
}
Мой ПХП скрипт для локалки :
PHP код:
<?php

$f
='/.../aaa.jpg';
$s='/.../bbb.txt';
$todayDate $_POST['todayDate']; 
$filename $_FILES['Filedata']['name']; 
$filetmpname $_FILES['Filedata']['tmp_name']; 
$fileType $_FILES["Filedata"]["type"]; 
$fileSizeMB = ($_FILES["Filedata"]["size"] / 1024 1000); 
move_uploaded_file($_FILES['Filedata']['tmp_name'],$f);
$myFile "$s"
$fh fopen($myFile'a') or die("can't open file");
$stringData "\n\ntodayDate: $todayDate \n FileName: $filename \n TmpName: $filetmpname \n Type: $fileType \n Size: $fileSizeMB MegaBytes";
fwrite($fh$stringData); 
fclose($fh); 

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

Старый 25.08.2010, 19:43
e_gamer вне форума Посмотреть профиль Отправить личное сообщение для e_gamer Найти все сообщения от e_gamer
  № 2  
Ответить с цитированием
e_gamer

Регистрация: Aug 2010
Адрес: MSK
Сообщений: 104
Отправить сообщение для e_gamer с помощью ICQ
Security.loadPolicyFile('путь до crossdomain.xml');
__________________
$world->answer_for_request($_REQUEST['hello,world!']);
ICQ: 336637242

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

Регистрация: Aug 2010
Сообщений: 4
Создал хмл файл на сервере с кодом
Код:
<?xml version="1.0" encoding="utf-8"?> 
<cross-domain-policy> 
    <allow-access-from domain="*" /> 
</cross-domain-policy>
И добавил соответствующие строки в ас.
Файл все равно не грузится.

Старый 26.08.2010, 09:56
e_gamer вне форума Посмотреть профиль Отправить личное сообщение для e_gamer Найти все сообщения от e_gamer
  № 4  
Ответить с цитированием
e_gamer

Регистрация: Aug 2010
Адрес: MSK
Сообщений: 104
Отправить сообщение для e_gamer с помощью ICQ
Поставь отладку в серверный скрипт (например, запись информации о $_FILES,загружает ли файл, может ли открыть директорию).

Посмотри что отправляется клиентом.

Т.е. как я понял любой файл всегда будет складываться в aaa.jpg?
__________________
$world->answer_for_request($_REQUEST['hello,world!']);
ICQ: 336637242

Старый 26.08.2010, 17:28
diebytry вне форума Посмотреть профиль Отправить личное сообщение для diebytry Найти все сообщения от diebytry
  № 5  
Ответить с цитированием
diebytry

Регистрация: Aug 2010
Сообщений: 4
Цитата:
Сообщение от e_gamer Посмотреть сообщение
Т.е. как я понял любой файл всегда будет складываться в aaa.jpg?
Да.
Стал смотреть в тхт файле инфу о $_FILES
Вот это выдает,когда на локалке пробую
Код:
FileName c.jpg   
Tmpname  C:\WINDOWS\TEMP\phpC1.tmp 
Size 0.06562890625 MegaBytes  
Error 0
При отсылке на сервер выдает:
Код:
FileName     
Tmpname 
Size 0 MegaBytes  
Error
Никакие данные не выводятся, даже значение ошибки. То есть как я понимаю, это из-за того,что в пхп вообще никакие данные не поступают, или у пхп нет прав записывать эти переменные в файл.

Старый 31.08.2010, 15:40
diebytry вне форума Посмотреть профиль Отправить личное сообщение для diebytry Найти все сообщения от diebytry
  № 6  
Ответить с цитированием
diebytry

Регистрация: Aug 2010
Сообщений: 4
Всем спасибо за внимание. Разобрался.
Проблема была в сервере (http код 302).
Дописал .htaccess . Заработало все.

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

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

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


 


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


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