2

在萤火虫中,在 POST 选项卡中,我看到以下内容;

JSON        

textfieldone "Alex"



Source
{"textfieldone :"Alex"}

但在 PARAMS 选项卡中,我看到

_dc 1341332451114

print_r($_REQUEST);当我得到时,在我的 PHP 代码中

Array
(
    [_dc] => 1341332451114
)

而不是在 POST 选项卡中找到的 JSON。我怎么能解决这个问题?

我不知道为什么会这样,我整天都在尝试调试

更新 PHP 代码:

<?php
// Make a MySQL Connection
mysql_connect("localhost", "root", "pwd") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());

print_r($_REQUEST);

在萤火虫中,我在 url 下看到了上述响应;

POST http://localhost/proj/php/result.php?_dc=1341332451114 200 OK 107ms

我可以知道是什么吗?_dc=1341366375982?我正在发送 POST

更新 2

EXT JS4 代码

模型

Ext.define ('Mycomp.model.MyClass',{
    extend: 'Ext.data.Model',

    fields:['textfieldone']

});

看法

Ext.define('Mycomp.view.user.MyClassView', {
    extend: 'Ext.window.Window',
    alias: 'widget.myclassview',
    initComponent: function() {
        this.items = [
            {
                xtype: 'form',
                items: [
                    {
                        xtype: 'textfield',
                        name : 'textfieldone',
                        fieldLabel: 'Contact Person Name'
                    }
                ]
            }
        ];
        this.buttons = [
                        {
                            text: 'Save',
                            name:'save',
                            action: 'save'
                        }
                    ];
        this.callParent(arguments);
    }
});

控制器

Ext.define('Mycomp.controller.MyClass',{
    extend: 'Ext.app.Controller',

    stores:['MyClass'],
    models:['MyClass'],
    views:['MyClassView'],
    init: function(){
        this.control({          
            'myclassview button[action=save]': {
                click: this.myMethod
            }
        });         
        },
         myMethod: function(button, record) {

       var win    = button.up('window'),
           form   = win.down('form'), 
           values = form.getValues(),
           store = this.this.getmyClassStore(),
           model = store.model,
           record = model.create();


           record.set( values );
           store.add( record );
           win.close();
           store.sync(); 
}
});

店铺

Ext.define('Mycomp.store.Myclass',{
    extend:'Ext.data.Store',
    model:'App.model.Myclass',

    proxy: {
        actionMethods : {
            create : 'POST'
        },
        type: 'ajax',
        url : '/savetodb.php'

    }

});
4

2 回答 2

2

我想你会想要设置你的 .php 文件头来提供 JSON:

header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Content-type: application/json');
于 2012-07-04T01:52:52.797 回答
2

试试下面的代码,应该可以解决你的问题:

<?php
   var_dump(json_decode(file_get_contents('php://input')));
?>
于 2012-10-10T08:04:53.020 回答