Сохранение имени файла и пользовательского значения в базу данных с помощью blueimp fileupload - PullRequest
0 голосов
/ 29 августа 2018

Я пытаюсь добавить данные моего файла в базу данных при загрузке, но не могу заставить его работать.

Нет ошибок или чего-либо еще, пока для сообщения об ошибках установлено все.

Мой HTML:

<span class="btn btn-success fileinput-button">
    <i class="glyphicon glyphicon-plus"></i>
    <span>Kies bestand...</span>
    <input id="fileupload" type="file" name="files[]">
</span>
<br>
<br>
<div id="progress" class="progress">
    <div class="progress-bar progress-bar-success"></div>
</div>
<div id="files" class="files"></div>

Мой jquery:

<script>
$(function () {
    'use strict';
    var url = window.location.hostname === 'site.nl/demo/server/php/' ?
                '//site.nl/' : 'demo/server/php/';
    $('#fileupload').fileupload({
        url: url,
        dataType: 'json',
        formData: [
          { name: 'custom_dir', value: '/fileupload/<?PHP echo $_GET['bedrijf'] ?>/<?PHP echo $_GET['alias'] ?>/' },
          { name: 'cat_id', value: '<?PHP echo $gtc['id']; ?>'}
      ],
        done: function (e, data) {
            $.each(data.result.files, function (index, file) {
                $('<p/>').text(file.name).appendTo('#files');
            });
        },
        progressall: function (e, data) {
            var progress = parseInt(data.loaded / data.total * 100, 10);
            $('#progress .progress-bar').css(
                'width',
                progress + '%'
            );
        }
    }).prop('disabled', !$.support.fileInput)
        .parent().addClass($.support.fileInput ? undefined : 'disabled');
});
</script>

Сама загрузка отлично работает, но когда я пытаюсь следовать: https://github.com/kuiwang/blueimp-jQuery-File-Upload/wiki/PHP-MySQL-database-integration, она не вставит данные в мою базу данных.

Как, например, просто вставить имя изображения и отправленное мной пользовательское значение с именем cat_id в мою базу данных?

Я также попробовал этот пост: добавление имени загруженного файла в базу данных в плагине bluequ fileupload jquery

Но успеха тоже нет. Может быть, способы вставки изменились с обновлением видя, так как вопросу 5 лет?

Я добавил следующее в свой uploadhandler.php и добавил информацию о своей базе данных в массив опций, как объяснено в ответе SA выше:

function query($query) {
        $database = $this->options['database'];
        $host = $this->options['host'];
        $username = $this->options['username'];
        $password = $this->options['password'];
        $link = mysql_connect($host,$username,$password);
        if (!$link) {
            die(mysql_error());
        }
        $db_selected = mysql_select_db($database);
        if (!$db_selected) {
            die(mysql_error());
        }
        $result = mysql_query($query);
        mysql_close($link);
        return $result;
    }

    function add_img($size,$name)
    {
        $add_to_db = $this->query("INSERT INTO files
                (image_type , image_size, file_name)
                VALUES
                ('{$size['mime']}', '{$size[3]}', '{$name}')") or die(mysql_error());
        return $add_to_db;
    }

Это ничего не делает для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...