簡體   English   中英

將圖像文件上傳到服務器,在MySQL DB中存儲名稱

[英]Upload image file to server, store name in MySQL DB

我正在嘗試創建文件上傳,但我的當前腳本似乎無法正常運行,我認為應該如此。

我設法將數據保存在MySQL表中,但是我似乎無法將文件放入“ uploads”目錄中?

if(isset($_POST['new']) && $_POST['new']==1){

    $folder = "uploads/";
    $upload_image = $folder . basename($_FILES["image1"]["name"]);
    move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $upload_image);


    $trn_date = date("Y-m-d H:i:s");
    $brand =$_REQUEST['brand'];
    $user =$_SESSION["username"];
    $model = $_REQUEST['model'];
    $serial =$_REQUEST['serial'];
    $purchasedate = $_REQUEST['purchasedate'];
    $img1 =$_REQUEST['image1'];
    $ins_query="insert into table
    (`user`,`trn_date`,`brand`,`model`,`serial`,`purchasedate`,`image1`)values
    ('$user','$trn_date','$brand','$model','$serial','$purchasedate','$img1')";
    mysqli_query($con,$ins_query)
    or die(mysql_error());
    $status = "added successfully.
    </br></br><a href='home.php'>home</a>";
}
$upload_image = $folder . basename($_FILES["image1"]["name"]);
move_uploaded_file($_FILES["image1"]["tmp_name"], $upload_image);

如果直接嘗試醫生說的話該怎么辦;)

$uploads_dir = '/uploads';//try over 'uploads' too or create a 'uploads' folder in you app_root
foreach ($_FILES["image1"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
        $tmp_name = $_FILES["image1"]["tmp_name"][$key];
        $name = $_FILES["image1"]["name"][$key];
        move_uploaded_file($tmp_name, "$uploads_dir/$name");
    }
}

可能的鏈接

我在您的代碼中發現了一個問題。

$folder = "uploads/";
$upload_image = $folder . basename($_FILES["image1"]["name"]);
move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $upload_image);

在這種情況下,文件沒有擴展名

$folder = "uploads/";
$ext = explode('.', basename( $_FILES['image1']['name']));
$upload_image = $folder . basename($_FILES["image1"]["name"].$ext);
move_uploaded_file($_FILES["image1"]["tmp_name"], $upload_image);

uploads文件夾與php腳本位於同一目錄中?

您還可以通過以下測試來驗證文件是否正確移動

if (file_exists($upload_image)){
echo "true";
}

在上傳到服務器之前提供文件上傳驗證,這將防止服務器惡意文件

如何在php中進行文件驗證: 鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM