Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 提交表单后无法检索POST数据_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript 提交表单后无法检索POST数据

Javascript 提交表单后无法检索POST数据,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,各位好, 我试图使用jQuery将一些POST数据发送到PHP文件,但每次提交表单时都会出现未定义的索引错误 upload.html upload.js upload.php 很明显,我没有正确发送数据。我已尝试更改数据类型,但仍然没有得到预期的结果。如果有人能就如何解决这个问题向我提供建议,我将不胜感激 提前感谢, Alex数据类型参数实际上用于从php文件中获取的数据,它与您发送的数据无关 话虽如此,我认为options数组中应该有一个url元素,它应该将数据发送到upload.php,这样

各位好,

我试图使用jQuery将一些POST数据发送到PHP文件,但每次提交表单时都会出现未定义的索引错误

upload.html

upload.js

upload.php

很明显,我没有正确发送数据。我已尝试更改数据类型,但仍然没有得到预期的结果。如果有人能就如何解决这个问题向我提供建议,我将不胜感激

提前感谢,


Alex

数据类型参数实际上用于从php文件中获取的数据,它与您发送的数据无关

话虽如此,我认为options数组中应该有一个url元素,它应该将数据发送到upload.php,这样您就可以得到如下结果:

var options = { 
        target: '#status',
        url: '/path/to/upload.php',
        type: "POST",
        data: "dir=music",
        dataType: "html",
        beforeSubmit:  beforeSubmit, 
        uploadProgress: OnProgress,
        success:       afterSuccess,
        error: function(hr, ajaxOptions, thrownError)
        {
            status.html("<font color='red'> ERROR: unable to upload file.</font>"+thrownError);
        },
        resetForm: true  
    }; 

尝试将数据作为JavaScript对象发送,并添加要发送到的url。默认情况下,脚本不会从表单属性获取URL

data: {
    "dir": "music"
},
url: "upload.php"
取自jQuery文档

要发送到服务器的数据。如果需要,它将转换为查询字符串 还不是字符串。它被附加到GET请求的url。看见 processData选项以阻止此自动处理。对象必须 必须是键/值对。如果值是数组,jQuery将序列化多个 基于传统设置值的具有相同键的值 如下所述


您的表单没有名为dir的输入。您到底想从表单中检索什么?是否能够在控制台请求成功发送到php时执行此操作?@slider,我希望将自定义变量作为提交函数的一部分发送..数据:{key1:value1,key2,value2,…}。@HüseyinBABAL我在浏览器的控制台中看不到任何错误。虽然Apache会在…中抛出未定义的index:dir错误。我猜它会自动从表单中获取这个参数,还是不会?
<?php

echo "->".$_POST['dir'];

?>
var options = { 
        target: '#status',
        url: '/path/to/upload.php',
        type: "POST",
        data: "dir=music",
        dataType: "html",
        beforeSubmit:  beforeSubmit, 
        uploadProgress: OnProgress,
        success:       afterSuccess,
        error: function(hr, ajaxOptions, thrownError)
        {
            status.html("<font color='red'> ERROR: unable to upload file.</font>"+thrownError);
        },
        resetForm: true  
    }; 
data: {
    "dir": "music"
},
url: "upload.php"