2015-04-20 72 views
0

我在wordpress中使用表單上傳文件,我想打印bieng上傳的文件名,但是我得到了空的結果。返回上傳的文件名php

下面是我的代碼

HTML我使用來獲取和打印文件名

$file=$_FILES['file']; 
$name = $file['name']; 
echo basename($name); 

,但我得到空的結果

<form id="myform" action="" method="post" enctype='multipart/form-data'> 
<span style="margin-right:20px;">SELECT THE CATEGORY:</span> 
<select name="category" id="category" style="background-color:brown;color:#ffffff;"> 
    <option value="" disabled="disabled" selected="selected">Please select a competition category</option> 
    <option value="Cutie Pie">Cutie Pie</option> 
    <option value="Chubby">Chubby</option> 
    <option value="Dimples">Dimples</option> 
</select> <br><br> 
<input type="file" name="file" style="margin-top:12px;"> 
    <br><br> 

<input name="upload" type="submit" value="klk"/> 
</form> 
<div id="result"></div> 

PHP代碼...好心幫

+3

只有在確認上傳已執行併成功後,才能使用$ _FILES中的任何內容,例如if($ _FILES ['file'] ['error']!== UPLOAD_ERR_OK){die(「upload failed」); }' –

回答

0

首先你需要正確接收文件,那麼你可以得到它的名字是這樣的:

文件up.php

$uploaddir = './upload/'; //give this dir write permissions 
$uploadfile = $uploaddir . basename($_FILES['uploadFile']['name']); 

if (move_uploaded_file($_FILES['uploadFile']['tmp_name'], $uploadfile)) { 
    //now you can get the filename 
    $file = basename($uploadfile); 
    echo "<div id='result'>File <b>$file</b> is valid, and was successfully uploaded.</div>"; 

} else { 
echo <<< LOB 
    <form id="myform" action="up.php" method="post" enctype='multipart/form-data'> 
    <span style="margin-right:20px;">SELECT THE CATEGORY:</span> 
    <select name="category" id="category" style="background-color:brown;color:#ffffff;"> 
    <option value="" disabled="disabled" selected="selected">Please select a competition category</option> 
    <option value="Cutie Pie">Cutie Pie</option> 
    <option value="Chubby">Chubby</option> 
    <option value="Dimples">Dimples</option> 
    </select> <br><br> 
    <input type="file" name="uploadFile" style="margin-top:12px;"> 
    <br><br> 
    <input name="upload" type="submit" value="klk"/> 
    </form> 
LOB; 
} 

這只是讓你去很短的示例,您應該改善這個代碼,通過驗證,如果文件擴展名是正確的,所以你沒有得到一個php文件上傳到您的服務器...

+0

我的問題是,我正在使用ajax,並且我禁用了正常提交行爲的形式 – Zeeshan

+0

並且您的問題中的信息在哪裏? –

+0

好的,包括ajax我會開始一個新的線程或一個新的問題 – Zeeshan