guest klik tombol add to cart, lalu item yang dia pilih masuk ke session bro, jadi segala pesanan di simpen di session. ada yang tau gak bro cara simpen atau create session gmn yah
terus kalo udah berhasil buat session cara panggilnya gmn yah?
public function actionAddCart($id)
{
$model=$this->loadModel($id);
if (!empty($model))
{
$session = Yii::app()->session;
//format nama session cart+id_item jadinya cart3 dst
$namaSes = "cart".$id;
$session["$namaSes"]= $model->brand;
$this->redirect(array('view','id'=>$model->id_item));
}
else
throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
}
jadi nnti ada sessionnya
$session[‘cart1’];
$session[‘cart2’];//DST tergantung pengunjung add untuk item yang mana aja.
yang mau saya taunya gmn cara nampilinnya yah? code di view saya _cart
coba nama session untuk chartnya disertakan ke URL , kira2 jadi begini
public function actionAddCart($id)
{
$model=$this->loadModel($id);
if (!empty($model))
{
$session = Yii::app()->session;
//format nama session cart+id_item jadinya cart3 dst
$namaSes = "cart".$id; // ini dimasukin ke url
$session["$namaSes"]= $model->brand;
$this->redirect(array('view','id'=>$model->id_item,'namaSes'=>$namaSes));
}
else
throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
}
udah solved, tapi gak tau gak ini cara yang paling efisien apa engga.
controller
//CART
public function actionAddCart($id)
{
$model=$this->loadModel($id);
if (!empty($model))
{
$session = Yii::app()->session;
$namaSes = "cart".$id;
$session["$namaSes"]= $model->brand;
$this->redirect(array('view','id'=>$model->id_item));
}
else
throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
}
public function actionDelCart($name)
{
$session = Yii::app()->session;
unset($session["$name"]);
$this->redirect(array('search'));
}
$i=1;
while (list ($key, $val) = each ($_SESSION))
{
$valid_key = "cart*";
if (eregi($valid_key, $key))//HANYA SESSION YANG CART YANG MASUK SINI
{
echo "<p>$i. $val";
echo CHtml::link('delete',array('delCart', 'name'=>"$key"));
echo "</p>";
$i++;
}
}
gak tau sih sementara baru kaya gini,
klik barang dengan id_item 32 jadi kebentuk session dengan nama cart32, kalo mau di delete ya ilang deh tuh unset cart32 nya. gitu lah kira2. gak tau ini udah bener atau blm hehehe cuma sharing