我想上傳一個文件,我將存儲名稱,鏈接&文件的大小。然後,我想要檢索該文件的鏈接,以便我可以讀取該文件。&將文件的內容在提取後存儲在數據庫中。是否可以同時存儲和檢索來自MySQL數據庫的數據
是否可以在單個PHP文件中執行此操作?現在當我上傳文件時,它存儲名稱,將文件大小&鏈接到數據庫。但爲了讀取上傳的文件,提取內容&將內容存儲到數據庫中,我必須重新上傳同一文件。
users.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<user>
<FirstName>Example 1</FirstName>
<LastName>Example 2</LastName>
<Phone>Example 3</Phone>
<Address>Example 4</Address>
</user>
下面是PHP腳本:
<?php
//report any error
error_reporting(E_ALL); ini_set('display_errors', 1); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
//connect to database
include 'conn.php';
$ds = "/";
$storeFolder = 'uploads';
if(!empty($_FILES)) {
$fname = basename($_FILES['file']['name']);
$ftype = $_FILES['file']['type'];
$fsize = $_FILES['file']['size'];
$flink = 'http://localhost/aps/upload/' . rawurlencode($fname);
$xml = simplexml_load_file($flink);
$firstname = $xml->FirstName;
$lastname = $xml->LastName;
$phone = $xml->Phone;
$address = $xml->Address;
$tempFile = $_FILES['file']['tmp_name'];
$targetPath = dirname(__FILE__) . $ds . $storeFolder . $ds;
$targetFile = $targetPath . $_FILES['file']['name'];
move_uploaded_file($tempFile, $targetFile);
$query = "INSERT INTO user_details (link, name, size, type, first_name, last_name, phone, address) VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
$stmt = $conn->prepare($query);
$stmt->bind_param('ssssssss', $flink, $fname, $fsize, $ftype, $firstname, $lastname, $phone, $address);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($link, $name, $size, $type, $first_name, $last_name, $phone, $address);
}
//Close statement
$stmt->close();
//Close connection
$conn->close();
?>
欣賞的幫助。謝謝。
你能顯示你的代碼嗎? – dbinns66 2015-03-13 19:24:08
或者至少解釋文件上傳的方式 - 您用於處理上傳的過程,拉取數據庫名稱,放置文件的位置(遠離臨時位置 - 上傳)等。 – 2015-03-13 19:26:11
無論您通過PHP放入數據庫也立即可用於PHP腳本..所以我認爲我們需要看到一些代碼來指導你如何工作。 – flyandi 2015-03-13 19:28:32