2016-01-24 29 views
0

在我的項目有2個用戶,管理員上傳文件到數據庫存儲在tbl_upload觀看從上傳查詢特定ID

upload.php的

if(move_uploaded_file($file_loc,$folder.$final_file)) { 
     $sql="INSERT INTO tbl_uploads(emp_id,file,ext,size) 
     VALUES('$file_id','$final_file','$file_type','$new_size')"; 
     mysql_query($sql); 

,我已經從tbl_employee存儲的ID現在我的問題是如何從觀看錶查看特定ID

view.php

$sql="SELECT * FROM tbl_uploads"; 
    $result_set=mysql_query($sql); 
    while($row=mysql_fetch_array($result_set)) 

這是文件去$folder="uploads/";即時思考外鍵,但我不知道從哪裏開始。請幫忙。在此先感謝

回答

0

您可以使用mysql_insert_id()得到最後一個自動增量的ID。 通過特定行(您的案例中的ID)過濾結果由WHERE子句完成。

$id_upload = mysql_insert_id(); 
$sql="SELECT * FROM uploads WHERE id = ".(int)$id_upload." LIMIT 1"; 
+0

其工作,但它認爲最後的上傳。但如果我想查看所有上傳的文件的ID? – JustAngelo

+0

對於什麼ID?我以爲你需要上傳的ID?如果您需要員工編號,請將員工編號放入WHERE子句中。 – PetrHejda

+0

tbl_upload從tbl_employee取得emp_id – JustAngelo

0

你需要tbl_uploads添加列如下:

ALTER TABLE tbl_uploads 
ADD COLUMN user_id 
ADD CONSTRAINT fk_users FOREIGN KEY (user_id) REFERENCES users(user_id) 

您也可以設置級聯屬性來刪除文件時,用戶將被刪除。

ALTER TABLE tbl_uploads 
ADD COLUMN user_id 
ADD CONSTRAINT fk_users FOREIGN KEY (user_id) REFERENCES users(user_id) 
ON DELETE CASCADE 

但是,您需要創建一個INNODB屬性的表。

此外,如果你需要插入PHP後,即可獲取最後一個ID,您可以與MySQL功能讓它在PHP

<?php 
    $user_id= $_SESSION['user_id']; 
    $mysqli = new mysqli("db_server", "db_user", "db_pass", "db_name"); 

    /* check connection */ 
    if (mysqli_connect_errno()) { 
     printf("Connection error: %s\n", mysqli_connect_error()); 
     exit(); 
    } 
    //remeber if the id field is auto_increment you don´t need write on query 
    $query = "INSERT INTO tbl_uploads (user_id, final_file,file_type,new_size) VALUES ('$user_id', '$final_file', '$file_type', '$new_size')"; 
    $mysqli->query($query); 

    printf ("Last id %d.\n", $mysqli->insert_id); 


    /* close connection */ 
    $mysqli->close(); 
?> 
+0

tbl_employee是INOODB的表 – JustAngelo