簡體   English   中英

Filedrop.js沒有成功消息

[英]Filedrop.js no success Message

我正在使用imagedrop腳本的filedrop.js。 我在這里資助腳本: https//tutorialzine.com/2011/09/html5-file-upload-jquery-php

在Prject中有一個file_post.php,我想更改一下以將一些信息(例如Filename)保存到數據庫中。

這是我的post_file.php:

    <?php

// If you want to ignore the uploaded files, 
// set $demo_mode to true;

$demo_mode = false;
$upload_dir = 'uploads/tmp/';
$allowed_ext = array('jpg','jpeg','png','gif');


if(strtolower($_SERVER['REQUEST_METHOD']) != 'post'){
    exit_status('Error! Wrong HTTP method!');
}


if(array_key_exists('pic',$_FILES) && $_FILES['pic']['error'] == 0 ){

    $pic = $_FILES['pic'];

    if(!in_array(get_extension($pic['name']),$allowed_ext)){
        exit_status('Only '.implode(',',$allowed_ext).' files are allowed!');
    }   

    if($demo_mode){

        // File uploads are ignored. We only log them.

        $line = implode('       ', array( date('r'), $_SERVER['REMOTE_ADDR'], $pic['size'], $pic['name']));
        file_put_contents('log.txt', $line.PHP_EOL, FILE_APPEND);

        exit_status('Uploads are ignored in demo mode.');
    }


    // Move the uploaded file from the temporary 
    // directory to the uploads folder:

    if(move_uploaded_file($pic['tmp_name'], $upload_dir.$pic['name'])){

        //My added code 

包括('/var/www/html/board/SSI.php');

$userName = $context['user']['name'];
$content_id = $_COOKIE["contentid"];
$pic_name = $pic['name'];
$pic_code = $content_id;
$pic_path = $pic_name;


$db_host = "******";
$db_name = "******";
$db_user = "******";
$db_pass = "******";

$db = mysqli_connect("$db_host","$db_user","$db_pass","$db_name") or die("Error " . mysqli_error($db));

$stmt = $db->prepare("INSERT INTO `User_pics` (content_id, path, user_id,  user_name) VALUES (?, ?, ?, ?)");
$stmt->bind_param('ssss', $pic_code,
$pic_path,
$context['user']['id'],
$context['user']['name']);
$stmt->execute();
$stmt->close();

        //end of my added code





        exit_status('File was uploaded successfuly!');
    }

}

exit_status('Something went wrong with your upload!');


// Helper functions

function exit_status($str){
    echo json_encode(array('status'=>$str));
    exit;
}

function get_extension($file_name){
    $ext = explode('.', $file_name);
    $ext = array_pop($ext);
    return strtolower($ext);
}
?>

添加mysqli部分后,不再顯示成功消息。 在“圖像上載”上,進度條停在50%左右。 文件已上載,信息已保存到數據庫中,但是我沒有成功響應,因此我需要處理下一步。 請幫助! 謝謝。

感謝您的來訪,兩天后我為一種解決方案工作,在我問過這里之后,我找到了答案;)

問題是包含以UTF-8編碼的SSI.php。 這就是在Json編碼的Response中出現錯誤的原因。

SyntaxError:JSON.parse:JSON數據的第1行第1列出現意外字符

我的解決方法是:我為用戶ID和用戶名創建了一個cookie,因此我能夠刪除包含。 在此之后,一切都很好。 如果有人遇到相同錯誤,只需在上傳后刪除他們,然后在其中顯示上傳表單的地方創建一個cookie。

感謝社區,祝您有美好的一天;)

暫無
暫無

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

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