私は、codeigniter を使用するプロジェクトの数が非常に限られている非常に小さなウェブショップに取り組んでいます。
スクリプトの開始時に、製品モデルは製品のリスト全体を取得し、結果をこのモデルのプロパティとして配列として保存します。
製品 ID は、単純にデータベースから自動インクリメントされた主キーです。そのため、誰かが商品をカートに追加すると、ID が POST で送信されます。次に、次の 3 つのことを確認します。
- $id は整数でしょうか?
- この整数は製品の総数を超えていますか?
- この整数は製品 ID と一致しますか?
基本的に - 少し単純化されていますが - 私はこれを行います:
// Count total number of items
$total = count($this->productArray)
if (!(int)$id || $id > $total)
return false;
foreach($this->productArray as $product) {
if ($product['id'] == $id)
return true;
}
return false;