private function updatePrice($iid, $price, $purchased)
{
if($price >= 0)
{
$price = abs($price);
}
else
{
$price = $this->getItemStats($iid);
$price = abs($price['base']);
}
$sql = "UPDATE store SET item_price = :price, available = available-:purchased WHERE iid = :iid";
$que = $this->db->prepare($sql);
$que->bindParam('price', $price);
$que->bindParam('iid', $iid);
$que->bindParam('purchased', $purchased);
try{$que->execute(); if($que) { return true; } else { echo "FUCK"; exit; } }catch(PDOException $e){echo $e->getMessage(); exit;}
}
function getSupplyDemand($purchased, $iid)
{
$sql = "SELECT available, number, item_base_price, iid FROM store WHERE iid = :iid";
$que = $this->db->prepare($sql);
$que->bindParam('iid', $iid);
try{ $que->execute();
if($que)
{
while($row = $que->fetch())
{
$Quantity =$row[0];
$Supply = $row[1];
$price = $row[2];
$iid = $row[3];
$price = abs(($price * $purchased)*($Quantity - $Supply)/.25);
if($this->updatePrice($iid, $price, $purchased))
{
return true;
}
else
{
echo "Somethign went wrong";
exit;
}
}
}
}catch(PDOException $e){}
}
答案 0 :(得分:0)
我解决了这个问题。再一次,这是一件简单的事情,我只是推翻了。我没有按照正确的顺序调用我的功能,因此Number和Available是相同的并且相互删除因此可以计算出整个价格。