2016-03-01 28 views
-2

我想創建一個upload.php,它只將PDF,DOC和DOCX上傳到數據庫(路徑)和我的服務器上的文件。現在我上傳到文件正在工作,但我真的不知道如何將鏈接(路徑)上傳到我的表格行。如何將文件上傳到數據庫

此外,我上傳的文件必須能夠通過單擊詳細信息頁面上的按鈕進行下載。

我upload.php的

<?php 
$servername = "localhost"; 
$username = "root"; 
$password = "usbw"; 
$dbname = "persons"; 

// CREATE A CONNECTION WITH THE DATABASE 
$conn = new mysqli($servername, $username, $password, $dbname); 
if ($conn->connect_error) { 
die("Connection failed: " . $conn->connect_error); 
} 

if ($_FILES["cv"]["error"] > 0) 
{ 
echo "<font size = '5'><font color=\"#e31919\">Error: NO CHOSEN FILE <br />"; 
echo"<p><font size = '5'><font color=\"#e31919\">INSERT TO DATABASE FAILED"; 
} 
else 
{ 
    move_uploaded_file($_FILES["cv"]["tmp_name"],"files/" . $_FILES["cv"]["name"]); 
echo"<font size = '5'><font color=\"#0CF44A\">SAVED<br>"; 

$file="files/".$_FILES["cv"]["name"]; 
$sql="INSERT INTO person (person_cv, path) VALUES ('','$file')"; 

if (!mysql_query($sql)) 
{ 
    die('Error: ' . mysql_error()); 
} 
echo "<font size = '5'><font color=\"#0CF44A\">SAVED TO DATABASE"; 

} 

mysql_close(); 

?> 

數據庫的名字叫做其中有一個叫人表「人」。文件鏈接應保存到person_cv。我是PHP的新手,我想了解PHP,但有很多方法可以做到這一點,因爲我感到困惑。

+0

您是否收到此錯誤代碼? – JNevill

+0

我不是因爲代碼正在工作,而是將文件上傳到服務器上的目錄。 – GLRotterdam

回答

1

如我所見,您也對數據庫結構感到困惑。

我不知道你真正想要保留在數據庫中的哪些數據,但你需要以下:

  • 表的基本數據(稱爲例如people_id),在這裏您將有例如
    • id
    • namesurname
    • cv_file_id
  • 表文件信息
    • file_id(值必須相同cv_file_id
    • name(可以是文件的確切名稱是上傳之前,或者說改變了更好的操作)
    • type(dfefined大多是由擴展,如DOC,DOCX,TXT左右)
  • ,可能也爲人們的信息一些其他表,themse lves

而在域文件夾中,您將有一個文件夾,您將在其中保存所有上傳的cv文件。然後,您將根據需要更新數據庫表 - 並上傳這些文件。

這是如何做到最合理的方法。我會這樣做。也許是有經驗的人會以其他方式去做。

+0

所以,如果我是正確的,我必須創建一個其他表file_id與cv_file_id或在我的情況下person_cv關係。我並沒有真正使用這個長期的,也許只是一個星期。所以如果沒有使用/創建其他表的方式,只是使用我的person_cv會很好。是的,我確實有兩張名爲人和地址的表格,其中地址與人鏈接。 – GLRotterdam

+0

是的,你是對的。 –

相關問題