【问题标题】:Grocery Crud - print post_array on form submitGrocery Crud - 在表单提交时打印 post_array
【发布时间】:2014-08-31 17:40:16
【问题描述】:

上周我发现了非常不错的 php api,Grocery Crud,来自此处提供的示例 http://www.grocerycrud.com/examples/the-simplest-example,我可以创建视图并且工作正常,我的问题是编辑后有 2 个按钮 更新更改更新返回列表,我有兴趣在单击这两个按钮时打印帖子数组,以便我可以看到数组内部的内容,而我的实际计划是每当我更新记录时(点击更新更改或更新并返回到编辑列表),我需要更新大约 7 个表

这是我到目前为止尝试过的,这里的功能测试什么也没打印

function test($post_array)
 {
        echo "<pre>";
        print_r($post_array);
        echo "</pre>";
 }



function myapp(){

    $this->db = $this->load->database('Groupdb',true);
    $crud = new grocery_CRUD();
    $crud->set_table('main_table');
    $crud->columns(
                   "Serial",
                   "Date",
                   "Time"
              );
    $crud->fields(
                  "Serial",
                  "Date",
                  "Time"
                 );
    $crud->callback_after_update(array($this, 'test'));
    $crud->set_subject('Update Mains');
    $output = $crud->render();
    $this->_example_output($output);
 }

从我的代码中,我想你们可以想象表名是 ma​​in_table,每当我更新 main_table 的序列号、日期和时间时,它必须反映在其他 7 个字段为日期和时间,这里的序号是唯一的

【问题讨论】:

  • 我的问题不清楚吗?没有人知道整个 SO 社区的答案吗?

标签: php codeigniter codeigniter-2 grocery-crud


【解决方案1】:

首先,如果您使用的是 PHP >= 5.3,那么最好使用匿名函数来确保它能够正常工作。因此,例如,在您的代码中,您可以:

$crud->callback_after_update(function () {
    echo "<pre>";
    print_r($post_array);
    echo "</pre>";         
    die();
});

正如您所注意到的,我确实在此处添加了一行。这是die();。通过这种方式,您可以确保在萤火虫上看到预期的结果。

可能您没有任何打印,因为杂货店 CRUD 正在使用一些魔术代码删除之前打印的任何内容。使用die();,您只是确保永远不会达到这个神奇的代码。

【讨论】:

    【解决方案2】:

    这个问题已经回答了:Debugging in Grocery CRUD

    更具体地说:

    仍然杂货 CRUD 不支持回调调试,所以我认为它现在是一个很好的解决方案。除此之外,无需破解即可进行调试,您始终可以轻松拥有 codeigniter 的 log_message 功能。更多内容请访问http://ellislab.com/codeigniter/user-guide/general/errors.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多