2012-05-15 75 views
0

我想用php(文本文件)上傳文件,並且總是把這個文件保存爲names.txt(如果文件存在以前上傳,我想用新文件替換)到相同的目錄腳本位於。我從教程中在線找到了下面的代碼,但是我無法讓它工作。我沒有找到任何文件。我已經發布了html文件和上傳的php文件來幫助我。謝謝 uploadfile.htmlPHP文件上傳文件夾

<html> 
<head> 
<title>File Uploading Form</title> 
</head> 
<body> 
<h3>File Upload:</h3> 
Select a file to upload: <br /> 
<form action="file_uploader.php" method="post" 
         enctype="multipart/form-data"> 
<input type="file" name="file" size="50" /> 
<br /> 
<input type="submit" value="Upload File" /> 
</form> 
</body> 
</html> 

file_uploader.php

<?php 
if($_FILES['file']['name'] != "") 
{ 
    copy($_FILES['file']['name'], "/uploads") or 
      die("Could not copy file!"); 
} 
else 
{ 
    die("No file specified!"); 
} 
?> 
<html> 
<head> 
<title>Uploading Complete</title> 
</head> 
<body> 
<h2>Uploaded File Info:</h2> 
<ul> 
<li>Sent file: <?php echo $_FILES['file']['name']; ?> 
<li>File size: <?php echo $_FILES['file']['size']; ?> bytes 
<li>File type: <?php echo $_FILES['file']['type']; ?> 
</ul> 
</body> 
</html> 

回答

2

使用move_uploaded_file(),而不是copy()。如果目標文件已經存在,它將被覆蓋。

您的目的地無效。您將目錄傳遞給目標文件。

copy($_FILES['file']['tmp_name'], "/uploads/".$_FILES['file']['name']); 
+0

我試圖用move_uploaded_file()以,但我得到了「未指定的文件!」 – user1346598

+0

我也嘗試了你以後給我的代碼,我得到這個「解析錯誤:語法錯誤,第4行/Applications/XAMPP/xamppfiles/htdocs/file_uploader.php中出現意外的T_LOGICAL_OR」 – user1346598

+0

你用「;」複製了所有行。 「在if語句中? – miqbal

0

上傳文件我用這樣的代碼如下

<?php 
if ($_FILES["file"]["error"] > 0) 
    { 
    echo "Error: " . $_FILES["file"]["error"] . "<br />"; 
    } 
else 
    { 
    echo "Upload: " . $_FILES["file"]["name"] . "<br />"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br />"; 
    echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />"; 
    echo "Stored in: " . $_FILES["file"]["tmp_name"]; 
    } 
    ?>