我正在用PHP做一个项目。我想将文件上传到服务器。我的PHP文件驻留在这个文件夹中:
http://www.example.com/ssl/
html代码是
<tr>
<td width="157" align="right"><font class="text2" size="2" face="Arial, Helvetica, sans-serif"><b>Choose file:</b></font></td>
<td width="337">
<input type="file" name="Code_1" size="25" maxlength="100">
</td>
</tr>
<input type="submit" name="Senden" value="Submit">
php代码
if (isset($_POST["Senden"])) {
move_uploaded_file($_FILES["Code_1"]["tmp_name"],"uploads/" . $_FILES["Code_1"]["name"]);
echo "File uploaded";
}
}
else{
echo "File not uploaded"
}
此代码正常运行,文件已上传至http://www.example.com/ssl/uploads/
我想将文件上传到:
http://www.example.com/uploads/
。
我该怎么做?我不知道如何指定路径。我使用了绝对路径,但它不起作用。任何人都可以帮助我吗?
提前致谢。
答案 0 :(得分:2)
您可以按以下方式使用路径:
$folder = "../images/stories/lab_excel/";
这里,$ folder是路径。 这是我的上传功能:
function upload($name,$tmp_name){
$fileextarr=explode('.',$name);
$fileextarr[0];
$fileext=$fileextarr[count($fileextarr)-1];
$fpath = "../images/stories/lab_excel/";
$filename = ereg_replace(" ","_",$fileextarr[0]).'.'.$fileext;
if($fileext=="xls" || $fileext=="xlsx" || $fileext=="doc"|| $fileext=="docx" || $fileext=="jpeg" || $fileext=="png" || $fileext=="gif" || $fileext=="tiff" || $fileext=="bmp" || $fileext=="jpg")
{
$uploadedfile = $filename;
}
$folder = "../images/stories/lab_excel/";
$result = move_uploaded_file($_FILES['excel']['tmp_name'], $folder.$filename);
/*echo $folder.$_FILES['excel']['name'];
die();*/
if($result){
$msg="File Uploaded Successfully";
return $folder.$filename;
}
else
{
return false;
}
}
这对我来说很好。
答案 1 :(得分:1)
看到您的代码,您需要的唯一变化是
move_uploaded_file($_FILES["Code_1"]["tmp_name"],"../uploads/" . $_FILES["Code_1"]["name"]);
所以在uploads/
之前加上 ../ 。
请参阅W3C上的上传代码。