Firefox 不向服务器发送 POST 数据

Posted

技术标签:

【中文标题】Firefox 不向服务器发送 POST 数据【英文标题】:Firefox not sending POST data to server 【发布时间】:2015-03-11 08:31:00 【问题描述】:

我似乎无法向服务器发送任何数据。在我拥有的其他一些页面中,我什至可以做到。唯一的区别是我使用这种特殊形式的文件上传。在 chrome 中一切正常。

哪里出错了?

<script>
        $( document ).ready(function() 
            $("#addnewadform").submit(function(e)
                e.preventDefault();
                $.ajax(
                    cache:false,
                    url: "/call/insert-standart-add.call.php", //URL IS CORRECT
                    type: "post",             // this is OK too
                    data: submitStandartPost:'im sending the submit button value', //this is a super-simplified version of what i want the server to recieve
                    contentType: 'multipart/form-data',//i have tried a ton of different values for this
                    processData: false, //think this should be false for file uploads
                    success: function(data)
                        console.log(data);
                        if(data!=='')
                            console.log(data);
                        else
                            console.log("nothing was sent");
                        
                    
                );

            );
        );
    </script>

服务器没有收到任何内容,但正在调用脚本本身。

if(isset($_POST['submitStandartPost']))

else
 echo 'no input';

可能错误与文件上传无关。我试图删除文件上传和 enctype='multipar/bal bla bal'。只是行不通。没有记录错误

【问题讨论】:

查看浏览器的开发者工具。将error 方法添加到您的jQuery ajax 调用中。查看 javascript 控制台。它是否报告任何错误?查看“网络”选项卡。是否正在提出请求?它得到回应了吗?它们是否包含您期望的数据? 使用 FormData var data = new FormData(); 也许听起来很有趣,但尝试在 url (../call/insert-standart-add.call.php) 前添加 2 个点,希望对您有所帮助。 你能亲眼看看这个网站吗?在 chrome 和 firefox 中打开这个 borissprojects.com/standart-ad 我想通了!! Firefox 不发送提交输入值!有趣的为什么强硬 【参考方案1】:

我有时讨厌 html...

无论如何。避免此问题的最佳方法是明确的跨浏览器方式,即不要使用 $_POST['submit'] 按钮,因为它不可靠。

例如,不要这样做:

if(isset($_POST['submit']))
//do my form logic here

【讨论】:

【参考方案2】:

问题在于 FireFox 不发送提交输入的值。在 PHP 的 $_POST 中它根本不存在。

至于解决这个问题,我不知道。

【讨论】:

以上是关于Firefox 不向服务器发送 POST 数据的主要内容,如果未能解决你的问题,请参考以下文章

jQuery AJAX/POST 不向 PHP 发送数据

Python Flask 不向客户端发送发射

Django 服务器不向 Logstash 发送日志

解析服务器不向大量受众发送推送通知

Wininet 不向服务器发送 cookie

Vue axios 不向服务器发送标头(django simplejwt)