2

mba_scorevariable に最も近い数値をデータベース テーブルに問い合わせる関数を実行しようとしています$runscore。私の関数は次のようになります。

public function get_player($runscore)
{
   $per = $this
             ->db
         ->select('mba_id, abs($runscore - mba_score) as mba_rate', FALSE)
         ->order_by('mba_rate', 'ASC')
         ->get('nba_scores');
         ->limit(1);

        if ($per->num_rows > 0) {
            $p = $per->row_array();
            return $p['nba_id'];
        }
        return false;           
        }

私が得るエラーは次のとおりです。

"Error Number: 1054

Unknown column '$runscore' in 'field list'"

このセグメントを何度も書き直そうとしましたが、結果を得ることができませんでした。

4

3 に答える 3

2

二重引用符を使用します。

select("mba_id, abs($runscore - mba_score) as mba_rate", FALSE)

一重引用符を使用すると、変数 $runscore はその値に置き換えられません。一重引用符を使用する場合は、連結を使用する必要があります。

select('mba_id, abs('.$runscore.' - mba_score) as mba_rate', FALSE)
于 2013-10-04T11:55:42.577 に答える
1

変化する:

->select("mba_id, abs($runscore - mba_score) as mba_rate", FALSE) //use doube quote
于 2013-10-04T11:55:38.007 に答える