我已經放在一起,允許用戶上傳和查看文檔的腳本,但是,我遇到的問題是如果一個用戶上傳文檔,所有註冊用戶都可以看到它。所以我想基礎的文檔上傳上登錄的用戶......看到下面的代碼:上傳文檔基於用戶LOGGED IN
uploadconfig.php
<?php
include("dbconfig.php");
require("upload.php");
if(isset($_POST['btn-upload'])){
$file = $_FILES['file']['name'];
$file_loc = $_FILES['file']['name'];
$file_size = $_FILES['file']['size'];
$file_type = $_FILES['file']['type'];
$folder = "uploads/";
move_uploaded_file($file_loc, $folder.$file);
$sql = mysqli_query($conn, "INSERT INTO upload(file, type, size, personalid) VALUES (select personalid FROM person where personalid='$username'),('$file', '$file_type', '$file_size') ") or die (mysqli_error($conn));
if($sql){
header("location:upload.php?msg0=Document upload successful.");
}
else {
header("location:upload.php?msg1=Document upload failed.");
}
}
?>
我之所以有「必要」的upload.php的文件是因爲用戶會話變量在該文件中,並且我認爲通過要求該文件,我可以將該變量傳遞給我的uploadconfig.php文件。但不是插入數據,而是在INSERT語句中的SELECT語句附近引發語法錯誤。
有誰能告訴我爲什麼會顯示這個錯誤?
如果您希望我上傳任何其他文件,請讓我知道。
謝謝,
蘇海爾。
你的SELECT語句在哪裏? –
我不能看到任何SELECT語句。它是什麼確切的錯誤,是的,你需要在upload.php中顯示代碼 – Steve
你的SQL語法有錯誤;檢查與您的MySQL服務器版本相對應的手冊,以便在'select personid FROM person where personalid ='sarif''),('index.php','applicati'在第1行使用的語法附近使用 這就是我得到的錯誤,select語句在$ sql變量中 –