dsoframer保存文档到服务器问题

不想起名字啊啊 2011-05-24 05:33:51
在dsoframer保存文档到服务器时,我采用如下写法
oframe.HttpInit();
//增加Post变量
oframe.HttpAddPostString("ID","111.ppt");
//上传打开的文件
oframe.HttpAddPostCurrFile("FileData", "aa.doc");
//执行上传动作
oframe.HttpPost("http://127.0.0.1:8080/officeonline/office/savedc.php");

在savedc.php页面采用如下写法:
<?php

$file = fopen("a.txt","w");
fputs($file,"Hello World. Testing!");


$aa =$_POST["ID"];

file_put_contents("test.txt",$aa);
fputs($file,$aa);


if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
fputs($file,"erreo");
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
fputs($file," 3333 ".$_FILES["file"]["type"]);
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];


}

}


fclose($file);

?>

代码中使用a.txt记录代码运行情况的,结果是:Hello World. Testing!111.ppt 3333
即代码运行到 输出$_FILES["file"]["name"],这些值都是空的。
...全文
505 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
问题解决了。我现在使用的是dsoframer V2.3.0.0 。
sacedc.php代码如下:

<?php

if ($_FILES["FileData"]["error"] > 0)
{
echo "Return Code: " . $_FILES["FileData"]["error"] . "<br />";

}
else
{
echo "Upload: " . $_FILES["FileData"]["name"] . "<br />";
echo "Type: " . $_FILES["FileData"]["type"] . "<br />";
echo "Size: " . ($_FILES["FileData"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["FileData"]["tmp_name"] . "<br />";

if (file_exists("upload/" . $_FILES["FileData"]["name"]))
{
echo $_FILES["FileData"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["FileData"]["tmp_name"],
"upload/" . $_FILES["FileData"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["FileData"]["name"];

}

}

?>
  • 打赏
  • 举报
回复
 HttpInit();
该方法用于初始化上传接口,不需要设置参数

HttpAddPostString(String FieldName, String someValue);
添加要提交的表单域, FieldName是要上传表单域名称,someValue是表单域值
例一:
HttpAddPostString("username", "zhangSan");
它类似域表单域的
<input type=text name=username value=zhangSan>

HttpAddPostCurrFile(String fileName, String ReName);
添加当前DSO编辑的文件给上传接口,该接口把文件模拟到成一个表单的文件域,并提交到处理页面。
例一:
HttpAddPostCurrFile("File", "");
该接口模拟表单文件域如下:
<input type=file name=File >
注意:第二个参数为空表示控件自动为文件命名,如:temp.doc,如果需要重命名可以在第二个参数指明文件名称,也可在保存页面指定文件名称。

HttpPost(String url);
执行上传操作将文件和表单域提交到url的页面进行保存操作

我想将HttpAddPostCurrFile传过来的数据保存为文件,如a.ppt。那请问下savedc.php页面该怎么写,我是PHP初学者。很多东西不懂
www_7di_net 2011-05-24
  • 打赏
  • 举报
回复
肯定會這樣啊,因為后边的部分你是使用echo直接输出到了显示器屏幕,而没有用fputs输出到文件里.所以文件里是空的.
  • 打赏
  • 举报
回复
2L的回答,不懂。求高手指点
wukaixin 2011-05-24
  • 打赏
  • 举报
回复
Content-Disposition: form-data; name="FileData"; filename="***\Contract.docx"Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document


















------------------------------------------------------------------------------------------------
http://www.jiemengwu.com/ 解梦屋 http://www.phpzy.com/php/ 绿色php资源http://www.jqk8.com剧情看吧

20,397

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧