[问题] 有关于图片从FLASH上传至MYSQL(amfphp)

楼主: corn456789 (玉米)   2013-09-03 16:47:00
各位FLASH大大!!
这几天忙于做个小程式,遇到以下瓶颈,不知道有没有哪位大大能帮助解决以下问题
首先是PHP的部分:
<?php
class senddb{
var $dbhost = "localhost";
var $dbname = "image_path";
var $dbuser = "root";
var $dbpass = "123";
var $conn;
var $return = "上传成功";
function sendpath($S){
$conn = mysql_connect("localhost","root","123");
mysql_select_db("image_path", $conn);
mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER SET UTF8");
mysql_query("insert into dbpath values ('$S')",$conn) or die("mysql error");
return "上传成功";
}
}
?>
再来是FLASH的部分:
import flash.net.URLRequest;
import flash.net.NetConnection;
import flash.net.Responder;
import flash.system.*;
var uploadURL="http://localhost/upload_uni.php";
var connection:NetConnection;
var responder:Responder;
var frList:FileReferenceList;
var fr:FileReference;
var gateway:String = "http://localhost/amfphp/gateway.php";
var A :String;
responder = new Responder(onResult, onFault);
connection = new NetConnection;
connection.connect(gateway);
function onResult(Result:String):void {
info_txt.appendText(Result+"\n");
}
function onFault(Result:Object):void {
info_txt.appendText("Flash Remoting错误\n");
}
function selectFiles(e:Event):void {
var files:Array = frList.fileList;
for (var i:int=0; i<files.length; i++) {
info_txt.appendText(files[i].name +"\n");
}
}
function uploadComplete(e:Event):void {
info_txt.appendText(e.target.name +" 完成上传\n");
trace("2");
}
browse_btn.addEventListener(MouseEvent.CLICK, browseFiles);
function browseFiles(e:Event):void {
frList = new FileReferenceList;
frList.addEventListener(Event.SELECT, selectFiles);
frList.browse([new FileFilter("Images", "*.jpg;*.gif;*.png")]);
}
upload_btn.addEventListener(MouseEvent.CLICK, uploadStart);
function uploadStart(e:Event):void {
var files:Array = frList.fileList;
if (files.length) {
for (var i:int=0; i<files.length; i++) {
files[i].addEventListener(Event.COMPLETE, uploadComplete);
files[i].upload(new URLRequest(uploadURL));
A = files[i].name;
connection.call("senddb.sendpath",responder,A);
trace("1");
}
}
}
再来是upioad_uni:
<?php
// 图档上传后所欲存放的目录
$up_dir = "./photo/";
// 若目录不存在, 则建立之
if(!is_dir($up_dir))
mkdir($up_dir, 0755);
// 上传的档案名称及路径
$up_file = $up_dir . $_FILES["Filedata"]["name"];
// 将档案放到设定的目录内
move_uploaded_file($_FILES["Filedata"]["tmp_name"], $up_file);
// 设定档案权限
chmod($up_file, 0777);
?>
这个是做上传图片时,开启浏览视窗的程式码,并且把图片复制存到路径
我们主要是要做一个FileReference,将图片存到预先的路径,最后在FLASH里面将
图片的档名,以正列抓取出来,再透过amfphp至FLASH到MYSQL
但是!!!!!!最出现以下的错误error:
TypeError: Error #1009: 无法存取 Null 物件参考的属性或方法。
at _fla::MainTimeline/uploadStart()
麻烦有哪位神手大大,可以帮助我一下,这已经困扰我很久了Q口Q!!
作者: zpl   2013-09-03 19:02:00
先去发布设定勾选“允许除错” 查看是哪一行出错
作者: KawasumiMai (さあ、死ぬがいい)   2013-09-06 16:45:00
应该是uploadStart function里面有个物件没宣告好导致使用了不存在的属性吧?

Links booklink

Contact Us: admin [ a t ] ucptt.com