我正嘗試使用HTML/PHP在MySQL數據庫中導入.csv文件。該代碼是:SQL查詢和臨時文件權限
HTML
<form method="post" action="" enctype="multipart/form-data">
File: <input type="file" name="csv">
<input type="submit" value="Send" name="subCSV">
</form>
PHP
$file = $_FILES["csv"]["tmp_name"];
try {
$query = $connexion -> prepare("LOAD DATA INFILE ? into TABLE myTable FIELDS TERMINATED BY ';' LINES TERMINATED BY '\\r\\n' IGNORE 1 ROWS");
$query->bindValue(1, $file, PDO::PARAM_STR);
$query->execute();
} catch(PDOException $e) { echo $e->getMessage(); $errorCode = $e->getCode();
但我發現了這個錯誤:
File '/tmp/phpl8eY59' not found (Errcode: 13)
指定的文件中明確的工作。權限沒問題,運行Apache的用戶和文件所有者是相同的。我已授予數據庫用戶的文件許可權。
顯然配置AppArmor會解決問題,但我沒有使用它,因爲它沒有安裝在我的服務器上。
我試過了,但命令是不允許的。 – flowgunso