2013-05-09 21 views
0

我正在創建一個在數據庫中上傳文件的應用程序。例如我同時上傳3個文件,我希望他們的ID是相同的。那麼我會再次上傳另一批文件,它們的ID也應該是相同的,但現在ID已經增加了。 \php mysql-uploading具有相同ID的文件

我正在使用兩個ID DM_ID和ID。 DM_ID是自動遞增的,而ID不是。我想獲得id的最後一個值。 DM_ID和ID在一個表中。

我想這代碼,但它不工作

$result = mysqli_query($con,"SELECT id from __scannedfiles order by id desc limit 1 ") OR die(mysqli_error($con)); 
       $row = mysqli_fetch_array($result); 
       $file_id = $row[0]; 


mysqli_query($con,"INSERT INTO __scannedfiles VALUES ('','$file_id'+1,'$file_title', '$file_name','$file_pic','$file_deptname','$file_doctype','$file_date','$file_desc')"); 
+0

錯誤信息是什麼? – 2013-05-09 06:57:19

+0

沒有錯誤信息,這個ID對於一批文件仍然不一樣。 – user2335183 2013-05-09 06:58:44

+0

你有沒有設置自動增量ID? – Jalpesh 2013-05-09 07:02:05

回答

0

乍一看我可能會認爲你插入新行與空'' ID,這是不允許的。請嘗試在INSERT聲明中明確指出要將值分配給哪些屬性。

mysqli_query($con,"INSERT INTO __scannedfiles(DM_ID, DM_NANE, DM_PIC, DM_DEPTNAME, DM_DOCTYPE, DM_DATE, DM_DESC) VALUES ('$file_id'+1,'$file_title', '$file_name','$file_pic','$file_deptname','$file_doctype','$file_date','$file_desc')"); 
+0

如果是自動遞增的DM_ID,則爲空。 – user2335183 2013-05-09 07:06:49

1

您需要有2個表格。

一個不管是什麼「批」 一個用於文件

都與自動增量標識。 在插入到文件表之前,插入到批處理表中,獲取一個id,然後將其用於插入到文件表中

這樣您將具有正確的標識。

+0

我該怎麼做?我是新來的PHP和MySQL。 – user2335183 2013-05-09 07:17:13

+0

我如何設置ID爲相同? – user2335183 2013-05-09 07:30:12

+0

插入到批處理表中,獲取一個id,然後用它插入到文件表中 – 2013-05-09 07:32:47