0

わかりました、それは奇妙なことではありません...

これが私のコードです:

public function results($id,$pattern=3)
{
    $this->load->library('session');

    if (!$this->session->userdata('logged_in'))
    {
        $this->session->set_flashdata('return_url',$this->uri->uri_string());
        redirect('log/in','refresh');
    }
    else
    {
        $this->load->model('projects');

        $proj = (array)$this->projects->getProjectById($id);

        print_r($proj);

        $progressPercentage = number_format((float)( ($proj['progress'] * 100) / $proj['total'] ), 2, '.', '');

    }
}

さて、問題は次のとおりです。

  • NO$patternがコントローラーに渡されると、すべてが正常に機能します。
  • mysite.com/project/results/45/4(pattern=4) のようなパラメーターを渡すと、次のエラーが発生します。

    A PHP Error was encountered
    
    Severity: Notice
    
    Message: Undefined index: progress
    
    Filename: controllers/project.php
    
    Line Number: 75
    

奇妙なことに、 と の両方$id$pattern正常に「読み取られる」ことです。

print_rこれに関する行$projの直前で私undefined indexが得ている結果:

配列 ( [id] => 21240 [メール] => my@gmail.com [url] => somewebsite.com [ドメイン] => another_domain [進行状況] => 198 [合計] => 199 [エイリアス] => テストプロジェクト #3 [ステータス] => 完了)

ご覧のとおり、progressインデックスは完全にそこにあります。

それで、問題は何でしょうか?それは奇妙なCIバグを知っていますか?


これがvar_dump($proj,$proj['progress']);与えるものです:

array(8) {
  ["id"]=>
  string(5) "21240"
  ["email"]=>
  string(20) "my@gmail.com"
  ["url"]=>
  string(27) "somewebsite.com"
  ["domains"]=>
  string(84) "another_domain"
  ["progress"]=>
  string(3) "198"
  ["total"]=>
  string(3) "199"
  ["alias"]=>
  string(15) "Test Project #3"
  ["status"]=>
  string(8) "complete"
}
string(3) "198"
4

1 に答える 1

0

次のようになります。

mysite.com/CONTROLLER/results/45/4
于 2013-07-20T09:12:16.403 に答える