引用 | 编辑
DLd
2009-03-29 13:20 |
楼主
▼ |
||
![]() 因为没有什么Ajax基础 所以就去抓了jqUploader 然后照官方的手册慢慢改 接下来诡异的事情就发生了 因为要处理上传后的档案 所以自己写了一只 php 然后用 move_uploaded_file() 结果在本机测试都正常 可是上传到空间后就无法正常上传 测试了一下后发现错误好像是在 move_uploaded_file() 这个函式上 他并没有传回True 请问我是不是有什么地方没注意到呢 ? 复制程式 if(move_uploaded_file($_FILES['UpFile']['tmp_name'],'./' . $_FILES['UpFile']['name'])) echo "ok"; else echo "here error"; ![]()
|
引用 | 编辑
Inndy
2009-04-25 15:01 |
1楼
▲ |
小弟这有一支上传程式,自行修改试试看吧~
还有显示错误讯息的功能 复制程式 <?php define("UPLOAD_DIR", "./"); // 用来显示错误讯息 function error($str) { print "<font color=\"#ff0000\">{$str}</font>\n"; exit(); } header("Content-Type: text/html; charset=big5"); print <<<_EOT_ <form method="POST" action="301.php" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="102400"> <input type="file" name="file"> <input type="submit" value="传送"> <input type="hidden" name="mode" value="upload"> </form> _EOT_; if($_POST["mode"] == "upload") { // 错误检查 switch ($_FILES["file"]["error"]) { case UPLOAD_ERR_INI_SIZE: case UPLOAD_ERR_FORM_SIZE: error("超过档案大小限制。"); case UPLOAD_ERR_PARTIAL: case UPLOAD_ERR_NO_FILE: error("无法上传。"); } // 为求慎重,也检查一次档案的大小 if($_FILES["file"]["size"] > 1024 * 100) { error("超过档案大小限制。"); } /////////////////// //关闭阻挡功能// ////////////////// // // 拒绝png与jpeg之外的档案 // if(!preg_match("/^image\/.*(png|jpeg)$/i", $_FILES["file"]["type"])) // { // error("档案形式不合法。"); // } // 拒绝使用了特定字元以外之文字的档名 if(preg_match("/[^\w\d\-\.]/", $_FILES["file"]["name"])) { error("档名不合法。"); } // 移动档案 $upload_file = UPLOAD_DIR . $_FILES["file"]["name"]; if(move_uploaded_file($_FILES["file"]["tmp_name"], $upload_file)) { chmod($upload_file, 0644); $img_size = getimagesize($upload_file); print "以下的档案已经上传成功。<br>\n"; print '<img src="' . $upload_file . '" '; print $img_size[3] . ' border="0">'; } else { error("上传失败。"); } } ?> ![]() |