Javascript 将Json发布到PHP获取变量

Javascript 将Json发布到PHP获取变量,javascript,php,mysql,ajax,json,Javascript,Php,Mysql,Ajax,Json,我有一张这样的表格: <?php include '../db/baza.php'; ?> <?php include 'vrh.php' ?> <div id="stranica"> <div id="stranicaOkvir"> <form action="dodaj_sliku_obrada.php" method="POST" en

我有一张这样的表格:

 <?php 
    include '../db/baza.php';
    ?>
    <?php include 'vrh.php' ?> 
        <div id="stranica">
            <div id="stranicaOkvir">
                <form action="dodaj_sliku_obrada.php" method="POST" enctype="multipart/form-data" id="upload" class="upload">

                <fieldset>
                <legend>Dodaj sliku</legend>

                   <?php $upit = "SELECT kategorija_ID, kategorija_naziv FROM kategorije ORDER BY kategorija_ID ASC";
                     $ispis = mysql_query($upit) or die(mysql_error());
                     $blok_ispis = mysql_fetch_assoc($ispis);
                     $ukupno = mysql_num_rows($ispis);   ?> 
                     <p><strong>Obavezno odaberite kategoriju kojoj slika pripada</strong></p>
                            <p> <select name="kategorija" id="kategorija">
                                <?php do { ?>  
                    <option value="<?php echo $blok_ispis['kategorija_ID']; ?>"> <?php echo $blok_ispis['kategorija_naziv']; ?></option>
                    <?php } while ($blok_ispis = mysql_fetch_assoc($ispis)); ?>
                    <?php mysql_free_result($ispis);?>
                </select>   
                </p>

                <input type="file" id="file" name="file[]" required multiple> 
                <input type="submit" id="submit" name="submit" value="Dodaj sliku"> 
                <div class="progresbar">
                    <span class="progresbar-puni" id="pb"><span class="progresbar-puni-tekst" id="pt"></span></span>
                </div>
                <div id="uploads" class="uploads">
                    Uploaded file  links will apper here.
                <script src="js/dodaj_Sliku.js"></script>
                <script>
                document.getElementById('submit').addEventListener('click',function(e){
                    e.preventDefault();
                    var f = document.getElementById('file'),
                        pb = document.getElementById('pb'),
                        pt = document.getElementById('pt');
                    app.uploader({
                        files: f,
                        progressBar: pb,
                        progressText: pt,
                        processor: 'dodaj_sliku_obrada.php',

                        finished: function(data){
                            var uploads = document.getElementById('uploads'),
                            uspjesno_Dodano = document.createElement('div'),
                            neuspjelo_Dodavanje = document.createElement('div'),
                            anchor,
                            span,
                            x;


                            if(data.neuspjelo_Dodavanje.length){
                                neuspjelo_Dodavanje.innerHTML = '<p>Nazalost, sljedece nije dodano: </p>';
                            }
                            uploads.innerText = '';
                            uploads.textContent = '';

                            for( x = 0; x < data.uspjesno_Dodano.length; x = x + 1){
                                anchor = document.createElement('a');
                                anchor.href = '../slike/galerija/' + data.uspjesno_Dodano[x].file;
                                anchor.innerText = data.uspjesno_Dodano[x].name;
                                anchor.textContent = data.uspjesno_Dodano[x].name;
                                anchor.target = '_blank';
                                uspjesno_Dodano.appendChild(anchor);
                            }

                                for( x = 0; x < data.neuspjelo_Dodavanje.length; x = x + 1){
                                span = document.createElement('span');
                                span.innerText = data.neuspjelo_Dodavanje[x].name;
                                span.textContent = data.neuspjelo_Dodavanje[x].name;
                                neuspjelo_Dodavanje.appendChild(span);
                            }

                            uploads.appendChild(uspjesno_Dodano);
                            uploads.appendChild(neuspjelo_Dodavanje);
                        },

                        error: function(){
                            console.log('Ne radi!');
                        }

                    });
                });
                </script>

                <script>

                </script>

                </div>
                </fieldset>
                </form>
            </div>
        </div>
    <?php include 'dno.php' ?> 

多达伊·斯里库
Obavezonodaberite kategoriju kojoj slika pripada

上传的文件链接将出现在这里。 document.getElementById('submit')。addEventListener('click',函数(e){ e、 预防默认值(); var f=document.getElementById('file'), pb=document.getElementById('pb'), pt=document.getElementById('pt'); app.uploader({ 档案:f, 进度条:pb, 正文:pt, 处理器:“dodaj_sliku_obrada.php”, 完成:函数(数据){ var uploads=document.getElementById('uploads'), uspjesno_Dodano=document.createElement('div'), neuspjelo_Dodavanje=document.createElement('div'), 锚, 跨度 x; if(数据neuspjelo_Dodavanje.长度){ neuspjelo_Dodavanje.innerHTML=“Nazalost,sljedece nije dodano:

”; } uploads.innerText=''; uploads.textContent=''; 对于(x=0;x
js看起来像这样

    var app = app || {};

(function(o){
    "use strict";
    //Privatne metode
    var ajax, getFormData, setProgress;

    ajax = function(data){
        var xmlhttp = new XMLHttpRequest(), uspjesno_Dodano;

        xmlhttp.addEventListener('readystatechange', function(){
            if(this.readyState === 4){
                if(this.status === 200){
                    uspjesno_Dodano = JSON.parse(this.response);

                    if(typeof o.options.finished === 'function'){
                    o.options.finished(uspjesno_Dodano);
                }
                } else {
                if(typeof o.options.error === 'function'){
                o.options.error();
                    }
                }
            }
        });

        xmlhttp.upload.addEventListener('progress', function(event){
            var percent;
            if(event.lengthComputable === true){
                percent = Math.round((event.loaded / event.total) * 100);
                setProgress(percent);
            }
        });

        xmlhttp.open('post', o.options.processor);
        xmlhttp.send(data);

    };

    getFormData = function(source){
        var data = new FormData(), i;
        for(i = 0; i < source.length; i = i + 1){
            data.append('file[]', source[i]);
        }
        data.append('ajax', true);
        data.append('kategorija', o.options.kategorija);
        return data;
    };


    setProgress = function(value){
        if(o.options.progressBar !== undefined){
            o.options.progressBar.style.width = value ? value + '%' : 0;
        }

        if(o.options.progressText !== undefined){
            o.options.progressText.innerText = value ? value + '%' : '';
            o.options.progressText.textContent = value ? value + '%' : '';
        }
    };

    o.uploader = function(options){
        o.options = options;
        if(o.options.files !== undefined){
            ajax(getFormData(o.options.files.files));
        }
    }

}(app));
var-app=app | |{};
(职能(o){
“严格使用”;
//梅托德私人酒店
var ajax、getFormData、setProgress;
ajax=函数(数据){
var xmlhttp=new XMLHttpRequest(),uspjesno_Dodano;
addEventListener('readystatechange',function(){
if(this.readyState==4){
如果(this.status==200){
uspjesno_Dodano=JSON.parse(this.response);
如果(o.options.finished的类型==='function'){
o、 选项。完成(uspjesno_Dodano);
}
}否则{
if(o.options.error的类型=='function'){
o、 options.error();
}
}
}
});
xmlhttp.upload.addEventListener('progress',函数(事件){
风险值百分比;
if(event.lengthComputeable==真){
百分比=数学舍入((event.loaded/event.total)*100);
进度(百分比);
}
});
open('post',o.options.processor);
发送(数据);
};
getFormData=函数(源){
var data=new FormData(),i;
对于(i=0;i
在process.php部分,我想听听select中的选项值

"<select name="kategorija" id="kategorija">"
“”
当我

  <?php 
        $kategorija = $_POST['kategorija'];
    echo echo $kategorija;
    ?>


我总是得到一个0值,那么我做错了什么?文件[]处理工作正常,但无法使其与附加变量一起工作。

您不需要
echo$kategorija应该是
echo$kategorija如果这会导致问题,那么请尝试
var_dump($kategorija)
查看变量的内容

此外,您在整个页面中都包含了js,这应该被重构并正确地包含在头部。php-sh